Your LLM Judge Is a Confident Liar: Building Better Verifiers — Browserbase

AI Engineer · 21 min · 205 sentences · from YouTube's caption track

Each timecode opens YouTube at the start of that sentence. Line anchors (#s42) are the cue ids in the WebVTT, and every line carries its start and end seconds. All transcripts has every talk, and the whole corpus as one file.

  1. 00:01[music]
  2. 00:12Good afternoon everyone.
  3. 00:14Um, thank you for coming.
  4. 00:16Hope you've had a great expo so far.
  5. 00:18We're in the last stretch, but I know it's been a wonderful, wonderful expo, at least for me.
  6. 00:22So hopefully you're learning a lot and we can teach you a little bit more.
  7. 00:25Um, so I'm Miguel.
  8. 00:27I'm the tech lead for uh our agent platform at Browserbase.
  9. 00:30For those of you who don't know, browserbase is a infrastructure company for deploying agents on the web.
  10. 00:38Um it basically unlocks all of the web, not just what is easily accessible uh by managing browsers in the cloud and all the runtime that uh requires to do agentic web automation
  11. 00:51at scale.
  12. 00:52So um let
  13. 00:54and I'm Corby.
  14. 00:55I'm a researcher at Microsoft and I've been collaborating with with browser base to help build really good verifiers.
  15. 01:02So today we're here to talk about some research that we published about a month ago.
  16. 01:07Um and it is regarding evalance.
  17. 01:11It is regarding RL environments and LM judges as verifiers.
  18. 01:16So early on so I've been working on this open source framework called stchen for about a year and a half now.
  19. 01:23And from the beginning as any good agentic product needs to have we were building evals to make sure that the changes that we were introducing in the framework and that the model capabilities
  20. 01:35continue to improve and hill climb on those evals and at the beginning all those evals were deterministic environments.
  21. 01:43um it was relatively simple.
  22. 01:44Model capabilities were some somewhat constrained and so we were able to build a lot of deterministic environments as model capabilities continue to improve as we continue to make improvements on the agent harness
  23. 01:55that just didn't scale.
  24. 01:57We found ourselves constantly patching or generating static sites um coming up with longer trajectories with a lot of checkpoints to make sure that the evals were deterministically verifiable.
  25. 02:10And so there's many different project problems with automating the web at scale and verifying that what you intended to do actually succeeded.
  26. 02:19And it's that the web is very open-ended.
  27. 02:21There's not just one path to correctness.
  28. 02:24Um there is no ground truth.
  29. 02:27Sometimes the web changes and the product that you were checking for before is no longer there.
  30. 02:32So that breaks the whole determinism of your environment and there's blockages.
  31. 02:37there's a lot of the environment errors that you face that don't let you get sort of a verifiable deterministic signal.
  32. 02:46So we recurred to what most people do which is trying to use an LLM judge to help improve um and scale this operation.
  33. 02:56But we quickly found out that a lot of the leading benchmarks and some of you may know about OS World uh for computer use but there's some analogous benchmarks for web use called online minor web and web voyager.
  34. 03:10Those come with LLM judges as verifiers.
  35. 03:14And what we noticed when we were using our sort of human expert annotators to verify the verifier is that in many instances they're very confidently wrong.
  36. 03:24And that leads to results that you can't really trust.
  37. 03:30So very quickly we realize that even if you were using this as an RL reward or as a signal to improve your hardness and auto research, you're not really training a better agent.
  38. 03:42You're just training a more competent liar.
  39. 03:47And so in a real world use case at Microsoft, we trained this FARS 7B model which is a a web browser agent.
  40. 03:54And the same model on the same benchmark, we judged it according to the official web voyager judge, which is GPT40.
  41. 04:02Uh and it said that it had 74% uh success rate.
  42. 04:06But there's a huge gap between the real truth which is when we used our new universal verifier uh which has high agreement with human labels that that number quickly becomes 30 like 38%.
  43. 04:16So there's a huge gap between what the existing verifiers say and what is actually the ground truth.
  44. 04:22And so we needed to find a way to to close this gap.
  45. 04:25The existing verifiers have lots of weaknesses.
  46. 04:28Um they're they use smaller and like much dumber models.
  47. 04:33uh as the LM as a judge they use 04 mini or GBT40 they don't even use rubrics so rubrics are the most critical thing that you need to have because you need to assign credit to where credit is due they don't look at the the relevant screenshots or they or they try to look at all the screenshots
  48. 04:48and they quickly get lost and overflow the context window of the LLM as a judge and sometimes they don't even look at the final answer or the action history of the model so our verifier checks all of these boxes
  49. 04:58um and this is kind of how it works uh at a very high level you And you can look in the paper for more details, but given a task like book a cheapest flight from Seattle to Boston, the first thing we do is we generate a really good rubric and I'll give some examples of that.
  50. 05:13And a rubric has like maybe 10 different criteria of what success looks like.
  51. 05:18And then given that that criteria in the rubric, we look at the agents trajectory.
  52. 05:23All of the screenshots in this case are the the evidence of the ground truth.
  53. 05:28and we rank what are the most relevant screenshots in the trajectory for each criterion.
  54. 05:33And then we use that group of of top K evidence to determine whether that criterion was met or not and if there's any like differences or contradictions between what the agent said it did and what the state of the environment actually showed.
  55. 05:48And then given that we output uh a scored rubric which we we call like a process score because it gives partial credit in some cases.
  56. 05:56and we give an we output a uh an outcome boolean uh value to turn to basically say whether the agent accomplished the task according to what a reasonable user was would expect.
  57. 06:08Um and so this is an example of what the rubric uh the rubric output is.
  58. 06:14It's basically a list of criteria um as well as the outcome verifier is basically a true false flag with an explanation as to why a reasonable user would expect
  59. 06:24um this trajectory to have succeeded or not.
  60. 06:28There were four guiding principles when we created this universal verifier.
  61. 06:33One is around rubric creation which is we wanted to grade only what was asked and not any extraneous criterion.
  62. 06:40Uh we also did not want errors to cascade from one rubric uh criterion to another.
  63. 06:45We wanted them to be isolated.
  64. 06:46And I'll give an example of that.
  65. 06:48You also wanted to look at the ground truth screenshots.
  66. 06:50Like this is a must.
  67. 06:51The agents will often overconfidently claim that they did something when in fact they did not do it.
  68. 06:56And so you have to look at the ground truth state.
  69. 06:58And then we also needed to separate um what the agent could control versus what the agent could not control.
  70. 07:04The agent operates in a web browser.
  71. 07:06The web browser is an environment that it doesn't always have ability to control and I'll show some examples of that too.
  72. 07:12So this is an example of what a good and bad rubric looks like.
  73. 07:16The task here is to uh find a cheap uh hotel in Jakarta for these dates and then use the hotel's address to search for the closest coffee shop and then output the name and address of that coffee shop.
  74. 07:29Now a bad rubric which we did see happen would output a criteria saying like please tell me the total price for the stay at the hotel.
  75. 07:37This is actually an extraneous criterion that was not asked for in the task but we saw a lot of rubrics naively generated do something like this and they would artificially
  76. 07:45deflate the scores because the agent didn't do something it wasn't asked to do.
  77. 07:50Um when it comes to not cascading errors, um there are very subtle mistakes because a lot of tasks build on each other uh if they are like multi-step tasks.
  78. 08:02So in this example here, the task was to um determine the net worth of the individual with the longest last name from among the members of NSync and Backstreet Boys.
  79. 08:13Okay.
  80. 08:14And so the agent in this case mistakenly thought that Timberlake had the longest last name which is only 10 letters whereas Kirkpatrick actually had the longest last name.
  81. 08:23So the model made one arithmetic mistake in one criteria of the rubric and that should not cascade to the next criteria of the rubric which is report the net worth of of the person that you chose.
  82. 08:35Right?
  83. 08:35So if you're able to report the net worth of Timberlake uh accurately then you shouldn't get penalized in this criteria.
  84. 08:42you should only get penalized in that one.
  85. 08:44Hallucinations is the biggest one uh that we really wanted to focus on.
  86. 08:49So in this task, this is an example of a very subtle hallucination uh where you wanted to find some information about some image captioning model and the agent said that this model had plus 6.2%
  87. 09:01in some cider score, but in reality the abstract of the underlying paper said it was only 2.8% in cider score.
  88. 09:08And so this was a like a very subtle mistake that even humans will not catch unless an LLM will flag it.
  89. 09:15Um so this kind of gives uh an overview of of how process scores and outcome scores differ.
  90. 09:23Um in the case we mentioned one of the principles was we wanted to separate controllable versus uncontrollable um failures.
  91. 09:30So, if the task is to buy, say, this uh plushy toy from Amazon, and the agent accurately searched for the plushy toy, but found that it was out of stock, it could not continue.
  92. 09:41And so, here we say that the agent gets full marks for doing its best effort uh to achieve the goal, but the outcome was still not met because it couldn't buy the thing that it wanted to buy because it was out of stock.
  93. 09:54Um, so we basically enumerated a bunch of scenarios as to what could happen and how do we assign credit if the agent was able to find a similar alternative plushy toy in a different way.
  94. 10:05Um, it would still get success there uh for both for both cases and it would get penalized if it made a controllable mistake.
  95. 10:11Uh, it would get penalized if it made hallucinations and so on and so forth.
  96. 10:15So we basically enumerated a a schema of like all the possible failure modes and how we would assign credit to that and the universal verifier adheres to those to those schema.
  97. 10:25So
  98. 10:26basically in in order to evaluate the verifier and really tell whether or not we were able to hill climb the accuracy of that verifier, we started designing a lot of experiments with human experts and built a whole platform
  99. 10:41to collect data on what we call the ground labels that we've also released under cool verify bench for others to train upon.
  100. 10:49But the process that we followed was the following.
  101. 10:53At first, we would show the full trajectory of evidence to the human verifiers and the annotators would judge based on the evidence and the result of all the actions that the agent took.
  102. 11:05After that, they would be prompted to a seeing the judgment of the universal verifier to say whether they agree or disagree with a human with a universal verifier.
  103. 11:19And we found this to be a very reliable signal to tell whether or not we were working in the right direction because I'll jump to this one straight up, but
  104. 11:32the verifier started correcting humans at one point.
  105. 11:34They it would identify things that the humans were missing.
  106. 11:38And so ultimately the result of the of the universal verifier on these golden labels was that we were able to reduce false positives from almost half to zero and coins cappa isometric to measure inner annotator inner annotator agreement.
  107. 11:57Um and what we can see here is that the h universal verifier agrees with humans as often as humans agree with one another.
  108. 12:04So we can see that 0.58 coins scalpa score uh versus the two annotators per task um where we computed coins scappa as well to see how much they agreed with one another.
  109. 12:20Another way another way to uh verify the another way to verify the quality of our verifier is to actually train on data filtered by it.
  110. 12:31So what we did was we did ran an experiment where we held constant the number of training examples.
  111. 12:37In this case it was 3k or 9k training trajectories, but we filtered those training trajectories based on whether our verifier said they were pass or not.
  112. 12:46And so when you're doing SFT, which is what we did here, you want to train only on SFT examples where they were true uh like successful trajectories.
  113. 12:54And so if you train on 3,000 trajectories filtered by the process score of our universal verifier, you will get a much higher quality model than if you were to train on a worse verifier like our own a baseline verifier.
  114. 13:08And this held at larger scales as well.
  115. 13:10And so this basically this experiment told us that uh if you have a higher quality verifier, it means you can filter higher quality data uh and training on that data leads to a higher quality model.
  116. 13:22And so this was like the ultimate experimental proof in addition to the um uh to the to the human agreements uh that this model this verifier is working and is and is reliable
  117. 13:33um in a real production uh scenario.
  118. 13:36Um the last thing we did kind of as a side project is we wanted to determine whether AI in auto research can build the same verifier that we built.
  119. 13:47So basically what I did and what Miguel and I did is we sat down for three weeks um to build the universal verifier and to tweak the prompts and to write the code for it.
  120. 13:56And we basically ran about 30 different experiments over the course of three weeks to determine whether the verifier we were building agrees with human labels.
  121. 14:05Okay.
  122. 14:05And so that's what the Coen Kappa score here on the Y-axis is measuring.
  123. 14:09It measures whether an individual verifier system is agreeing with the human labels.
  124. 14:15And so the blue line here is the model Miguel and I, the system Miguel and I were were creating this auto research uh this uh universal verifier.
  125. 14:25And then we wanted to see if if we stripped everything that we did away, could AI um in an auto research loop build the same verifier that we built with the same level of quality and fidelity?
  126. 14:36And that's what the red and green lines here are.
  127. 14:38The red line is if we took away all of our code and prompts, could AI replicate that?
  128. 14:44The conclusion that we got from this is that while we took about three weeks to build this verifier, uh an auto research loop could do it in about one day.
  129. 14:52It ran the same number of experiments in about one day.
  130. 14:55However, it only reached about 70% of the agreements that our verifier uh was able to reach.
  131. 15:02So there's still a gap there.
  132. 15:03And so the kind of the conclusion that I would draw here is that uh you can use auto research to build uh metrics and verifiers um at least to help you speed up uh experimentation.
  133. 15:16Um but you probably still need some level of human intervention here.
  134. 15:19Um then again, these these results were from Opus 4.6. I haven't tried it with Fable yet.
  135. 15:25Maybe it will do better, but it's a pretty powerful baseline and it got pretty far um along the way.
  136. 15:30So, not only can auto research help you build a model, but in this case, auto research can help you build a verifier as well, which we thought was a pretty cool
  137. 15:39um thing.
  138. 15:39And and building verifiers is as important as building the models themselves is one of the takeaways I want to leave you with.
  139. 15:45So
  140. 15:47yeah, and just to double emphasize um the green light is the auto research verifier um primed with a lot of the findings that we had gotten from the three weeks of experimentation
  141. 15:59and in that optimization it was able to reach higher percentages than we were ever before.
  142. 16:06So combining that human intuition with auto research loops has proven to be the most powerful recipe for many research tasks.
  143. 16:15Um so the all of the work is open source.
  144. 16:20The paper is published under this uh as a preprint um on archive.
  145. 16:26Um and the Microsoft repo contains the golden labels on kua verifier bench.
  146. 16:33It contains the code to run the experiments.
  147. 16:37But beyond that um this research also yielded an entire new benchmark.
  148. 16:43So we've talked briefly about online minor web and web voyager.
  149. 16:47I spend a lot of time working with labs helping make sure that we can provide them quantitative signal to improve their models.
  150. 16:55A lot of those open source benchmarks are very quickly getting saturated and it is very difficult to provide any sort of signal because it feels like the the test data is already in the distribution of the training data.
  151. 17:09And so this new benchmark has proven to have the biggest gap to complete success and it's my daily driver to make sure that I can tell whether model capabilities
  152. 17:21are strong, whether they lack and how to continue to close the gap.
  153. 17:26So
  154. 17:27did you have more slides?
  155. 17:28No.
  156. 17:29Okay,
  157. 17:30we can take a little bit of I think questions, but uh we're good on time.
  158. 17:36Yes.
  159. 17:44Yeah.
  160. 17:44So the question is the question is whether we've used the uh the universal verifier for other kinds of tasks beyond just web web tasks.
  161. 17:51So one thing we're working on in Microsoft right now is to apply a version of this verifier for desktop tasks like things that you would do on your laptop like kind of enterprise workflows.
  162. 18:02And so we hope to publish another benchmark uh of not just web data but also like enterprise style desktop data.
  163. 18:09Uh and we would have basically the similar the same kind of verifier for that too.
  164. 18:13It would look at a little bit more information because on desktops you have the terminal, you have more telemetry, more logs than just the browser.
  165. 18:20So the verifier would take those things into account as well.
  166. 18:23Yeah.
  167. 18:25Any other questions?
  168. 18:28Yeah.
  169. 18:29So I personally never when you present I was thinking about like how do you think about that show?
  170. 19:00Yeah.
  171. 19:03Yeah.
  172. 19:03So, the question is about how do you make sure you're not overfitting the verifier to the human labels because that is a problem.
  173. 19:08Uh Miguel and I spent a lot of time uh working on this question.
  174. 19:13And so like one thing that we did was we uh kind of held out uh two sets of labels.
  175. 19:20One we we basically had a set of like 150 trajectories.
  176. 19:24um on about 50 of those trajectories, I labeled them myself and I used them to hill climb in those 30 experiments.
  177. 19:31But for the other hundred trajectories, they were basically held out to us.
  178. 19:34They were done by humans uh that we had paid uh with like 2x overlap.
  179. 19:39So once our verifier was done being built, we gave it to those human annotators and each human labeled each trajectory, sorry, two humans labeled each trajectory and then that's what we published in KUA verifier bench.
  180. 19:53And so those are the numbers that we report here.
  181. 19:56Um so we're pretty confident that we didn't overfit because we held out at least twothirds of the labels.
  182. 20:03Um like we did not train like iterate on them.
  183. 20:08Yeah.
  184. 20:08So that's very important is you don't want to train on like to be able to
  185. 20:24Yeah.
  186. 20:25Yeah.
  187. 20:25Yeah.
  188. 20:25The gold standard is uh is to hire humans um and train them to do the the verification task themsel and then see whether your system agrees with it.
  189. 20:35Yeah.
  190. 20:37Any other questions?
  191. 20:39Anyone want to help us build more benchmarks?
  192. 20:43Yeah.
  193. 20:44Oh yeah.
  194. 20:45Okay.
  195. 20:47Okay.
  196. 20:47Yeah.
  197. 20:47Yeah.
  198. 20:48Yeah.
  199. 20:49Awesome.
  200. 20:50Well, thanks a lot.
  201. 20:51Uh hopefully you enjoyed the rest of the expo.
  202. 20:53It was a pleasure.
  203. 20:54Thank you so much.
  204. 20:56Yeah.
  205. 20:56Yeah.