 Great, so we're reserving about 10 minutes at the end for any of you who would like to ask either of us any questions. In the meantime, I feel like a student who has done some homework on things to chat with someone. So, welcome to me. Really pleasure to have you here. Thank you. I like this setting, small intimate room. Feel free to ask me things afterwards as well. So, I think the way I kind of structured this in my mind is maybe a little into personal introduction, because I personally went to YouTube and watched a couple videos of people talking with you, and I find it really interesting to go back and figure out how you became to become into the position you're in today. And then we move into kind of an introduction about what's Pytorish, how it differentiates itself from other AI platforms, what are the gaps that it fills that others don't, and then move into the Pytorish Foundation and so on. So, maybe we start with quick introduction about yourself, your history, education, how you get involved and so on. Sure, sounds good. I'm Summit. I'm 34 years old. I'm from India, where I grew up most of my time. And I went to a college that did not have all the things I wanted to learn. So, I went on to the internet and that's how I also ended up going and getting involved into the open source movement, because it's really great for me at that time to learn a lot of things, have a lot of people guiding and mentoring as you navigate things that you want to learn. And that was me, most of my undergrad, and then I went to CMU for a year to figure out what to do with my life, did a little bit more exploration around AI, then came to NYU for grad school, got a lot more involved in open source when I was at NYU, both in the torch project, another project called EB Learn, and while doing my internship at Siemens, also getting very involved with the PCL, the Point Clouds Library, that is more related to AI and robotics, I guess it's just robotics. And eventually I started getting way more involved with torch to a point where I was a deep person spending the most amount of time reviewing patches, sending in issues, PRs. And then at some point I got very annoyed with the torch maintainers at that time, that they were not responding to my PRs and reviewing them in time. And so I wrote them an email and they said, hey, we got busy with our lives, why don't you take over the maintainership? That was the start of my officially becoming a maintainer of a large project. I got my job at Metta because I was a torch maintainer and Metta was using torch at that time. Eventually we needed to write a new version of torch and a bunch of people within the torch community we got together, decided how to design it and then created PyTorch. And we did not think it would get as big as it got. We were hoping to just be those small set of 20 people just hacking night and day doing things, but it got big and I'm trying to lead the whole thing to reflect the values of the community and at the same time coordinate among multiple stakeholders getting the funding that the project needs, the resources. And that's pretty much what the role I played today. I'm also an AI researcher just in general, I publish a lot and that's my introduction. Awesome. So I think one of the very interesting things about the PyTorch project and I mentioned this earlier in my 10 minutes this morning is the amazing job Metta did in growing the community to become today 2400 active contributors, thousands of projects rely on PyTorch as a requirement for their work and all that work. And it would be really nice to share some of the lessons learned from that experience and what are the things that worked really well in building a community really starting from a handful of internal developers to thousands and thousands of developers and then also hundreds of thousands of installations and adoption. Sure. PyTorch is a product first and then an open source project. It wasn't created with being like we're open source at all costs and the product thing comes as a second priority. So we created something that deeply understood the users we were serving and we wanted them to have the best experience possible. And that has been our goal. We strongly rely on feedback loops we get from customers and users and we constantly iterate on this aspect and make sure things that are as simple as good error messages or like durable APIs are things we uphold. That's how we started that's pretty much our only guiding principle be pragmatic, focus on our customers make sure they are having a good experience. Everything else effectively is secondary. For example, we link with some close source libraries in our default binaries because that's just what users want. So we link with Intel, MKL, we link with Nvidia, CUDA and we're not open source peers. We're just pragmatic to what the users need. I think that is one, I wouldn't say a lesson or anything. It's just an opinion that we carry that has worked well. So that's just something for you to take home on that it worked well. It's not good or bad or right or wrong. It's just what we do. Secondly, we spend a lot of time building and fostering a community that is positive and productive. We really try to foster speed of development and a good forum for people and we spend a lot of time answering questions on the forum. I think we have something like 100,000 questions answered with the number of replies if you can. I think it goes into even more just between the PyTorch core developers. A lot of our contributors were people who actually asked questions and then eventually liked the vibe we gave and slowly started contributing something small and over time felt empowered to do more. That incremental onboarding that is more organic where people then come in and do what they want and if they feel like they can do something more, they do it and we encourage them to and respond to them positively, that has worked well. I think that's a function of any open source project. I don't think we are unique over there but that initial effort we put in making this happen is generally not easy. I think I wrote a blog post about this which was my transcript at Julia giving a keynote which was like in the initial days of PyTorch I was reading through 500 plus notifications a day and actually responding to most of them which is a lot of energy and time and so when you start an open source project some of the most pathological failures you have is if your project gets too big you don't figure out how to structure the scaling part. You just like give up, you start responding, you just hope that people would go away and you just want it to be a small project and you just want to live in the bubble of the five people who are using your project and that's generally great, I would prefer PyTorch being much smaller than it is but at the same time we've set up these processes to scale it up, triaging, prioritizing. At some point we recognized I think this was a year and a half in or two years in that we simply physically could not, doesn't matter the size of our team, we could not get our GitHub issues to zero. That's just the reality. At someone we were trying we're like oh we're at 150 issues, come on let's do a sprint, let's get it down to 70 and then we'll do another sprint, we want to get it to zero. And then the issues started going faster than our community. That's just the reality and when we embraced that we embraced prioritization. We said look we cannot do everything for everyone, we have to prioritize and I think that's one of the important things that we did when we were scaling the project. That's roughly like I think the two or three things I could think of that really set the tone for PyTorch. I think one thing you said at the beginning was kind of product versus open source is extremely interesting and I actually had a discussion this morning with the CEO of an AI company and as part of AI and data we have multiple startups and they're always struggling as they're building an open source project on which they will do the product and there's always this challenge of should we prioritize a product first and open source as kind of a side effect second or focus on building the community of the open source project and then transfer and deviate to a product there. So this is kind of an ongoing challenge with everything in the company that is in such a situation. And as a general note on the maintainer effort, maintainers are like the unsung heroes of open source. We're actually doing a series of the LF featuring 25 maintainers of large projects. These folks have to write their own code, they're responsible for the certain functionality within projects and they have to review other people's code and it's just an insane amount of work. So from the LF to a maintainer representing all maintainers, thank you very much for all that hours. So when we look at the AI ecosystem there are a number of other AI frameworks. There's a couple that are pretty famous and there are also a few of them that are mostly focused and highly adopted in a given geography. So what sets PyTorch apart from the other AI frameworks in general and in a sense what are the gaps it fills that others don't and kind of at the same time there's this massive appeal for using PyTorch in academia which all of these together came in and kind of contributed to the success of PyTorch if you're able to touch on these things for the audience please. Yeah, so when we started PyTorch there were 15 deep learning frameworks. We were not the only ones. What I said earlier is basically what our philosophy and strategy has been which is be highly malleable to what users want and that's what we try to bring to the table. We try to understand what users want very intimately. So generally when you have a project or a product you can have two failure modes. One is you think users want something and then you build it and it turns out users don't want that and you never knew. And the second is you think users want something and that is true but while building it you didn't build it well like you didn't execute well. So generally if you think about these two parts with PyTorch what differentiates us from some of the other products is we focus way too much on our feedback loops. We want to hear from every student and scientist and engineer and we want to make sure regardless of how much money they bring in, how much potential they have at commercialization, how large their companies you want to hear from all stakeholders and then prioritize. I think that is something that we could do thanks to how we set up our resourcing. Initially Meta funded a lot of PyTorch development and over time NVIDIA built up a team and Microsoft built up a team but nowhere did we compromise on if you build a team of devs here we will prioritize feature development for stuff that you want. We basically said hey we're okay if you don't build any devs but if you build devs with the right mindset we will happily accept them. So I think we've established that all stakeholders here are important and I think that's something that you don't see always from some of our competitors because they might have more direct commercial interests and monetizing the product and that conflicts with the larger customer maybe having a bigger say and things like that. So for example capturing the researcher market I believe is a direct result of that prioritizing that feedback loop way more than it would deserve if you treated it as a commercial revenue stream. Yeah and one of my friends once told me about this kind of aspect of managing projects is that's the difference between control and leadership where when a company is hosting created a project they often try to control it and he gave me the example of squeezing on sand where if you squeeze on sand the sand will start coming down between your fingers whereas leadership you set certain principles that you want the project to run by and as long as everything playing by these principles you drive through and you continue and PyTorch community has four different principles maybe you can share them with the focus on R&D, the openness and feedback and there's one more I guess. I honestly don't really... Yeah so there's the core four principles because I remember reading the documentation we have and it's really important where a company wants to control a project versus become a leader for it and invite everybody else and be open about the criteria of how things should work and then let the community basically work within these different parameters. So now we're kind of transitioning the project to the foundation and in LFAI in data just as an example we have 41 hosted projects and there are maybe four or five reasons that apply to these different projects on why their organizations decided to move to a foundation and host the project there so it would be interesting to see kind of from a Facebook slash meta perspective if you're able to share an insight of the drivers and motivations for META and it's part of the side hey let's figure a way to move and transition the project to the foundation and launch it as it's kind of from within the foundation. Sure, it's very strategically important for META for PyTorch to grow because they use PyTorch and the more resources get pulled into PyTorch the better it is for them so PyTorch is powering all of META's AI workloads internally across board from servers to Edge to pretty much everything. So one of the I mean the basic strategy here is do you want a large piece of a small pie or do you want a small piece of a large pie where the small piece might actually be bigger than the large piece of the small pie. And over the years we have seen a lot of partners participate in PyTorch from from NVIDIA to Microsoft to AMD to Google to I'm blanking on to AWS who are our launch partners who have actually done several projects and features within the PyTorch ecosystem from integration into various hardware backends to cloud integrations to actually starting first-party projects within PyTorch such as TorchServe and PyTorchXLA there's been lots of investments into PyTorch and one of the things that people you know when we go and say hey what would it take for you to invest more into PyTorch they're just like oh like PyTorch is a META project we don't feel like we have any say like regardless of like I mean it's this is the difference between going and talking to the engineers who are contributing versus going and talking to the CTO right the engineers contributing are like this is great like all my PRs are reviewed on time I actually even got commit rights to a bunch of modules whatever like I don't care like what the governing entity structure is like but then you go talk to the CTO and say can you fund like a larger team here they say I need to fulfill my fiduciary duties and like think about this more from like a government like a proper governance perspective right so it was obvious to us that if you moved it to a neutral foundation structure gave all the big stakeholders like say in the commercial interests of PyTorch then it would just be a healthy thing for more stakeholders to grow their involvement in PyTorch with knowing that at the executive level that that the governance is actually neutral and it's like it's not just being said so that was that was a big the big reason like what made total sense by the way this is not just the foundation wasn't even the first step in doing this like all the work here has been happening for years where we started as a community project and then we needed to figure out as a project how to structure ourselves properly everything was ad hoc we were like I think some of the GitHub organization stuff was just on my personal credit card and like we were just like all over the place so Meta actually put some structure found some trademark I said all that and then once that was done we were that our next step was always planned to be okay then now it is properly governed and structured we'll move it to a foundation and then we were looking at huh who should we work with to move to foundation and honestly it wasn't even that big of an argument we just were like the Linux foundation is great I think Kubernetes had a good time it's I think we didn't spend a lot of time we reached out and set up that's like the whole context here yeah it's actually a pretty similar situation to a lot of the project that moved to the foundation where the founder of the project gets kind of market demand in the sense that we would love to invest and adopt the project but we feel a lot more comfortable and very low risk if you wish if the project is hosted in a foundation and has an open neutral governance that will allow us based on our investment and resources to gain certain maintainer or committer positions in the project you know based on contributions and that helps the project grow even more so the point about you know a small piece of the pie but the pie is really big is actually on point with a lot of our experiences I just want to clarify one thing here the PyTorch foundation was started explicitly for business governance and if you're a large company and you say oh like I am donating I mean I'm a member and I want to fund a million dollars into the project you can you have no power to ask for committer rights the technical governance is entirely separate and it's a hierarchical structure similar to say the Linux project and stuff so we thought it was very important to protect the long-term health of the project to give maintainer status to individuals based on contributions and merit rather than to give it to companies on a pay-for-play basis and I think just wanted to clarify that so the business governance moves to the foundation and that is very important because outside of committer status there's a million things that a project needs to thrive and you just don't want the whole pay-to-play and then vendor the largest vendor just pays the most amount of money and gets the most amount of maintainers and you don't want that so that's something we've done yeah correct and in fact this mirrors all the foundations or umbrella foundations and the Linux foundation where we have a very clear separation between the governance of the foundation itself and the governance of projects so every project have their own technical governance completely managed by its maintainers and the foundation is really the funding aspect where you know the project needs to pay for its IT infrastructure for license compliance scanning for trademark management this can get pretty expensive for marketing for booth at events for creative work etc etc and this is where the membership fees from whether it's by the foundation or any other foundation gets channeled into and especially if there are dedicated staff so when you have dedicated staff also you need additional budget and so on so definitely the point that the technical governance is completely separated and you can be a trillion-dollar company you will have one vote and zero influence on the technical project regardless so how do you see Meta's involvement now with the launch of the Pytorch Foundation you know looking into the future yeah so Meta plans to only increase its investments into Pytorch into the number of developers and the kind of resources it powers into Pytorch we started the foundation with the hope of grabbing the benefits of a larger and larger ecosystem as Pytorch scales and you've seen how Meta has been involved within Pytorch in the past and the same mental model pretty much we're going to be very closely involved a large part of the maintainers currently are Meta employees they weren't to begin with actually over time a lot of the maintainers ended up just coming and working in the Pytorch team at Meta and we're going to continue to invest in talent and resources pretty much and I'm curious about kind of the sentiment within Meta like we've been monitoring the sentiment on the internet you know on social media and so on and it's been mostly positive or neutral but I wonder from Meta engineering perspective you know in the teams using Pytorch and co-creating it with others got the news that hey this is moving you know how was the reception to that news I think in practice the Pytorch Pytorch inside Meta was managed very closely to how it would be within a foundation anyways like the Pytorch team really enforced the maintainership model and if someone sent a random commit from Meta some other team at Meta sent a commit into the Pytorch code base we really scrutinized it and all that so I think this wasn't a surprise to a lot of people I think a lot of people had questions around what it means for them does like the common misconceptions like oh yeah Meta is dumping Pytorch into a foundation or whatever like I think like when you hear when you read the headlines and scroll past it and you are you just take the headline for its face value you have a bunch of these questions so we spent some time clarifying exactly what this means at a more granular level but apart from that kind of clarification and fixing the detailing that people did not get into it was universally positive like because I think as I said this is how the mental model is internally at the company on how we develop with Pytorch and how we use Pytorch internally so it wasn't really a big surprise or a shock to people or no one really said oh like how can you do that I think like that it was pretty natural I think it also goes to the roots of Facebook and you know later on Meta the fact that you know the company was built on open source and it's like it is in the NDA of everybody right so unlike older company that started with proprietary technology is Facebook started with Linux and Apache and you know the Lampstack and built from there so it is kind of an open source company and what's really interesting is you know when you look at Facebook or Meta today you know there is an open source program office and people tell me oh it's very small like for five years yes but the whole company is an open source company you know instead of having like a large Ospo so on. Yeah so I think like other large tech companies or at least some other large tech companies I think Meta and Google and others they probably don't see opens like the tooling that they built as their competitive advantage so it's pretty natural in the DNA of many of these companies to think of tooling as not the thing that they want to control and lock down and commercialize and stuff like that so I think Meta has an exceptional open source program React and PyTorch and many many other projects HHVM they all have a lot of either origins or like a lot of resources being put in from Meta. Yeah and I think for this do we have a time check? Thank you so I think from from a technical perspective nothing changing you know the project continues to be called developed by its community there's no breakdown of any of the workflows everything continues that is so now if I'm an end user I mean I don't have any expertise I don't contribute to the project you know I'm just I pull the code and it's a dependency for me so from that perspective what would be the message to bring in your users of PyTorch because I feel now there's even more ammunition in terms of hey the project is moving to a foundation so you will have as an end user kind of even more reasons to be more trusting of the project and its future. I think most end users don't care I think this is more related to development of the project but users think of users as consumers like you have no one I think a very very very very very small percentage of end users in the world today would choose an iPhone or an Android based on whether like how how they're governed or controlled or something like that they there is a percentage of end users who care about that but it's very small so most end users of PyTorch just want the best product they don't really care around like how it's governed and all that they're like oh if it's useful if I'm able to use it today great oh it started not being very good okay I'm going to see what other options are there that's just the mental model for people so our users are very very consumer like they they don't really think about anything beyond the utility of the product of course this is the large part of the users and there are some parts of users who do think about oh who's funding it what is the model and all of that and those users I think will have a little more positive effect now that it's a neutral thing and they feel like it will have a long-term story regardless of which company funds or doesn't fund it so those users can be kept at peace but I think they're very small percentage of users and I think for the sake of time I still probably have a couple questions and then we're going to open in the questions for the audience here so like any other large project it might be intimidating for developers to jump in there are a lot of different pieces massive amount of documentation which you guys have done an amazing job on that so if you are to give an advice for someone who's interested to start looking into PyTorch learning it and contributing it you know what would you tell them where to start and what to look for we have a contributing guide and we have issues that we mark as good first issue actually I would say first be a user of PyTorch if you're using it that itself is a great amount of contribution because then you're going to build something on top of it and publish it into your own GitHub channel and then you will see users use it and there will be like the ecosystem of PyTorch itself will expand that I think is a first line of how you can contribute to PyTorch then comes like well I want to go fix something or I want to just go help with the core project and that's where like next level is like come into the forum start maybe answering a few questions from other people if you feel like you know PyTorch well enough and you can help other people come reply answer I think that's the next level of being able to contribute to the community and then at some point if you feel like oh now I think I have this idea I want to propose and maybe implement or I want to fix this bug that I found then that's like the third level that's when you can actually come start seeing our contributing guide and figure out exactly how to send the PRs that are in the way that we like or you just want to contribute a patch but you don't have a particular idea in mind you can come look at our good first issue tagged issues and then take a crack at some of those so that's roughly I think the structure of contributions I would layer and I have to say you know I spent some time looking at the available resources and it's really impressive just there are some open source projects like like PyTorch where they've invested a lot of efforts and resources into providing a lot of documentation and guidelines for new contributors so no wonder that you know when people come in they don't feel like at loss completely on what to do and where to start so looking forward into the future maybe you can share one or two kind of big things coming up in the pipeline from a kind of development perspective this is kind of a major milestone now the PyTorch foundation so what would what do you think the next major milestone is going to be? We are working on a lot of things that I think will substantiate into something big over the next few months to a year making us more competitive making us from a product view just making us catching us up to where we should be I mean we're always catching up to what users want but I think there's some upcoming work that I'm really excited about around PyTorch and compilers and PyTorch and hardware I think this form isn't interested in the level of detail I want to get into but largely I think there's a lot of good stuff coming in the future. Awesome so I think we're up to time okay thank you and we have reserved few minutes for any questions that anyone in the room would like to go ahead I'll tell you how we think about PyTorch itself fostering first party integrations or libraries or projects or things like that the way we think about it is we say we look at a particular area where PyTorch doesn't have an option that users are asking for we look at that area and we say okay is anyone else filling this gap and if the answer is yes and they're they're doing a good job in filling that gap you're like this is great I mean we don't see PyTorch having a not-invented-here syndrome we're just like if someone else is filling this gap and they're doing a good job and all our users are happy this is great there's no reason for us to go in and bully multiple projects out saying oh but this is the first party support or your only third party support or something that we don't have any interest or plans to do that we actually feel very much as part of the Python data ecosystem where we're just one project among many where there are gaps in user experience users are asking for something we wait a few months we see no one filling those gaps then we try to design something within the PyTorch remit and we say hey like no one has been filling this gap and here's our solution I think that model of not touching things that are working well and only king making where no one is filling the gap that that has worked well I think it's what ultimately users want and it's also the right thing for the other stakeholders if you're building a huge amount of energy into building a pipelining system or something and several people are like it's not just one option there's like ten options for pipelining or a PyTorch right you don't want us to come in and say oh yeah you spend the last two years putting all this energy into your project but screw you we're going to be building a first party integration that's not what we want so that's how we think about it so if someone is doing that already great I don't see any reason why we should stop that and then I think I don't think it makes sense bringing it into like I don't particularly understand actually what it would buy us to bring one of the ten projects into the official foundation or give them the official branding or something that's also unfair to the other nine where we do try to step in is when ten projects are serving a particular area but then two years later it's just two and then we say you two just merge and then we'll just make it one and then call it the official thing we either we have done it once or twice that part we don't mind but it has to be organic we don't want to be top-down saying this is the official thing without respecting the others I think that is going to be realized organically the pytorch foundation wants to foster development in AI in general pytorch is obviously going to be the the starting point will pytorch foundation become a CNCF or a numfocus or something like that I think it's something that we really need to figure out organically over time I don't have a good answer like it really depends on what people are asking for there's a clear need like for example I think with CNCF and Kubernetes and stuff like there was probably a need for such a fostering foundation in the community and there wasn't anything else there and so a lot of people were asking for it and it made sense and so I think if pytorch foundation is the only foundation around that is trying to serve this purpose and over time it's doing the best job at understanding the needs of the projects and developers and they want to come be under it I think that's something that will resolve over time right now I don't think it's exclusively doing that so for example numfocus is a great great place for a lot of ML and data science projects to go into there's a couple of other options so I think we'll figure this out over time we will have a bigger update on mobile sometime early to mid next year but we're doing a lot of investments into pytorch and edge none of those are toning down or anything like that I think the foundation actually has a big role to play here because one of the things that has been holding us back is the company the vendors right like mobile is dominated by a long tail vendor problem you have a hundred vendors serving edge and they all have their own interests and agenda and even heterogeneity in terms of hardware and they I think are very happy with us moving to a foundation and they want to work much more closely with pytorch I think and I can say this pretty plainly and I think that actually contrasts Google with TensorFlow where they do want to control TensorFlow as a centralized brand so I think all the vendors who are looking for a more neutral place to try to integrate and all that they do have a good home here as of earlier this week it is a Linux foundation right so we are in transit in terms of trademark and project assets and all of the assets of the projects are in transit or transition for the Linux foundation so it is either today or it was already that the Linux foundation is the owner I'm sorry so I will defer to Scott and that the transfer or the transition also include all project accounts websites you know all projects assets as well similar to any other project transferring into the alert any more questions all right I think we're going to call this session thank you everyone for joining us today and thank you