Our goal is to make VLM, the world's inference engine, really push the capabilities on the open source front and then build a universal inference layer.
That means we'll have the runtime to power any new model on new hardware for new application, be able to tailor that to extreme efficiency and support all the AI workload going forward.
I fundamentally believe that open source, especially how VLM itself is structured, is critical to the AI infrastructure in the world.
And what we want to do with Infraact is to support maintain, steward and push forward the open source ecosystem.
It is only that VLM win.
VLM becomes a standard and VLM help everybody to achieve what they need to do.
Then our company in a sense have the right meaning and to be able to support everybody around it.
What if the hardest problem in artificial intelligence isn't training smarter models, but simply keeping them running?
For most of the history of computing, once a system was built, the hard part was over.
You wrote the program, pressed run, and the machine behaved predictably.
Even early machine learning followed that pattern.
Inputs were standardized, workloads were regular, the computer did its job and stopped.
Large language models quietly broke that assumption.
Every request is different.
Prompts can be a sentence or an entire archive.
Outputs can end instantly or stretch on indefinitely.
Thousands of users can arrive at once, each making incompatible demands on the same hardware.
And all of this has to happen in real time on GPUs that were never designed for this kind of unpredictability.
Over the last few years, this problem has moved from obscure to essential.
As models have grown larger, more diverse and more deeply embedded into products, the challenge of running AI systems has started to rival the challenge of building them.
That's where the tension lies.
A public story of AI progress is about better models and bigger breakthroughs.
But underneath it is a quieter systems problem.
How do you schedule chaotic requests efficiently?
How do you manage memory when you don't know when a conversation is actually finished?
And what changes when AI systems stop behaving like single-turn tools and start acting like agents that think, pause and interact with the world over time?
This episode focuses on the hidden layer.
We examine why inference, the act of running trained AI models, has become one of the most complex and important problems in modern computing, and why open source infrastructure is increasingly central to solving it.
Matt Bornstein, general partner at Andreessen Horowitz, is joined by Simon Mo and Wusa Kwan, co-founders of Infraact and creators of the open source inference engine VLLM.
This is a conversation about the infrastructure beneath AI and why it may matter more than the models themselves.
We are here today with Simon Mo and Woosuk Kwon, lead contributors on the VLLM open source project and co-founders of Infraact, a new AI inference company.
Super excited to have you guys on the show today.
Thank you.
Thank you so much for coming.
We're going to talk a little bit about VLLM, the open source project.
We're going to talk a lot about inference and what inference technology really is.
And then we'll talk a little bit about Infraact, the new company.
So, to start, can you talk a little bit about Infraact, where VLLM came from.
What is it, how did you start it and why is it such an exciting project?
Thank you for having us.
VLLM project started from actually Wusuk's prototype project at UC Berkeley doing his PhD and grow into today's open source project on GitHub for inference runtime for everybody.
Maybe Wusuk can talk a little bit about the page attention paper.
Oh, yeah.
So basically, I think it kind of started in 2022 when Meta released the OPT model as open source.
I'm not actually sure how many people actually remember the model nowadays, but it was kind of one of the first open-weight, large-language models to reproduce GPT-3.
And our lab created a demo service to run the model and to demonstrate it for the broader audience.
And yeah, it was working, but super slow.
So I started a small side project to optimize that demo service.
That was kind of at the beginning.
And initially I was thinking that it may only take a couple weeks to optimize the service end-to-end.
But it turns out that it actually has a lot of open problems inside of it.
Because this, you know, autoregressive language model is pretty different.
Actually, it was pretty different from other traditional, like, ML workloads.
And it wasn't actually.
It was kind of like a brand new, at least like outside this Frontier Labs back in the day.
I started to work on it and it became a research project and we wrote a paper and it even became a like a like open source project pretty well defined open source project as more and more people got interested in it.
So 2022, this is pre-GPT-4, obviously.
Yeah, pre-ChatGPT.
Yeah, pre-ChatGPT.
And you're thinking like, oh, I'll just work on this inference server.
This should be a fairly straightforward problem.
Like four years later...
Actually, you're like doing more work instead of less.
Exactly.
Exactly.
Yeah.
Why did you think this is a meaningful problem to work on at the time?
Because, like I would say, most people in the world at that time saw GPT-3 as a curiosity in some sense.
And OPT was kind of like a curiosity attached to a curiosity.
Like what made you and your lab mates sort of excited to work on this back then?
I think I also started from curiosity.
I didn't really think it's the most important problem in the world back in the day.
I just wanted to have a hands-on experience on how this actually works.
I mean, I think I was also impressed by the size of the model.
The OPT largest model has 175 billion parameters, and that was the largest model available.
So it's kind of meaningful for me.
It was kind of pretty rewarding to work on such a large model.
This reminds me of when I was growing up. you know, we would build like computers.
That was like the cool thing to do.
And each step change in, like memory capacity was such a big, I was like, oh my God, this one has four megabytes of RAM.
Oh my God, this one has 512 megabytes of RAM.
Looking back, it's silly.
But at the time that was actually like maybe it's because we're like nerds, but it like it gets you get like emotionally excited about like the numbers getting bigger on these systems.
Right, right, right.
Yeah.
I think that was like one of the main motivation clearly.
And so you started to say the sort of technical problem is different for autoregressive transformers compared to traditional machine learning.
Do you mind explaining a little bit, you know, how that is?
And even compare just a normal kind of computing workloads, for you know listeners who you know are engineers, who may not be familiar with AI workloads.
Sure.
Basically compared to the traditional workload, you know the clear difference is definitely like GPUs, right.
Now all the compute or kind of most of the computer happening on GPU.
And we have to optimize for the which like presumably have less memory than CPU, at least back in the day.
Now the GPUs are much has much larger memory, but typically it has much smaller memory than CPU, maybe still.
And like, you know, like all the computations happens on GPUs.
So you have to write program in a different language and different type of parallelism in mind.
Yeah.
So that's kind of like a fundamental difference from the traditional compute-happy workload versus deep learning workload, I would say.
But within the deep learning workload there's actually still a huge difference between the traditional deep learning workload versus large-language model inference.
So, for traditional workload, I think the biggest characteristic is that it is pretty static, which means, for example, like for image models, like back in the day, like CNNs, like what people do is you know, you may have several images with different sizes.
Then what we do is we resize them or crop them into the same size, and then we batch them and then we put it to the model to run the inference at once.
And this is basically.
Yeah, because of this resizing and cropping like they all kind of, at the end they're kind of compress into the same size tensor.
And that actually makes things much simpler for, you know, for the GPU to handle, right?
All the shapes are pretty regular, static, and it's kind of like well-defined.
But for a large language model, if you think about it, they're pretty dynamic.
Your prompt can be either like hello, like a single word, or your prompt can be a bunch of documents spanning hundreds of pages.
And this kind of dynamism exists inherently in the language model.
And this makes things kind of in a different world.
We have to handle this dynamism as a first-class citizen.
And yeah, back in the day, that was not like people didn't have a clear idea about how to handle it.
And yeah, fortunately we were the one of the first to, yeah, to solve, to see the problem.
That's very interesting.
So so kind of regularizing a batch of inputs was, it sounds like, one of the first problems that you had to solve?
It's actually more about scheduling and memory management as well.
Yeah.
Yeah, so the problem we're solving before in all the serving system is about just what we call micro-batching.
To leverage first CPU's fundamental vectorization in the early days before LLMs, and then early GPU for vision models like ResNet.
It's all about micro-batching.
You put together four requests together that arrive around the same time.
But the change in the LM world is you always have requests that are continuously filling and coming in.
And then each request looks differently.
You just cannot really normalize them.
So that's why you have to have a notion of a step within the LM engine to process one token across all the requests at the same time.
Regardless of each request having different kinds of input lengths and output lengths.
And output is also non-deterministic.
The language model itself will decide when does it stop.
Instead of in the traditional sense, of other machine learning servings.
It's very much like work like a clockwork.
And here it is very sarcastic.
It's always flowing.
It is always continuous.
That's why scheduling is the first problem to solve.
And then memory management, that's where page attention comes about, is a second problem to solve.
So when did you get involved in the project, Simon?
Well, I got involved in around 2023.
I first issued a call in the Skylab Slack channel to say hey, we need someone to work with us on this page.
Attention paper and kernel.
Actually, surprisingly...
I was on spring break and I was like, look, someone else can do this.
And then we just play with GBT for the entire week.
So I would just ended up just playing with prompt engineering.
So I actually didn't end up joining with Lusuk.
And so this is what a vacation looks like in Jan Stojka's lab, playing with models for a week.
And he's playing with kernels.
Yeah, exactly.
So he's playing with kernels.
I was trying to build more prompt engineering and explore like different kinds of early agent tech workflow.
And then over the summer, and especially this is when around August or September, and we really get to work together.
Actually, this is where you come in.
We get to work together on our very first VLM meetup, AC Queen Z, and where I had the experience of managing open source project before, as well as deeply interested in actually building a serving platform and into a fully open source project.
And this is where I started to get involved wrote my first lines of code and sort of built out the CS system, built out the performance benchmarking systems and then really much worked with Woosook ever since.
I had forgotten about that.
So this was the very first VLLM meetup, right?
Yeah.
It was in this office.
In this office, on this exact floor.
I think we were previously anticipating just 10, like 10 20, maybe 50 people showed up and then the registration was like
Exactly.
Over the anticipated capacity.
People are extremely interested in this technology.
I remember that very well because we run events here for ourselves and it's always very hard to get people to show up.
We're always scrambling.
And instead I got a call from our security team saying too many people have been approved for this VLM meetup.
We need to scale it back.
This isn't safe.
I'm like, oh, okay.
Probably don't tell.
I don't think we ever scaled it back.
So don't tell the security.
It was quite crowded.
The pizza ran out like the first 10 minutes.
But this is a big deal, right?
Because this is not like a consumer app, right, that you were building.
This is pulling from systems engineers right for the most part, who want to learn about how to serve LLMs and contribute to it.
So it's actually a big deal to get, I think, so much interest from such a kind of narrow, sophisticated group of people who don't like meeting other humans in real life that often either.
You know, at least speaking for myself.
So can you talk a little bit more about the community behind VLLM?
Like, how big is it now?
How did it come together?
And like, how do you guys manage it as it's gotten big?
Yeah, so in the beginning, of course, it's just a few grad students working on it.
But over time we started to having this very much open-minded and developing the open kind of mindset.
So, as of now, we're looking at 50 or more regular full-time contributor who open up GitHub every single day to work on VLM.
We crossed 2000 contributor bars on GitHub, one of the fastest growing top open source project ranked by GitHub itself.
And then this is really a diverse community.
So there is folks like Woosuk and I are sort of the team from UC Berkeley from grad student days.
And as well as Meta and Red Hat pulling their way behind this open source project.
And then as well as, of course, people who are not just people who are making the model, Mistral.
And one team and, of course, like anyone who's making an open way model, are participating in our community.
And then on the model side NVIDIA AMD Google AWS, Intel they're all having their own participation and be able to support the ecosystem.
So everyone in Vue or using Vue has the ability to choose among different applicants for accelerated computing.
Oh, that's very interesting though, which...
I think is a property that many successful open source projects have, which is that people aren't all contributing for the same reason, right?
Some people, I'm sure, just love the technology.
But it sounds like you're saying the model Providers actually have incentives to contribute to the project because they want their models to run well.
The silicon providers want it to run well in their silicon.
The infra providers want to have first dibs on running it so they can sell infra, that kind of thing.
Yeah, this is kind of a classic where solving the M times M problem so that as a model provider, you don't need to talk to everybody.
And as a hardware provider you can just go into this one system and then magically you'll work for all the models out there in the world.
And then for applications who are using VLM as well as infrastructure.
Building with VLM like having a common ground where everybody can participate in and then innovate together is way easier and cheaper, in fact, in the end to deploy.
What's your philosophy for managing a pool of contributors this large?
Do you tell them what to do?
Do they choose themselves?
How do you maintain high code quality?
It's a constant sort of iteration, month over month, year after year.
So for this I have to go back to my previous open source project which I was working on, a project called Ray, and then later AnyScale, where I learned this community-driven approach in a way that helps have a clear requirement, have a clear roadmap, have a clear sort of milestone being set.
So we kind of tried to borrow that but also really study this really successful open source project out there.
I went all the way back to Linux and then to study Kubernetes, study Postgres.
How are these community operating and together?
So in VRM we had kind of a special model that we do like any normal engineering organization set clear team scope, but also clear objective and result and milestones with different kind of technologies, technical features we want to push forward and build.
So this is where we have set forward our vision every quarter.
And then, but also invites the community to contribute.
So we're saying, great, we're working on these.
We also need help on these items that we don't have anyone actively working on.
If you are brand new and want to engage with us or engage with the community, here's what you can work on.
And additionally, we keep an extremely open mind to all the GitHub pull requests that people just opened up that we're seeing.
Oh, is this a good request?
Is this a good feature?
And then as well as a request for common processes.
So it kind of is a blend of all the lessons learned. from previously other open source projects.
And then code quality-wise, code reviews, but also a lot of constant refactoring iterations.
Yeah, I do a lot of refactoring, like every six months, kind of, yeah.
And actually one thing to add is, you know, like we do in-person meetups, you know like every two months, and we are kind of expanding to globally actually, like sometimes in Europe, sometimes in some other places in Asia.
Yeah.
And yeah, like we, actually from the first meetup in ACNZ we learned that it's actually super, super useful to meet.
You know those like collaborators and you know users in person.
And yeah, we are continuing doing that.
It's funny.
It's another one of these lessons that, like you know, Silicon Valley engineers like we've gotten so kind of, like you know, high up the abstraction stack that we're like relearning.
You know, lessons from a thousand years ago saying oh, it turns out in-person communication is high bandwidth and doesn't suffer from consistency problems.
So around the time you guys did that first meetup, we also made grant funding to the project through the academic lab.
I think it was a small amount of money, but it was actually the very first open source grant that we made.
So it's super fun and gratifying for us to see the money was actually put to good use and the project grew massively.
And then we even had a chance to invest in a related company later.
However, I did hear a rumor that, at the time that we made the grant funding, that you guys put a portion of the money into NVIDIA stock.
Can you confirm or deny?
Denied it.
Not him.
So someone else in the recipient list.
So you probably turned our tiny grant into 10 times as much money before.
Also through the funding for VLM.
A lot of this funding for VLM is that we set aside for project development and sort of project development testing and everything around operating this project and once you know, we're actually super grateful for the first grant is actually kicked off a culture and nowadays you can get even a tradition for people really opened up to sponsor open source projects in a quite significant way, Because running VLM our CI bill, for example, is more than 100K amounts.
That could be tiny for some folks.
And it's like overgrowing over time.
This is where at a burn of million dollar amounts, sorry, a year, a million dollar a year.
For an academic project, it's actually...
Yeah, because we want to make sure every single commit is well tested.
And then this is something that people are going to deploy at not thousands, but potentially millions of GPUs across the world in different environments.
So we want to make sure it's well tested, it is reliable.
And then this requirement is infrastructure, or right now, all comes from contribution and sponsorship and from everybody are chipping in to help on this project.
And now, of course, we also run meetups, and sometimes expenses associated with meetups are directly leveraging the sort of the grants that you all provided.
Yeah.
I mean it makes sense, you know, for us and for other corporate sponsors of VLLM.
You know it benefits the whole ecosystem.
Right.
So I think it makes a lot of sense.
Let's talk more about the technical aspects of the problem, if that's okay with you guys.
Do you mind to start just defining exactly what an inference server or an inference engine is?
Sure.
So an inference engine turns...
It takes an already-trained model.
So this can be a very small model like Coin1B.
It could be a very big model on DeepSeq or Kimmy K2.
Run it on an accelerated computing device.
And its job is to fully utilize the computing device to be able to generate text and images and videos, essentially.
But this all got tokenized into individual tokens.
So the goal of inference engine is to produce.
The goal of inference engine is to run the model at highly efficient speed to make sure that we can produce maximum outputs at the highest efficiency.
And just from a high level, can you explain some of the architecture, how sort of a typical inference engine works?
What are just the few most important components that people would be interested to learn more about?
Maybe when it goes through a life of a request, like if I say hello, what will happen to VLM?
Yeah.
Yeah, so basically there's a kind of traditional API server.
Definitely.
You know, get the retest and once the model generates output, it streambacks the tokens one by one.
Yeah, so there's definitely a traditional API server layer.
And inside of that, we have kind of typically something called tokenizer, right?
Like to transform these inputs to tokens, like the tokens the, basically some integers, the least of integers that the language model can consume.
And inside of it we have basically an engine, what we call like engine, and that includes a scheduler, to you know, which decides how to batch the request.
The incoming request.
And we have a memory manager to manage something called KV cache, which is a kind of the core part of the transformer for adder lamps.
And we definitely have some kind of worker which is a very generic term but which basically actually initialize the model and run the model and get the output and do all the pre-processing for the input and post-processing for the model output.
Yeah.
Yeah, that's basically.
I mean, in a sense it's not like a crazy new architecture, but each one basically highly optimized and specialized for this LM inference workload.
Do you think it's getting easier or harder over time running inference?
Yeah, definitely.
I think it is definitely getting much more difficult over time.
Actually honestly, maybe one and a half years ago, I wasn't thinking inference as a hard problem at all.
To be very honest,
But now things have changed.
The trend has changed so far.
So I think there are kind of three factors.
One is scale.
Another is diversity.
And the last one is kind of agents.
So for scale, you know, like the models are definitely getting larger.
And, you know, right now we have Kimi K2 with like more than 100, more than a trillion parameters.
But I think we believe we will see like multi-trillion parameter open source model this year.
And I think that's still clearly a trend that people will be training a larger model.
And you know definitely it's much more challenging to deal with such a model compared to you know, like the early days of LLMs where we just only deal with like small LLAMA models.
And with larger models, presumably you need more nodes working concurrently.
You need, you have more memory to manage that may or may not fit in each chip's available memory.
Can you describe some of the challenges from scale?
Yeah, for these kind of large models we definitely need to chart, you know, distribute the model into multiple, like GPUs, multiple nodes, right?
And then and yeah then, there's like definitely like a problem of how to chart, how to distribute this model right.
There are actually many dimensions we can use to chart the model and they have like different, like trade-offs.
And trade-offs, for example, in terms of how much communication we should pay to share the model in this way.
And also there's a trade-off in terms of load balancing.
If I share this in this dimension, then how significant is the load imbalance?
So these all need to take into account for the final performance estimation to get the best performance.
And yeah, it's becoming more and more a bigger problem as the models get larger.
And what about just cluster scale?
I mean, I think, Simon, how many nodes is VLLM running on at any given time?
Right now we're looking at.
This is through our sort of like, a very small sample of our usage statistics that it's used for us to figure out what feature to deprecate.
Just literally from this one signal, we're looking at 400K to 500K GPUs 24-7 running VLM.
And this is quite a big scale thinking about the global deployment of GPU footprints.
And we definitely believe there's a lot more out there.
And, of course, this is a wide diversity of different kinds of GPUs, GPU architecture as well as model architecture being deployed.
We're not seeing like a one-size-fits-all.
People are using it for just one singular use case.
I see.
And this is sort of your point.
Your second point was like about diversity sort of making it a harder problem over time.
Yeah, the chip diversity, harder diversity is definitely one factor.
And also models are getting also diverse.
You know, if you think about the Like, for example, like for NVIDIA, like a year ago, I think, they only released a few series of open source models, but now they're releasing many open source models, like every month in different domains, right?
Some are on the video, some are on the robotics, some are on the, on the language and yeah, this kind of like open sourcing trend is getting expanding and that people are training many different kinds of models in many different domains and releasing them like every month.
So there's model diversity and even for just for text models they're all transformers in that, but their detailed architecture still are very diverse and they're even we see they're even diverging, Like say, for like, DeepSea 32 was using sparse attention, something called sparse attention.
But say for Q1 and Kimi, they're kind of exploring like linear attention which is kind of different attention mechanism.
And they have different ways to manage the memory.
So yeah, this model architecture divergence is also getting more significant.
And so is it up to you, meaning VLLM, to implement Sparse Attention, for instance, so that it's available for the models to use.
Yeah, definitely.
We basically leverage the open source community, definitely.
Because we collaborate with these model vendors, we often get help from these model vendors.
They basically provide some kernels or at least reference implementations of these new operations.
And yeah, we like our job is often like basically leverage this collaboration and making more mature and also available for more diverse environments.
I remember early on in open source models there was some standardization, like everyone was kind of using Lama.
I think everyone's using sort of like the same tokenizer and the same like input format and you know, and like end of stream token and stuff like that.
Is that still the case or is it like, is it different for each provider now?
It is, yeah, it diverged quite a bit over the last few years, maybe last couple years.
Yeah, one thing is that many yeah, like the model, architecture itself has changed a lot, you know, especially on the attention side.
And also even for, like input-output processing because, like different labs have different kind of their own ways to form, you know how to form the conversation and how to form the tool calls, for example, for their own models.
So now like this has been diverging quite a bit.
And now, yeah, this has been diverging quite a bit for the last couple of years.
I see.
Okay.
So scale of models, diversity of models and hardware deployment scenarios, and then agents were the third thing you mentioned, sort of getting hard over it.
Yeah yeah, you know, like for agents, we need a definitely we need a kind of different.
I mean beyond, just beyond the inference engine, we also need to set up the whole new like environment, actually whole new infrastructure to support all the tool callings and to support all the.
Yeah, like multi-agent things.
Yeah, like that part becoming kind of a new emerging challenge for inference as a whole.
Do you think this means there will be more state managed in the inference layer over time?
As before, the paradigm has been text-in, text-out and then just single request response and then
But as we evolve into the year and the decade of agents, we're seeing multi-turn conversation turning into hundreds and thousands of turns.
And then these turns.
Also involves external tool use, like interacting with sandbox, performing web searches, running Python script or any programming languages, and be able to have this kind of long iterative process where LLM is involved but also external environment interaction is involved.
And this really kicked off a huge wave of co-optimizing a Genentech architecture with inference architecture.
So, just to give an example, that when, Just to give an example, it is very important for VLM to understand whether or not the conversation is still happening.
If the conversation is no longer happening, we can remove the KV cache.
That is the persistent state associated with each text completion streams.
But in agentic use cases, you actually don't know whether or not the agent will think it finishes.
And the interaction previously was just a human typing in the text box.
But now it becomes external environment interaction.
It could be one second just for a single script to finish.
It could be 10 seconds for a search or a complex analysis to finish.
And then it could also be minutes, hours, if there's humans in the loop.
With that uncertainty, we actually don't even know when is the request going to come back.
And then the uniformly of cash access pattern and eviction pattern got kind of.
The patterns got pretty disrupted by the new paradigm.
I see.
I see.
And so you have to be much smarter about how you manage the cash as one.
As one example of that.
Yeah.
Gotcha.
Gotcha.
Which is one of the unsolvable problems in computer science.
Cache and validation.
Yeah, exactly.
So I can see how that would get harder over time.
I think I know the answer to this, but are you guys big believers in open source AI compared to closed source?
And can you just explain how you think about that?
We're definitely big believers in open source.
Yeah.
What we believe is diversity will triumph that sort of single of anything at all.
So that means we believe in diversities in models, diversity in chip architecture.
Fundamentally, this is because the world is complex.
For any application, you're going to need to find and tailor the right sort of model architecture to the right chip architecture for the right exact use cases.
And the best way to promote diversity and improve that is through open source, because open source everybody know where everybody else is up to and be able to make their opinionated take based off the common ground.
And finally, if you look at the history of computer science, operating system, cluster managers databases, Every single system field get better when they're starting to have a common standard and everybody deviate a little bit, innovate on top of each other versus following a single line of trend that is proprietary and single source control.
I see.
That's very interesting.
So you're almost saying OpenAI will tune their stack very tightly for their use case, which is ChatGPT or whatever other apps they're running.
For an enterprise or another tech company.
If I want that same level of tuning, I can't just use off-the-shelf closed source models, because I don't have control of the whole stack and the different participants in the stack aren't paying attention to it.
Of course, one part is data, one part is the model architecture itself, which will impact the performance.
And then just on the model architecture itself, right?
How smart do you want the model to be?
Do you want the model to be able to handle millions of contacts?
Token contacts or just shorter contacts is totally fine, right.
And then you also need to specialize that model to your exact compute architecture.
What chip are you using?
For example, for NVIDIA, the model you design for a H100 chip is very different from a B200 chip.
And then it is very different for a GB200 MVL72 system.
And then compared to, for example, the model architecture you design for TPU, then again that is also drastically different.
And then using it for vision model video generation And for reasoning mass coding.
In the end, we'll all look at the vertical stack integration.
We're like, wow, they're so much different from each other.
That makes sense.
Can you just share any stories about live BLM deployments that you thought were particularly interesting or important?
I have a few.
One is, I think, around 2024.
We learned that Amazon is running VLM to power their Rufus assistant bot, which was really surprising to all of us because, one as a point, of course, we believe VLM can be deployed at scale, but seeing this as a massive scale global e-commerce platform, deploying this as like front page feature.
That means when everybody, when they're opening Amazon app and clicking the bots suggestion or even entering a search query, is going through a VOM.
And this is kind of the first sort of magical experience in a way.
One of the first experience was, wow, my purchase is going through VOM right now.
It's kind of exciting, but also scary.
You're like PhD students at the time.
And also across not just Amazon LinkedIn and every major deployment of VLM.
We're surprised to find out they're always the first adopter of cutting edge features.
So I've seen one of the example of deployment of VLM within Character AI was when we first make the end grant speculation for a spec decode available as just a single PR pull request in VLM not even merged.
And then, while we're still iterating on that feature, and I heard someone from Character AI saying oh, actually we already wrote it out.
You have hundreds of GPUs at scale, given just your first iteration of this feature.
So it's really much.
Everybody is staying on the cutting edge of VLM and we're quite excited about that.
Okay, should we talk about the company then, Infraact?
What is Infraact, and why did you guys decide to start the company?
So Infrac, created by the creators and maintainers of the VLM project.
Our goal is to make VLM the world's inference engine, really push the capabilities on the open source front.
And then... builds a universal inference layer.
That means we'll have the runtime to power any new model on new hardware for new application, be able to tailor that to extreme efficiency and support all the AI workload going forward.
And implicit in what you just said, is that you're devoting a lot of resources, I think, to the open source project.
Could you, I guess, is that right?
And can you expand on that?
Yeah, one thing we believe is I fundamentally believe that open source, especially how VLM itself is structured, is critical to the AI infrastructure.
And what we want to do with Infraact is to support maintain, steward and push forward the open source ecosystem.
It is only that VLM win.
VLM becomes a standard and VLM help everybody to achieve what they need to do, then our company in a sense have the right meaning and to be able to support everybody around it.
So open source is definitely number one and, in fact, sometimes the only priority of our company right now.
You're not supposed to tell your investors, by the way, that.
We do believe that open source project is also kind of a secret weapon.
In a sense that, having this community all work together for this open source, we have the execution beyond any single entity can have.
This is the thing we heard over and over again that people just tell us we just cannot keep up with VLM.
So that's why we're using VLM.
We have our internal team, we have our internal fork, we have our internal inference engine.
But open source moves so fast that the only way to stay ahead is adopting.
And that's why we want to make it happen.
And in fact, this is exactly why we're staying all in on open source.
That's awesome.
We mentioned Jan Stojka before, obviously one of the founders of Databricks.
He was your I think both of your PhD advisors at Berkeley, and he's going to be involved in Infraact too.
Can you talk about maybe a little bit how he's going to be involved in this company?
And, even more importantly, what have you guys learned from him, as you know his students and about startups, and you know distributed systems and all this stuff.
Sure.
Yeah.
Yeah, you're exactly right.
Jan is both of our advisors.
I have actually worked with Jan since 2017, since I was an undergrad working on my first open source project for serving, and then work with him at any scale for my second open source project.
You're just addicted to like Berkeley-based open-source AI-serving companies.
So at this company and VLM, Yang is quite involved.
So as a company, he will be a co-founder.
And then as an open-source project, he has been advising this project since its inception.
Yang knows open source project, academic project, industry research trend in and out.
So from what we're working together on Yang really helps us with both clearly understanding all the lessons learned about bringing open source through the final miles of adoption in companies enterprises, as well as what is actually happening on the research world.
Sky Computing Lab over the last few years has produced amazing infrastructure and new research ideas.
And Yang continued to explore a new frontier on that front.
And then we're quite excited to hear that and also innovate on the open source together.
Yeah, and he also helps recruiting a lot.
And he's involved in all of our hiring process.
He basically tells us, I mean, teaches us how to tell talents, where to find talents.
These are all amazingly helpful.
So on that topic, what are some of the big problems you need to solve now?
And what type of people are you hiring to help you solve them?
Definitely.
You know, the inference at scale is kind of one of the biggest challenge, I think, in the field, not only for us but in the field overall.
So we are trying to hire more like very experienced ML infra engineers overall to make you know, For example, what would be the best way to utilize the GB200 GB300, MBL72 rack entirely for the giant open source model.
Still, I think it's an open problem.
There are definitely some endeavors in academia and industry, but I think there are some room for improvements.
So yeah, that's some of our focus at the moment.
Here's my pitch from a computer science point of view. pretty rare if people ask me this question.
That is, if you're working at a vertically integrated company that have end products for, let's say, for chatbots, for assistant, you are working on the vertical slice of the problem.
In Infraact, you will be working on an abstraction of horizontal layer.
And this is similar to operating system databases and different kinds of abstraction that people have built over the years.
Operating system abstracted CPU and memory.
Databases and file system abstracted storage devices and networking.
For accelerated computing there's a brand new physical device that inference, and VLR abstracted a large part of it for inference-specific work.
Of course, it's training, but we, our singular focus is on inference.
And this necessitates a layer, a software layer, that abstracts away GPUs and accelerated computing devices for models.
And this is as important from my point of view as abstraction Unity build for OS for databases, which are both fields we're really passionate about when we're PhD students too.
So that's why ML system is fundamentally a new system research and system deployment.
So here at Infrared we'll be working on this layer that is not a vertical slice but a fundamental about a fundamental runtime and impacting all the future generation of software that will run on an accelerated computing device.
And your work will span from both working with different models and then working with different applications and, as well as understanding the pros and cons of different chips, as well as their whole integrated data center systems, to be able to figure out.
Oh actually, for these we should build abstraction in this way.
And we'll constantly remove abstraction, break abstraction and build it over and over again, just like how operating system got innovated over time, databases got innovated over time.
With a new information, we have a hand.
So you will come here to have the constant exercise of building an actual, widely deployed production system that will be at the frontier of influence.
And this is what you call universal inference layer.
Yeah.
It's purposely vague in a way, but what we really focus on is going from page attention, from going from the serving system to the whole runtime you need for intelligence.
Husak, Simon, thank you so much for being here today.
Thrilled to have you on the podcast, of course.
And we're thrilled to be, you know, working together in the company.
It feels like it's been a few years.
We've already been working together, but yeah, great to have you here.
And congratulations on getting off to a great start.
Thank you for having us.
Thank you.
Thanks for listening to the A16Z podcast.
If you enjoyed the episode, let us know by leaving a review at ratethispodcast.com slash A16Z.
We've got more great conversations coming your way.
See you next time.
As a reminder, the content here is for informational purposes only.
Should not be taken as legal business tax or investment advice or be used to evaluate any investment or security, and is not directed at any investors or potential investors in any A16Z fund.
Please note that A16Z and its affiliates may also maintain investments in the companies discussed in this podcast.
For more details, including a link to our investments, please see a16zcom forward slash disclosures.