Y Combinator Startup Podcast - Jeff Dean: The 1% Rule for Building in AI

Episode Date: August 1, 2026

In 2001, Jeff Dean and Sanjay Ghemawat did the math and realized Google’s entire search index would fit in RAM — then shipped it in a few days, and search got fast. In 2013, another napkin calcula...tion showed that three minutes of daily speech recognition per user would require doubling Google’s server fleet. That one became the TPU. At Startup School 2026, Google’s Chief Scientist talks with YC’s Diana Hu through the thought experiments behind both, why inference hardware is the next specialization, and where two or three people in a room can still win.Transcript: https://www.ycrootaccess.com/p/jeff-dean-the-1-rule-for-building

Transcript
Discussion (0)
Starting point is 00:00:07 All right, should we get started, Jeff? Sure. Sounds great. All right, Jeff, welcome. And again, thank you so much for being here, especially I just got a cold and thank you for being here. Yeah, I'm afraid I've lost my voice. I don't normally sound quite like this, but we'll do what we can. So you built MapReduce, Big Table, TensorFlow, the TPU, and I.
Starting point is 00:00:29 We could spend a whole hour on all the things you're done. But what I love is that you're still making bold predictions in public. Last year, yes, last year in May 2025 at AI Ascent, you said that AI is at the level of a junior engineer. That was about a year ago. It's been, how close are we to that prediction? Yeah, I mean, I feel like the models have been getting a lot better at sort of agent-based, longer-running coding tasks. And it seems pretty clear that they are now actually pretty capable. And depending on exactly your definition of junior engineer, it seems pretty spot on, I would say. What did you underestimate from that prediction?
Starting point is 00:01:20 I mean, I think the ability to do more and more complex tasks has been growing faster than I thought. And I also think outside of coding these agent-based systems, are really starting to shine in other domains. And I think, you know, that's going to be an important trend in the future. So give us another bold prediction. What do you think is going to be the 2027 edition? I think you will see a lot more automation of ML systems themselves, basically getting ML systems to improve their capabilities by running lots of experiments,
Starting point is 00:02:04 breaking things down into sub-problems, you know, running those sub-problems in a tight automatic experimentation loop, putting the results together, and being able to then, you know, get some improved system out from that sort of fully automated problem decomposition and automated experimentation. I think that's going to be really exciting. I think that also applies not just to ML, but also to other fields of science and engineering. Basically anything where you can have a measurable objective, I think you can actually make a lot of progress these days. Now let's go back to a little bit in history. Back in, way back in 2001, Google search used to run on hard drives. Yep. And you and Sanjay did the math and realized at some point the whole search
Starting point is 00:02:55 index would finally fit in all of the RAM of all the computers you have running. And you made that radical realization. And you basically, in a few days with Sanjay, shipped in production a whole new search version that worked in RAM rather than hard drive. And that was the thing that got Google to be so fast. Google searches. So history tends to remix. What is the, it fits the memory moment right now in 2026 that everyone in this room is still should be thinking about and designing.
Starting point is 00:03:36 Yeah, I mean, it's a little different, but I think you're going to see more and more high performance and low-energy inference hardware systems because I think everyone is now realizing that inference is the key to making these agent-based systems be available to more and more people and that latency is really important.
Starting point is 00:04:02 and that specialization of the hardware is a really key way you can make things that are more energy efficient and lower latency than more general purpose computational devices like, say, GPUs or TPUs. Because I think everyone here is used to waiting for responses on the models. Yeah, waiting is no fun.
Starting point is 00:04:25 Master speed. So you're saying, what if we don't have to wait anymore? Yeah. I mean, I think we'll imagine what you could do with something where the latency is, you know, 50x better. Hmm. Interesting that. Now, what's one assumption that perhaps 6,000 people in this room hold us already false about AI? Yeah, that's a good question. I mean, I think probably one thing is people don't quite realize how possible it is to have, you know, agent-based systems that can run not just for, an hour or two hours on a problem you care about, but for some problem domains and with highly capable models underlying them, you can get them to run for days or weeks and do really, really
Starting point is 00:05:15 complicated tasks. And I think that's, you know, starting, some people are starting to see inklings of this, but I don't think everyone has really internalized this, and that's going to be really a pretty big deal. What's a particular task that you have run that has run for weeks? What did you tell the agents to solve? Yeah, I mean, I think you can tell agents to go off and implement, you know, completely new versions of software in different programming languages that might be, you know, have better safety properties or better performance properties, that, and then they can go off and actually do that in a, you know, pretty serious way.
Starting point is 00:05:58 That's pretty cool. Now, one thing that you've been very well known for is you're really good at napkin math. Sounds funny. So one of the stories about you is that back in 2013, when speech recognition started to work at Google, you did the napkin math, where if every Google user used their phone and talk to it and use the speech recognition system for just three minutes a day, you've found. found that the system requires of Google server, you would have to double the fleet,
Starting point is 00:06:34 which would be really, really expensive just to do speech translation. And instead, you basically build a custom ship, and that was the origin story of the TPU. Yeah, yeah. I mean, I sort of had done, we were starting to see really good quality results on the sort of deep learning based speech systems
Starting point is 00:06:58 speech models we were training. But they were computationally expensive compared to the old speech system, but they halved the error rate. So that was like the equivalent of 20 years of advances in speech recognition in just a few months of like fiddling with the modeling, scaling it up a bit
Starting point is 00:07:15 and getting better data. And so we started to get worried that if speech worked a lot better, people would use it more. And so that back of the envelope calculation was really about that. Like, well, what if people start to use speech recognition more to dictate emails or to talk to their phone or whatever.
Starting point is 00:07:35 And yeah, it turned out that we realized that we needed some better solution than running on CPUs at the time. And so we came up with TPUs, which are sort of very specialized for essentially low precision dense linear algebra, which is at the heart of nearly all of the modern machine learning algorithms we use today. And if you build a specialized chip for low precision dense linear algebra and can't do anything else, that turns out to be really useful for machine learning inference, even though I can't run Chrome or Word or whatever.
Starting point is 00:08:12 And so that system produced a chip a couple years later that was 30 to 80 times more energy efficient than CPUs and GPUs of the day, and also much, much lower latency like 20 to 30x lower latency. Which is incredible what the foundation that TPU has become today. No way you would have predicted that TPU would be so foundational now with transformer architecture, which was invented way later before you actually invented the TPU.
Starting point is 00:08:41 Yeah, I mean, that's sort of why we built a general purpose linear algebra system, which is what a TPU is really, because we knew ML algorithms were still evolving, and you didn't want to over-specialize what you want to wanted to specialize enough that you got the dramatic performance benefits of we could have very big multiplier units, we could have high speed memory, we could have high speed interconnect or later TPUs that like brought many, many chips to bear on the same problem efficiently. And, you know, we've continued to scale those up and improve the performance over many, many generations now.
Starting point is 00:09:20 Incredible napkin math. So what's saying? Nafkins are good. So actually, what's a good napkin math that everyone here who wants to be a future founder should run tonight to potentially build something as consequential as the TPU? Yeah, I mean, it's always hard to say. I think about what problems you see and whatever it is you're thinking about, what bottlenecks you see.
Starting point is 00:09:52 and are there very different ways of thinking of the solutions to some of those problems that would get you, you know, an order of magnitude or two orders in magnitude better performance or capability or whatever it is? You know, because sometimes if you just squint at a problem and you think about not necessarily being anchored on exactly how that problem is solved today, but how you would solve it from first principles, you can come up with really good ideas that are, you know, maybe not what other people are thinking about. That's a good tip. No, for everyone here who doesn't know years ago, Jeff wrote a very famous list called the latency numbers every engineer should know. And these are numbers around, for example,
Starting point is 00:10:41 how long a cache miss takes, disk seek, a network package traveling, let's say, from California to Netherlands, Lots of numbers like this about distributed systems and systems engineering. And it's been sort of taped and become the viable for a lot of distributed systems engineers. Okay. Yeah. Now, fast forward, that list is up for an update.
Starting point is 00:11:05 Give us the AI edition for now 2026. Yeah, I mean, I think if you looked at what is important in AI systems these days, you would want to know things like the bandwidth between, you know, your main memory systems. on your accelerator to the on-chip memory, to the multiplier unit or whatever. You want to know how much energy does it take to do a single multiplier operation? What is the interconnect bandwidth between chips and how much does that, how many chips can you connect with that bandwidth? And then if you go beyond that domain, what is the fall off in network bandwidth when you need to talk to
Starting point is 00:11:51 10,000 strips instead of 500 or something. I think these are all really important numbers to learn and really affect how you think about solving particular kinds of problems. And one interesting thing that I've heard you talk about is that nowadays, the unit that you measure everything is energy. You pointed out that doing a calculation of math
Starting point is 00:12:18 costs about one pic or jewel. But moving the data and doing data AIO costs thousand times that. Yeah, just bringing it in from HBM on an accelerator into the processor so it can actually compute on it. Yep. That gap cannot quietly decide what products are possible and how these algorithms in AI are built. So what are the kinds of problems that founders keep calling model problems, but are in fact actually energy or data I.O. Yeah, I mean, I think the example you raised of a thousand X difference in bringing moving
Starting point is 00:12:57 data versus actually computing on it in terms of energy is a pretty significant one, and it shapes a lot of aspects of what we do in machine learning. Because if you didn't have that thousand X difference, then you know, you wouldn't have to do batching, but you have to do batching of, you know, many examples or maybe many tokens at once in order to amortize that data movement so that you can, you know, not pay a thousand X slowdown, but pay a 1,000x divided by batch size energy cost. And, you know, for really low latency, batching is not really very good. So I think these kinds of things and the energy behind various
Starting point is 00:13:43 decisions in the computer hardware reuse really affects a lot of decisions we make in building higher level systems. A very concrete example is just how training models is done. There's this whole concept of batching the data sets and running epochs. That's basically people perhaps may confuse that as a model problem, but it's really a system's data I.O. problem, right? Yeah. Yeah.
Starting point is 00:14:08 I mean, you have to assemble batches to get better efficiency in your hardware. you know, ideally you might do batch size one training, but, you know, it's not as good in terms of efficiency. So people use pretty large batches these days. Do you think it's possible for, I know you're well known for taking off on a long week or weekend and coming up with this brilliant solution? Is there such things of Jeff Dean going and working on it for a couple of weeks and getting batch size equals one training done? Yeah, I've been thinking more about inference, actually. So I think inference is a pretty interesting problem because you do want very low latency.
Starting point is 00:14:52 Training, you don't necessarily need incredibly low latency. And I think there's a lot of room for specializing hardware more for inference than we are today. What are some of those interesting things around inference that you're really thinking a lot about? I mean, just trying to minimize data movement, trying to think about incredibly low precision operations and maybe not supporting lots and lots of different kinds
Starting point is 00:15:19 of precisions. If you feel like you have a good answer for what kinds of precision you need, maybe just build that into the hardware and not much else. Which I think it brings down to a core analogy I heard from famous computer scientists that really the whole process of AI is a big compression problem. Because in order to have the data to be fully lossy
Starting point is 00:15:49 and compress it and then restore it, you basically need to understand it. Yeah. I mean, if you truly understand the data, you should be able to compress it really well. And now, Transformer architecture is basically one of the ways that has turned out to work really well. Yeah, yeah, I would say. Working pretty well so far. Good work by my colleagues. Yes. Now, let's zoom out a bit.
Starting point is 00:16:15 AI progress used to mean just better models. You had more data, trained, bigger models with bigger parameters. But increasingly in the last years or so, it's everything around the model, not just the model size and number of parameters or more data. It's everything around things like retrieval, tools, memory, agent tools. And it might kind of get consolidated into what people call context engineering. right? Yeah, I mean, I think the model is really only one piece of what you're trying to do, which is build an overall system that can solve really interesting problems. And that involves, you know, a model that knows how to use various tools. It maybe knows how to retrieve relevant
Starting point is 00:16:59 information, maybe has a, you know, a history of other information that has retrieved for past problems and it can put information into the context of the model. And the nice thing about that is that information is really clear to the model. Unlike the training data of the model was trained on, where it's all kind of like trillions of tokens stirred together into a soup of hundreds of billions or trillions of parameters, but it's all less clear than the actual context that the model sees directly for this particular problem or use case. And then I think being able to understand what tools are available, which ones are going to help me solve the, help the model solve this next, you know,
Starting point is 00:17:47 phase of the problem, how to decompose a problem into a sequence of tool calls, maybe trying multiple approaches to solve the problem and seeing which ones work and be able to evaluate that. You know, this is the whole, you know, orchestration of complex agent and multi-agent systems that I think is going to be more and more important and super exciting times over there. And I think the fun thing about this particular problem domain set is actually something that everyone in this room can actually do, because before to train a model,
Starting point is 00:18:18 you needed incredible amount of resources, incredible amount of access to GPUs and data. But for context engineering, everyone here could do it. You just need the API to something like Gemini and then work on your own setup for your own retrieval, your own tool calls. and etc., etc. So what are some tips for everyone here?
Starting point is 00:18:40 How does everyone get better at and become exceptional at context engineering? Yeah, I mean, I think a really good way to do it is to use these models and sort of harnesses and tools and so on to try to solve problems. And then sometimes you can actually see where the models are failing. And often you can actually make the model work better and succeed at that kind of problem by not just adjusting the model parameters, which is hard to do from the outside, but from, you know, creating better guidelines for the model, you know, writing skills for the model to know how to use different tools that would be incredibly useful for solving this particular class of problem. And I think as you do that, you end up on this kind of improving, self-improving of the setup that you're trying to use to solve things. And, you know, that's a really good way to get better at understanding what additional information the model would want in order to become more capable. Can give an example of some context engineering you personally have done?
Starting point is 00:19:50 I don't know, skills you wrote, tools that really made a huge different in your own. in your workflow. Yeah, I mean, I guess Sanjay and I were working a few weeks ago, and we, you know, we often do some amount of, like, performance improvement for very low-level libraries, and we have a micro-benchmark library we've written at Google where you can write micro-benchmarks of how long different kinds of operations take or how long does it take to populate this data structure or whatever, and sometimes those data structures are used on millions of processes across Google, so it's actually pretty important to make sure they're high performance. And so you can write micro benchmarks.
Starting point is 00:20:30 But then without an agent-based system, what you usually do is you measure what the current performance is on some benchmarks you care about. You make some modifications to improve the performance you hope. Then you rerun the benchmarks, see where things improved. You run maybe a broader set of benchmarks, measure the cash footprint of things. and so we wrote a skill that basically taught the model how to do most of those things in various sequences so that it could actually do self-improving benchmark measurement,
Starting point is 00:21:05 benchmark code changes, measure the performance improvement, and then iterate on that. And that seemed to work pretty well for some kinds of problems. And it really just is us giving the approach we would use as people to the model in a form that it could use. Wow, that seems very impressive. So you're saying you have this skill that if someone got access to it, it could do perform optimizations like Jeff Dean.
Starting point is 00:21:33 Seems like the world would love this and is worth infinite amount of money to someone have access to this. We actually published a document maybe a few months ago called Performance Hints. That Sondra and I wrote that's like a 30-page document about various kinds of performance tricks. And some people have taken that and then given it in. summarized form to various models and seen that they, that model can now get, you know, better at reasoning about performance issues and kind.
Starting point is 00:22:00 So you heard it all here. You could actually get your own, optimize your own code like Jeff Dean if you take this paper that you publish when performance hints. Yep. This is all free available. So you should all try it. Very cool. Yeah. You talked about agents. Everyone here is probably building one or built one at some point. And I'm sure everyone has seen your agent go off the rail at perhaps like step 30 or 40. Like agents are great for like up to step, I don't know, 10 or something and then gets shaky at step 50.
Starting point is 00:22:31 What do you think is the constraint today? Is it like context, evaluators, or just errors that compound because it's basically an open loop system? Yeah, I mean, obviously we want agents to be able to run for very long periods of time because that's how they're going to solve more and more complicated problems. But as you observe, today, You know, they sometimes stop working after, you know, 10 interactions with the tools and so on.
Starting point is 00:23:02 And sometimes that's because the model is trying to do something. It doesn't have a lot of experience doing. So it's been trained on a whole set of things. And as soon as you get a little bit off the distribution of things it knows how to do, then like most machine learning models, it will, you know, its performance will suddenly will start to degrade. And the farther you get off, the cost of the computer. comfort zone of what it knows how to do, the more likely it is to not work as well.
Starting point is 00:23:29 So there's a bunch of things you can do. So one is, you know, give the model skills and hints that kind of tend to keep it in the sort of more brightly lit path of things that does know how to do. I think, you know, having multi-agent systems where you have multiple agents trying different approaches and you can evaluate, you have maybe another model or another agent that's evaluating which ones of those seem promising is another way to kind of, in some sense, search the path of possible solutions and stick to the ones that seem most promising and discard the ones that didn't seem to work or maybe that went off the rails or whatever.
Starting point is 00:24:12 And that's a very, very useful general technique is, you know, inference time compute to perform search over plausible ways of solving the problem that can get much, much higher performance or much more reliability in long-running agent flows. How are some ways you implemented this particular workflow for your agents internally? Yeah, I mean, we have harnesses, and then we have a whole set of skills, particularly in the internal Google development environment, we have skills so that the agents can know how to use lots of our internal tooling for coding or for code reviews or for, you know, measuring performance or, you know, fetching log files. And those are just skills that you can add to make the base
Starting point is 00:25:00 model more capable, even though it hasn't necessarily been trained on exactly the way that, you know, Google internal engineers would fetch log files from our, you know, proprietary system. With the right kind of skill definition, you can actually get it to work. And that improves the usefulness of the agents. Now let's talk about where startups can win. This section is one that I personally care a lot about because also everyone here in this room needs to decide what to build in the future of your future founder. So the thing about Google is you co-design everything on the system from the processors to the
Starting point is 00:25:42 products. Which are the layers that someone like Google would keep building and compounding being better and where does a two, three person team can still win? Yeah, I mean, I think obviously Google and our Gemini models and our hardware infrastructure are really trying to build very general models that can do almost anything. But in a lot of cases, that means that we don't have a lot of attention on particular domains where perhaps a really well-designed surface that and maybe a model and set of skills or maybe a specialized model that isn't in sort of the general mix of things that our models do well and actually have a significant advantage. Because you can build something delightful and really high accuracy, really high quality
Starting point is 00:26:38 for a domain that you are really passionate. about. And I think that's where, you know, the two or three people in a room building that that they're really excited about can have an advantage. But I would also caution that the general models are definitely getting better at a broader and broader range of things. You have to figure out, you know, is that thing you're working on? Is that going to be a durable thing? Or do you think the models at the forefront are going to get better at that in the next six months or or is it something they're not going to be able to do for a couple of years or three years? And you know, you want to weigh that as you're as you're deciding what to work on you.
Starting point is 00:27:21 So let's dive deeper into this. So the general models, of course, you're going to keep working on and keep making them all better. And how should the audience reason about what are those areas that it doesn't? I mean, how should founder think about things to pick on and work on? Yeah, I mean, I mean, the most important thing is to pick something you're super excited about and want to build and you think would be useful in the world, right? So if you do that, you're already way ahead than if you wake up and you're like, oh, I don't really want to do this or whatever, or you're going to build something that is actually not that useful to the world or to many people. So I think that's the number one selection criteria. I try to apply for what problem should I work on next.
Starting point is 00:28:12 Second, I think you want to look at what the current more general models can do in that problem domain. You can test them with like, are they able to do this thing very well? And if they're completely failing, that's probably a good sign. If they're kind of able to do some of it, but not very well, that's maybe not a great sign, because that's probably a sign that the capability is starting to be present in those models and with more training data or larger scale models or whatever, it's likely to get better. So, you know, look for something where the model succeeds 0% or 1% of the time, not 20%. How do you find those?
Starting point is 00:28:55 I mean, are those things effectively out of distribution from the training set? And what exactly is the problem shape that fits that? Yeah, I mean, I think sometimes it's a product that you build that might have access to particular kind of data that the underlying model might not, a general model. So it might be you're building something
Starting point is 00:29:18 to help users organize all their own personal information. And the model won't necessarily have access to that. And so there, you can have a big, advantage because all of a sudden your model has visibility or your product has visibility into important data. It could be some incredibly hard problem where if you get the right training data and you can train a more specific model than a general purpose one, you can actually do that in a very affordable way. Maybe it doesn't take that much compute to train a niche model for this particular problem, but you can get something that's highly accurate. That can sometimes be a
Starting point is 00:29:55 really good building block for solving a important problem that is maybe not handled very well by the general model. I think that's interesting. I think you're basically two paths. The first path is a little bit funny is you guys are organizing the world's information. Yeah. That's probably kind of well covered. Yeah. But organizing your personal information that's open, which is funny. And then the second path, you talked about more specialized models in certain domains. Can you tell us more about what are some of these domains? Yeah, I mean, I think like if you look at my colleagues' work on, say, alpha fold, that was a very specific model for protein folding.
Starting point is 00:30:39 And it was highly successful and was able to really handle that domain quite well so that all of a sudden you now have this amazing tool and model that can give you answers to questions about proteins and their structure really effectively, but it's not a general model. It's a very specific one. And there are other, I think, domains where that kind of approach can work really well, maybe in material science or chip design or things like that that will enable you to leverage the capabilities of a very accurate but niche model to do things that are hard today. That's a good example.
Starting point is 00:31:19 So if some of you find a problem that's similar shape like Alpha Fold could be a good problem to work on. Now let's assume you found a problem to work on. We're going to talk a bit about how do you become an AI native founder? How do you really become good at it? You in the past said that managing a fleet of agents, say 50 or 100 agents is all about writing really good, crisp design docs or specs. And how do people get good at that?
Starting point is 00:31:47 What did those look like? Yeah, I mean, I think it's, you'll have a lot more success when working with your virtual agents. If you can clearly specify what it is you want. And the clearer you are on what it is you want, the more the agent will have sort of guidelines and sort of rules of, you know, an outline of what it is trying to accomplish. Whereas if you don't specify very much stuff, the agent has to sort of infer what it is you meant. And in many cases, it might infer things that are different than what you're imagined. So we've always told computer scientists from the very beginning that really it's really important to specify what the software that you're writing is trying to accomplish before then going and writing it. And so now we actually have agent-based systems that can do the writing, but the importance of specifying what it is you want has actually gone up.
Starting point is 00:32:44 because before you'd be handing it off to a very intelligent human who maybe has context or can ask you follow-up questions. And agents can sometimes do that, but I think clear specifications is a really good idea. And to give you an example of a use of a coding agent that works extremely well is you can ask today's models to translate software from one computer language to another very effectively, because in that case, you actually have an incredibly detailed specification. You have the whole software that says what the system is supposed to do. And so if you have a Python implementation of something and you want a Go implementation of it, you know, that is something that the model seem incredibly capable of doing these days because you can, it can sort of take all the tests that are in Python,
Starting point is 00:33:36 make sure they pass in the Go version, translate the test to go, you know, compare behavioral differences between the implementations until there aren't any and be highly effective because that spec is so clear. Now, let's assume now every founder gets good at running hundreds of agents at the same time and all the code is written for them by the agents. What becomes the scarce skill? Yeah, I mean, I think it's really having incredibly good taste in what you ask your agents to work on. Right. That is the crux of, you know, from my background, a research problem. You know, a researcher can have all the tools and all the techniques, but often most of the battle is what problem are you going to spend your time on? And if you pick the problem well and you succeed in solving it, that's way better than if you, you know, delightfully execute a research investigation into a rather boring problem. them. And so that high-level wisdom of what to work on, I think, is incredibly important. I think
Starting point is 00:34:46 models are not necessarily going to be that good at it. So you're going to have people steering a lot of AI-assisted computation in order to accomplish great things and more quickly. But that essence of what it is you want your models to do is the key thing you should focus on. So let's talk a bit more about taste because it gets talked a lot about right now in this current area with agent decoding. How do you exactly build taste and do that? I mean, yeah, that sounds so esoteric. How do you make it concrete? Yeah, I mean, it is a difficult thing.
Starting point is 00:35:26 It's not like there's a measurable objective of taste in a lot of cases. I think some of it is from experience, you know, working on a lot of different problems in the past. kind of teaches you about what kinds of problems might be interesting in the future, or what kinds of things might be just barely possible by cobbling together these previous approaches, and then some open problems you might have to work on in order to get to something kind of magical or, you know, highly useful. Another way you can get more experience for yourself is to just write down a bunch of things you think might be important, in the next 12 months. And maybe you pick one of them to work on,
Starting point is 00:36:12 but go back and evaluate in 12 months of these other things, which ones actually seemed important or which ones did other people in the world go out and create and which ones did not seem to do yet. That can give you a lot more samples for your own sort of taste creation capability.
Starting point is 00:36:33 And that's an important skill to have. I think a third way we were talking earlier was doing very crazy thought experiments. Oh yeah, that's another good way. I mean, I think sometimes it's good to not take as a given things that most people seem to take as a given. So I was doing a crazy thought experiment with some colleagues the other day about, you know, for 60 years, the whole silicon chip design, industry, design and fabrication industry have done tremendous work to make smaller and smaller scale transistors that are very low error rate, right? Because what the assumption that we want
Starting point is 00:37:24 is that every chip we manufacture of the same design should be identical to every other chip. You don't want any bits to flip. No bits should flip. There's all kinds of things. There's all kinds of error margins built into, you know, memories have ECC memory these days. You know, at the at the macro scale, we don't make that assumption when we're building large-scale distributed systems, right? We, we build reliable large-scale distributed file systems out of unreliable parts, right? Like individual disks can fail, but your data should be safe. And so we have mechanisms at a higher level to enable us to have, you know, three
Starting point is 00:38:04 copies of the data on three different machines and three different racks so that if any rack switch or individual machine or disk fails, you still have your data. We have Reed Solomon and coding techniques. But we don't seem to do this at a really extreme level in the sort of transistor level scale of the technology we're working on. So what would have basically a interesting thought experiment is what would happen if you tried to build a system out of transistor that might have, you know, 20 errors per day. Oh, my God. Rather than one every million years, right?
Starting point is 00:38:42 That would be a very different design point and might be, might enable you to do really interesting things in the fabrication side of things. You have very different kind of design methodologies because if you want to get a signal from here to there and you have these super unreliable transistors, you might have very different ways of signaling. You might send it along multiple redundant paths
Starting point is 00:39:02 in order to make sure that it gets along. One of them, and I think that would be a pretty interesting set of thought experiments. I'm not saying we should go do this, but that's the kind of thing where you do want to, you know, occasionally question assumptions. Now, oftentimes these thought experiments don't work out because they're very good reasons that, you know, for the last 50 years we've done this thing this way and not that way. But it's good to kind of revisit those every so often. That is so wild.
Starting point is 00:39:33 I mean, it's starting to rhyme a lot with neuromorphic computing or the human brain and how nature works. I mean, exactly. Like, signals in our brain are not especially reliable from getting one place to another. And so I think in brains, when there are really important things they need to get from one place to another, there are multiple pathways that enable you to sort of do that. What is, I mean, you have such an impressive career. What is one of these crazy assumptions that you threw out of the window? that actually built a consequential system in the past.
Starting point is 00:40:09 Yeah, I mean, I guess... That worked out, actually. Yeah, I mean, I think, well, TPUs is a good example. Like, being able to specialize hardware for a very niche problem domain, before that problem domain seemed as important as it is today, is one thought experiment. You know, I think the origin of MapReduce
Starting point is 00:40:33 is another good example. So we have... had worked, you know, Sanjay and myself and a number of other colleagues had worked on various iterations of the crawling and indexing system at Google. And, you know, we'd sort of written lots of hand parallelized code with lots of checkpointing to make sure it would be robust
Starting point is 00:40:52 and reliable if it was running on 100 computers or 1,000 computers and some of those died. But that code tended to be intermixed with the actually relatively simple thing, often we're trying to do. Like, I just want to, like, look at all the contents of all the web pages and then compute on the side, a mapping from URL to, you know, what language is this page and it's the text of this page. And it would get obscured by all this kind of other code for parallelization and reliability. And so we sort of remembered our training in functional languages
Starting point is 00:41:29 and realized we could squint at those problems and develop this map, produce abstraction, that you could have above this implementation, and then below the implementation, you could put all the checkpointing and reliability mechanisms into that lower-level library that everything could then build on. And so that became a hugely successful way of dealing with very large-scale computations at Google
Starting point is 00:41:54 in a robust and reliable way from that bot experiment of like, well, if we squint at it, could we find lots of problems that fit into this abstraction? That's impressive. So this thought experiment led you to create MapReduce. Awesome.
Starting point is 00:42:09 Now, let's go back to you talked a bit about your interest right now and working on a lot of customized hardware. So right now, Alpha Chip lays out chips. Now you also got AlphaEvolve that proposes solutions, evaluates them
Starting point is 00:42:25 and keeps all the ones at work. Seems like you're starting to build all these systems that can compound and build AI that builds AI. Yeah, I mean, I think more generally there's this sort of the foundation of the scientific method of you propose an experiment, you implement what you need to run the experiment, and you evaluate the experiment, and then you get results from that. And I think there are more and more problems that are now possible to implement where that whole loop of running, you know, not just a few experiments, but running many, many, experiments because you're able to automate that loop and make the latency of that loop extremely low is going to be really, really important.
Starting point is 00:43:09 It's going to enable us to tackle lots of different problem domains in science and engineering and machine learning model design itself and also in engineering tasks like designing chips. And so if you can actually do those things in an automated way and have some orchestration framework that can take very high-level objectives and break them down into sub-problems, and each of those sub-problems can be one of these automated loop that is exploring the best way to solve that sub-problem, and then a orchestration framework that can put together sub-problem solutions into the overall solution for the higher-level problem. That's going to be really impactful and it's really, really important. And I think it'll enable us to do, you know,
Starting point is 00:43:59 accelerate machine learning progress. It'll enable us to accelerate science and enable us to accelerate engineering. And I think that's going to be amazing. That sounds awesome. I mean, it sounds like a lot of fields basically where you can have very good evaluators and maybe adjacent to basically things that can be formally verified, right? Those are ripe for AI systems that can self-improve. Yeah. I think in a lot of cases, sometimes your evaluators need to be made much faster. So as an example, my colleagues did some work maybe a decade ago on some problems in quantum chemistry where you're trying to understand the properties of a particular molecule and you can generate some molecule
Starting point is 00:44:43 configuration and then you want to understand what properties it has. And so you can run a very computationally intensive density functional theory simulator, which is something that might take like a night of computation to tell you the answer for one thing. But what my colleagues did was take a bunch of output from those simulation runs, the input molecule configurations, and the outputs of the expensive simulator, and then use it to train a neural approximation to the simulator. So this is now a validation device, but instead of it taking a night, they made something that was 300,000 times faster. Wow.
Starting point is 00:45:26 And nearly as accurate as running the full-scale simulator. So now that completely changes how you would do science, right? Because now you have 10 million things to screen. You know, you could do that while you go to lunch, rather than it being a six-month endeavor where you could try to scrape together enough compute to run all these simulations. And I think there's a lot of room in a lot of domains
Starting point is 00:45:51 for much faster validation model. possibly learned, validation models that can get you an approximation to the true answer much more rapidly. And that changes how those experimental loops can be thought of and how quickly you can go around those loops. What are some of the spaces and problems that you're super excited that this super sped-up scientific method is going to solve or achieve, what particular problems are spaces? Well, clearly machine learning itself is one. So can we have a model that is able to recursively self-improve itself by running lots of experiments?
Starting point is 00:46:37 And if you think about how models are improved today in large research teams, you know, what usually happens is people think of some ideas. They run a bunch of small-scale experiments. They see if those small-scale experiments worked out well. If so, they take the most promising ones of those, they try them at larger scale. And that gets then evaluated, and then the results get integrated together into a new recipe for your model. But I think there's no real impediment to making that be a much more automated loop, where the model itself decides it's going to explore, or maybe with a nudge from some people at the various highest level, like, oh, why don't you try some new ideas around model architectures that incorporate this? And then they will go run lots of experiments, see which ones work,
Starting point is 00:47:31 and then those will get incorporated at a much more rapid rate. And, you know, effectively you want to optimize, you know, your discoveries per unit of compute input. Very cool. Yeah. Now, going back to the room, as all of you will become at some point founders or start your careers, you will probably collect lots of rejections. That will happen. It has happened to you too, Jeff. I mean, there's a story that in 2014, you with Jeff Hinton and Oriol Vinalds wrote a paper on distillation. It has to do with taking a big teacher model
Starting point is 00:48:16 to train a much smaller and more efficient model that's a lot cheaper to compute, less model parameters. And it has become a trick that everyone is using right now in industry. Yeah. And the thing is, this paper got rejected at NIRPS. Yeah, I mean, yeah.
Starting point is 00:48:38 I mean, I think I don't fault the program committee because, you know, a lot of times a paper gets three reviews and someone will look at, one of the reviewers will look at it. And in this case, they said, oh, it's unlikely to have significant impact. Unlikely to have significant impact. But, you know, I think, you know, when we wrote the paper, we actually saw this was a super important problem
Starting point is 00:48:58 because we knew making cheaper, highly capable models from larger-scale models was something we desperately wanted to do because we wanted to serve models to more and more people in many different domains like speech or vision. But, you know, sometimes the reviewer maybe didn't have, that experience because maybe they're not thinking about, you know, large-scale AI services and are thinking about, you know, is this a fundamental advance? So, so, you know, it gets rejected every so often, that's fine. We put it on archive, people read it, people use it, it's all good.
Starting point is 00:49:33 And, you know, we do use it in making our flash models, for example, from our larger scale pro model. That's partly why our flash models, for example, in Gemini are so capable relative to their size and speed. They're some of the best in the benchmark for their model size class. Yeah. Which is impressive. And I think part of the lesson is that even if you get rejected, keep going. Yeah, that's the lesson I would distill from that.
Starting point is 00:50:00 Now, I think the fun thing is that you basically join, when you join Google a 20-person startup back in 1999, now if you were to take the young Jeff Dean from way back then to tell us transport him to now today in this era with your skills. I'm feeling so vigorous and young now. What would you do? Do you join a frontier lab, start a company, I don't know. What would you do the Jeff Dean today, 25-year-old Jeff Dean? Yeah, I mean, it's always hard to say.
Starting point is 00:50:40 It's a very personal choice of what it is you want to spend your time on. to me, some of the most important questions are, are you going to work on something you really care about? Will you're working on that? And if you're able to make progress on it with a bunch of colleagues you like working with, if you're able to make collectively solve it or make progress on it,
Starting point is 00:51:06 will that make a difference in the world in some positive way? Right? Like, will you suddenly be able to do something and offer that service to, you know, maybe it's a very niche thing, but it will tremendously help biochemists or something. Or maybe it's a broader thing. It'll help programmers,
Starting point is 00:51:23 or it will help all consumers on the Internet or other things. What you should strive to do is to have impact in the world that is positive. And to work with people you enjoy working with and to, you know, work hard and do your best. So in terms of, say, the particular trade-off you offered joining a Frontier Lab versus, say, starting a company with just one or two or three of you and your close friends,
Starting point is 00:51:55 I think those are different experiences, right? In a large established organization, you have some structure. You have lots and lots of amazing colleagues who know lots of things you don't. you have lots of interesting problems that you can work on, and you already have a platform for impact by your work, you know, influencing lots and lots of people in the world already. And then as a very small startup, you know, you have to have something you're passionate about,
Starting point is 00:52:29 and there's a lot of risk in taking on, you know, working on that particular problem in a way that, you're going to succeed and you're going to grow an endeavor in order to do that. But that can also be incredibly rewarding, I would imagine. So I think, you know, it's really up to personal taste, but at the very least, regardless of what path you take, ask yourself, if I work on this problem and the best possible outcome happens, you know, will the world be a lot better in some way? Or will the world go, eh, that's kind of cool, but whatever.
Starting point is 00:53:06 That's not the kind of thing you should spend your time on. Now let's talk a bit about more about that second path of working with people that you really like in a small team. You've been able to be an incredible mentor and manager to many, many engineers, and you've been able to build huge systems. What are some of the lessons for everyone here on how to get the most and how to work with smart people or find smart people? Yeah, I mean, you always want to find people who have really good skills in some area that's needed in a team you're trying to form, whether that's inside a company or starting a company.
Starting point is 00:53:54 But you also want to find people that are people you delight being around, right? Because you're going to spend a lot of time around people working on really hard problems. and you want people who are low ego that are team players that, you know, have complementary skills to your own, perhaps. I always find working in a small team where people know things that I don't know and where maybe I have some skills that other people don't have as much of, you know, is super fun because you're collectively building something or working on something that none of you could maybe do individually. but in the process of working on that, you actually gain a lot of new knowledge and new skills for yourself, and so do they. And you kind of want to view your engineering
Starting point is 00:54:42 or research career as you have an amazing tool belt of techniques, and you always want to be adding new tools to that tool belt because you never know when you might come across a problem where you need these four specialized tools rather than these three. and adding more tools makes it more likely that the problems you encounter in the future will be solvable by you. Now, one last thing, I'm pretty sure someone in this room or multiple people will eventually build something as consequential as you've done with MapReduce, TPU, distillation, et cetera, et cetera. What problem do you hope they would be working on?
Starting point is 00:55:26 Oh, yeah. I mean, I think there's a lot of interesting problems in the world. And I'll just rattle off a few. This is not exhaustive because the world is a very big place and full of problems. You know, I'm particularly excited about new approaches to hardware. You know, we thought experiment there was kind of, you know, a, you know, a indication of that or much more efficient inference hardware. You know, I think there are radically different kinds of algorithms. for machine learning that might be much much more data efficient than the approaches we're using today. If you think about our large scale models today, they probably see a thousand times as much data as a human does by the age of 18. Yet the human by the age of 18 is better in a lot of things and, you know, on par with those frontier models that have seen way more data. So could you come up with much more data efficient systems that can learn continuously, learn from their own actions, continual learning is a really interesting thing. I think multi-agent interactions is an interesting thing.
Starting point is 00:56:33 You know, I think, you know, creating ways of having better discourse among people in the world could be interesting. Are there ways to have much more civil conversations and, you know, helping people meet other people all over the world that they should know based on their interests? You know, these are kind of interesting things, I think. There's lots of cool things in the world. and we should all go and strive to make even cooler things occur. That sounds wonderful.
Starting point is 00:57:00 Thank you so much, Jeff Dane. That's all we have today. Thank you. Thank you. Appreciate it. Thank you all.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.