00:26:43 · Ruchi Sanghvi, Dmitri Dolgov
[00:26:43] S1: need something that works and drives. [00:26:45] S0: It's not gonna be good enough for a product, but it will be very impressive. Right? It has a drastic impact on that early part of the curve, but it doesn't make... If you're talking about superhuman performance, if you're talking about deployment at scale, it has a much muted impact on kind of the hard part of the problem. [00:27:02] S1: And is the hard part reliability? [00:27:05] S0: Performance and reliability. It's getting all those nines in the safety of your system and reliability is one of the key important parts of it. [00:27:17] S1: So I've heard but not experienced that every nine takes 10x the effort? [00:27:23] S0: That tends to be roughly the rule, yeah. [00:27:25] S1: So which nine was the hardest? I mean, for those who don't know what a nine is, can you?
00:27:25 · Ruchi Sanghvi, Dmitri Dolgov
[00:27:25] S1: So which nine was the hardest? I mean, for those who don't know what a nine is, can you? [00:27:31] S0: If you look at whether it's the performance of the system, pick anything around safety or quality. If you look at the reliability of the system, you have some metrics, and you want to get to a certain number of nines for it to be deployable with confidence in the physical world. Right? And then, again, this is another way to describe that property that I mentioned, where you kind of start out steep, it's very easy to get to the first 90%, and then it's, you know, that much more difficult to get to the, you know, next, you know, ninety nine and ninety nine point nine nine nine nine. Right? And the way you end up solving those subsequent nines oftentimes requires, you know, very different approaches than the previous ones. So your question was which one is the hardest? Well, okay, the one you're working on right now is always the hardest but also the most interesting, the most exciting one. Which maybe that's [00:28:26] S1: nine let you deploy Waymo's at such a large scale?
00:28:26 · Ruchi Sanghvi, Dmitri Dolgov
[00:28:26] S1: nine let you deploy Waymo's at such a large scale? [00:28:31] S0: Well, I guess the first big step was to... We kind of had our usual zero to one moment, and then one to 10 out of 100 and so forth. The zero to one, that was a really big step. That was in 2015 when we, for the first time, operate a vehicle without a human driver on public roads. So that was a huge step. This was... And this is kind of this this massive transition from a demo or driver assist product to a full autonomous system. So that was definitely a step function. That step forced us to think very deeply about the performance and reliability of the system across the whole stack, from the platform itself, the car, you know, how reliable is the car? Do you have redundant actuation? What if the brakes fail? What if the steering fails? What if you lose power? The hardware that we're putting on the car, the sensors on the compute, do we have redundancy there? Do we have the right number of nines in that part of the stack? As well as the software that we are putting on the vehicle. And very importantly, at that time, we had to deeply think about this question of what does it mean for an autonomous vehicle to be ready? You know, what's good enough? So this was the first version of what we refer to as our safety and readiness framework, which is this robust, multifaceted machine that we've built over the years that is data driven, that allows us to repeatedly ask this question of, is the system ready and can we deploy? So that was 2015.
00:30:12 · Aditya Agarwal
[00:30:12] S2: I think most of us who have a more distributed systems back end or kind of a world where we have kind of built apps for a living, we're used to living with a world where failures happen, you tolerate them, it's not that big a deal, you kind of recover them. Most of the systems are pretty fault tolerant slash the worst case is not that big a deal. So what is a mindset shift you need to make to build systems for the real world deploying two ton robots that are flying through San Francisco? Do you have to untrain people who you hire to kind of think differently? How do you kind of put that mindset in? I think it's a very different mindset that most of us are used to when we build kind of computer systems.
00:30:53 · Dmitri Dolgov, Ruchi Sanghvi
[00:30:53] S0: Generally you don't have to untrain people. You have to hire people who are very good and are adaptive and fast learners. But you get I guess some of the principles that we apply to our research and engineering are not earth shattering. We just take them very seriously and we apply them to that, very high degree of rigor in everything we do. And it starts with having that culture of being safety first and eval data driven primarily. Right? And just like safety, eval is kind of not something you do after the fact. Right? It's not something that you do as an afterthought. It is something that kind of permeates all of all of the work you do across the team and all of your engineering practices. And... But, you know, it's not unlike, you know, good engineering practices of, you know, being test driven development. Right? You start with the test before you write a code. You think about, you know, what has to be true and how do you evaluate your system before you deploy. We just take it, to that next level of fidelity. [00:32:06] S1: The part that I'm still wrapping my head around is when a robot learns in simulation, how do you know whether it's getting better or getting better exploiting a loophole? Like, what is the reward function? Like, what evidence do you require outside of the training group to prove that to believe that the improvement is actually real? [00:32:27] S0: Yeah. So I think this gets back to this fundamental question of metrics and evaluation.
00:32:27 · Dmitri Dolgov, Ruchi Sanghvi
[00:32:27] S0: Yeah. So I think this gets back to this fundamental question of metrics and evaluation. [00:32:33] S1: I have to ask right after this, how strong is your eval team? We've heard upon eval so much.