← All AI Engineer talks

AI Engineer World's Fair 2026

Reinforcement Learning without Verifiable Rewards — Will Brown, Prime Intellect

Read the talk

Reinforcement Learning Without Verifiable Rewards

Production traces, backward task construction, simulators, and hindsight judgments can turn messy agent behavior into learning signal—even when success has no simple test.

From a talk by Will Brown

Before you start: Familiarity with language-model agents, tool calls, and basic model training is helpful; the reinforcement-learning loop is introduced here.

What if you can recognize success but cannot specify it?

How do you train an agent when you can look back at its actions and recognize good or bad work, but cannot write a complete scoring rule beforehand? Reinforcement learning with verifiable rewards, or RLVR, makes progress where correctness can be checked. Many real tasks offer something weaker: an evolving understanding of what the agent should have done. Will Brown, who introduces himself as leading applied research at Prime Intellect, starts from this gap between retrospective judgment and an explicit objective.

The practical problem is to turn that imperfect feedback into a repeatable learning process. This requires more than choosing an RL algorithm. It requires constructing tasks, worlds, and scoring methods that remain useful as agents encounter situations their designers did not anticipate.

0:170:28
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:17 · section reference included

From interaction to a model-weight update

An agent is a model plus a harness: the surrounding machinery that lets it act. An environment supplies a task and a world. That world might include a Docker image, a repository, tools, skills, applications, or browser tabs, together with a scoring rule. The agent acts, the environment returns observations, and the interaction continues until the resulting rollout can be rewarded.

A reward becomes useful for learning through an advantage: how much better or worse a rollout was than a baseline, possibly with additional scaling. The basic relationship is:

A=RbA = R − b

Here, R is the reward and b is the baseline. Rollouts and their advantages support a gradient update to the policy—the model weights—that nudges the model toward higher-reward behavior. Brown places GRPO, REINFORCE, and CISPO within this policy-gradient framework. Their details differ, but they share the need for a useful reward signal.

Slide titled “how reinforcement learning works” shows agent and environment boxes linked by action and observation arrows, with a green reward-to-policy-update statement below.
The reinforcement learning loop connects an agent to an environment through actions and observations.
1:271:36
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

1:27 · section reference included

Make the environment reusable

Prime Intellect’s tooling spans this loop. GPU orchestration supplies compute; PRIME-RL handles large-scale training; composable task sets, harnesses, and Verifiers assemble environments. Brown describes Lab as the platform for hosted training, evaluation, inference, experiment monitoring, run management, and deployment. The intended workflow starts from an open model and lets domain experts steer its weights toward their own tasks. Making that accessible remains a goal: the research and operational details are still difficult.

The environment is useful before any weight update happens. A task, harness, and reward definition can serve as an evaluation, generate synthetic data for supervised fine-tuning, support RL or on-policy distillation, or drive prompt optimization with GEPA. It can also be a test bed for comparing harness designs. These uses share the same underlying question: what happens when this agent attempts this task, and how should the result be assessed?

Deterministic checks make some assessments straightforward:

TaskAvailable check
MathParse the numerical answer and compare it
CodeRun test cases or a linter
Tool useCompare the final database state with the expected state

The difficulty changes when the agent writes a research report, books a flight, buys something, or handles a refund. A completed transaction does not fully answer whether it was the right choice or whether the user’s situation was handled well. These tasks still need reliable, scalable feedback, but there may be no single clean best answer to compare against.

Slide titled “most real tasks aren't verifiable” contrasts math, code, and tool-use checks with questions about a good report, the right flight, and a well-handled refund.
Verifiable checks contrast with uncertain judgments about reports, flight bookings, and refunds.
2:462:58
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

2:46 · section reference included

Learn from a distribution that is still emerging

Handcrafted benchmarks are expensive to build. Brown describes researchers working with experts, and sometimes data vendors, to refine task sets carefully. That process becomes harder to scale when deployment is open-ended: the production distribution is something the team discovers as users interact with the agent. Training for a known distribution does not, by itself, define successful behavior outside it.

A loose scoring rule introduces another problem. Reward hacking occurs when optimization finds a way to increase the proxy score without satisfying the intended objective. The poorly specified boundaries of a reward become opportunities for the model to exploit. A rising reward curve can therefore coexist with behavior that is getting less useful.

Brown uses continual learning in an operational sense: deploy a model in a realistic setting, let it act, observe its mistakes, and use those observations to avoid repeating them. Prompt and harness changes can contribute, but the larger aim is a system that improves over time while humans supervise at a useful level of abstraction. Achieving that requires automating more of the low-level work of designing and running learning experiments.

Online RL is one part of this process. It can refine skills as experience accumulates, but Brown distinguishes that from incorporating dense new knowledge into weights. A production learning system may need both. Its experiments should also be monitorable, traceable, and replayable, so changes in behavior can be investigated rather than merely observed. The goal is to make this kind of optimization available on strong open models for tasks beyond the distributions covered by their original training.

5:365:50
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

5:36 · section reference included

Manufacture signal from real artifacts

Three complementary techniques help create supervision where clean labels are missing:

  • Grounding: Give a model source material, then compare what it can do with and without that material in context. The capability gap provides something to learn from.
  • Judges: Use an LLM’s existing reasoning ability to assess whether an action was good or bad. Carefully configured judges spend inference compute on evaluation.
  • Search: Spend additional compute improving the tasks, the worlds in which agents act, and the criteria used to judge their rollouts.

These techniques move work into constructing better supervision rather than assuming the right reward already exists.

Production traces are especially useful raw material. User prompts and calls from an orchestrator to a subagent reveal what the deployed system is actually being asked to do. As traces accumulate, they begin to define the task distribution. They do not yet provide quality labels, but they tell you where to look for tasks and failures.

Document collections and repositories provide similar anchors for search and coding. Environment construction therefore does not begin from nothing: it begins from real artifacts whose structure and content constrain what useful learning should look like. Even without supervision, the production world supplies evidence about what matters.

8:358:46
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

8:35 · section reference included

Work backward from a reachable solution

Documents make backward task construction easy to see:

  1. Sample a document and generate a question-answer pair grounded in it.
  2. Ask other models, still given the document, to check that the question is answerable.
  3. Remove the initial search result from the learner’s starting point, so it must find the supporting material itself.

The construction process has access to evidence that the learner must recover. Verify the easier problem, then train on the harder upstream problem. This creates supervision without requiring someone to author every search task from scratch.

For code, a completed pull request provides a description, a diff, tests, and evidence of a reachable end state. Withhold tests, or remove implementation files while retaining tests, and the completed artifact becomes a reconstruction task. The following small Python example illustrates the latter transformation: the task input retains the test, while the reference implementation is kept separately.

python

completed_files = {
    "pricing.py": (
        "def total(price, quantity):\n"
        "    return price * quantity\n"
    ),
    "test_pricing.py": (
        "from pricing import total\n\n"
        "def test_total():\n"
        "    assert total(7, 3) == 21\n"
    ),
}

reference_files = dict(completed_files)
task_files = {
    path: contents
    for path, contents in completed_files.items()
    if path != "pricing.py"
}
task_prompt = "Restore pricing.py so the retained test passes."

This produces a starting state, not a solved rollout. In a real repository, the PR’s description, diff, and tests provide much richer constraints on what should be reconstructed.

Slide titled “synthetic code tasks” branches from a real PR containing description, diff, tests, and merged status to “hold out the tests” and “remove files, keep tests.”
Synthetic code tasks start from a real PR and withhold tests or remove files while retaining tests.

The general property is known reachability. Start with an end state that exists, take steps backward, remove the solution, and ask the learner to find a path forward again. That principle extends beyond code wherever the environment lets you control the starting state.

10:4911:01
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

10:49 · section reference included

Simulate the backend you cannot control

Production tools and applications often prevent that kind of backward construction. An agent may interact with an MCP tool, a CLI, or a website without the training team being able to program its backend state. World simulators offer a way to regain control over those interactions.

Brown describes combining general backend infrastructure with test-time search, then iterating between simulated and real behavior using production traces as grounding. He reports that this can produce high-fidelity simulators, with additional production data helping refine them over time. Their crucial training property is backend controllability: the designer can plant an answer, establish a reachable end state, and work backward to generate a task. Verifiability can then be built into the simulator even when the real deployment gives no advance assurance that a user’s request is solvable.

Slide titled “world simulators” shows four boxes connected left to right: production traces, synthetic world, planted gold, and RL.
World simulators connect production traces, a controllable synthetic world, planted checks, and RL.
12:0512:16
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:05 · section reference included

Use training to test the environment

Reward hacks can emerge unexpectedly, but Brown observes that judges are often able to recognize the kinds of hacks humans find obvious in hindsight. Recognition after a rollout does not guarantee prevention during it. The practical response is to accumulate examples, use them to understand recurring failures, and spend inference compute refining both the environment implementation and its rewards.

Some weaknesses become visible only after optimization begins. Small training runs are part of environment design, not merely a downstream use of a finished environment. Train an individual model in one environment, inspect how its behavior changes, and record more than aggregate reward. Tool-call patterns and judge-derived questions about traces can reveal what the policy is learning to do. Those observations guide the next environment revision.

The most consequential questions should reach the human expert: is this behavior good, is this the intended goal, and is this an acceptable way to pursue it? Automation can mine traces and refine checks, but the desired boundary is human direction over objectives and acceptable behavior. That expert judgment is part of how confidence in an environment is earned.

15:1615:30
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

15:16 · section reference included

Task evolution and learning from environment tokens

General Agent brings several of these pieces together for tool use: generate tasks, attempt to solve them, gate them by pass rate, and use the selected tasks for training. Brown presents this as an online task-evolution loop and points to benchmark uplift. The published implementation makes a narrower distinction: it synthesizes a fixed corpus offline, leaving evolution during training to future work. Its reported benchmark transfer gains come from supervised fine-tuning; the separate RL experiment reports training reward. The task-generation mechanism is concrete, while a continuously evolving training distribution remains the broader direction.

Task selection does not solve every learning problem. Some information in the environment may never be acquired through RL exploration alone. ECHO: Terminal Agents Learn World Models for Free, which Brown attributes to external researchers he describes as collaborators, combines learning from agent actions with supervised signal from the environment. Prime Intellect conducted a separate investigation of this approach.

The mechanism is to model the likelihood of tokens generated by the environment itself. Instead of learning only which actions receive reward, the model also learns what responses to expect from the world. That predictive signal can support an internal world model, help the agent navigate, and bring new information into its weights. Prime Intellect’s related experiments found environment-dependent outcomes, so this is a complementary learning signal rather than a universal improvement guarantee. The distinction is between refining a policy’s skills and also teaching it about the world those skills operate in.

16:5917:05
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:59 · section reference included

Turn production failures into training tasks

Detailed research work still remains in these workflows. Environments provide an anchor for progressively automating it: use compute to mine real-world data, refine tasks and rewards, and move human involvement toward higher-level decisions about goals and guardrails. The intended closed loop is concrete. Agents encounter issues in production; those issues become new training tasks; training produces behavior that can be evaluated and deployed again. The environment is the mechanism that makes experience reusable, while human direction defines what improvement should mean.

18:2118:30
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

18:21 · section reference included

Resources

From the talk

  • Prime Intellect's experiments with tool-response supervision, including generalization gains and overfitting limitations.

Read the complete timestamped transcript
  1. 0:00

    [outro jingle] Uh, thanks all for coming to AI Engineer and checking out the post-training session.

  2. 0:17

    Um, hopefully lots of fun stuff today and throughout the conference. Um, I'm Will Brown. I lead applied research at Prime Intellect, and today I wanna talk about reinforcement learning without verifiable rewards.

  3. 0:28

    And so many people may have been learning about RLVR over the past, uh, year or so, uh, year and a half, as this stuff has really taken off and become the main way that we think about scaling reinforcement learning.

  4. 0:41

    Um, but often we don't actually have verifiable rewards, and so messy real-world tasks, often we're kinda figuring out as we go. We're having our agents run around, and we kind of, in hindsight, maybe can, like, look at what they did and say, like, "Okay, this was good, this was bad."

  5. 0:56

    Um, but sometimes sitting down and just, like, specifying, "Okay, this is the rule, this is the goal," is not always so straightforward. And so this is gonna be sym-- uh, synthesizing a lot of work we've been doing as well as from the broader, uh, research literature and some of the things we're building to, uh, to kind of

  6. 1:11

    support extending RL into more messy real-world tasks. And so recap quickly of how reinforcement learning works. I would imagine if you're in the post-training session here, you've probably heard a little bit about RL, but for those of you at home and, uh, for those, uh, who are kind of still just kind of looking for the crash course,

  7. 1:27

    generally, we have an agent which we're gonna call a mo-model plus a harness, which we place into an environment. And so an environment we're gonna call a task plus a world.

  8. 1:36

    A world you could think of as maybe it's a Docker image, maybe it's a code base, maybe it is a collection of, uh, task-specific tools, maybe it's some skills, maybe it is a bunch of applications or browser tabs or things like this, as well as a scoring rule, uh, verifiers or rewards, whatever you wanna call them.

  9. 1:53

    Uh, and the agent and the environment are going to interact in a loop, and at the end, we'll have some reward of how well the agent did, uh, in the environment for this task.

  10. 2:02

    And then reinforcement learning is all about, uh, creating an advantage, and the advantage is really about taking the reward, minusing some baseline, maybe doing some scaling, [clears throat] and then now you have a set of, uh, roll-outs from the agent in the environment that you can use to then update the policy.

  11. 2:18

    The policy here is just the model weights, uh, themselves. Uh, and the goal here is to take a gradient which nudges the model towards getting higher reward. And so all of the RL stuff people talk about, whether it's GRPO or REINFORCE or CISPO or any of the other new algorithms people come up with, they're all kind of

  12. 2:34

    in this policy gradient framework, which is just about saying, "Okay, how do I make the model do things that have higher reward?" [clears throat] And so at Prime Intellect, we build a lot of tooling to power all this, uh, at every layer.

  13. 2:46

    We kind of go both from the-- We start at the compute layer and do lots of large-scale GPU orchestration. Uh, we build the PRIME-RL training framework, which powers all of our large-scale reinforcement learning and, and other algorithms running.

  14. 2:58

    Uh, we build environments. Uh, we have task sets and harnesses and verifiers, uh, as tools that you can com-- uh, mix and match to assemble, uh, complex worlds for agents to, to learn from real-world feedback.

  15. 3:11

    Uh, we have a training platform called Lab, which is anchored around environments where we do both hosted training and evaluations as well as inference. Uh, and this is to allow people to monitor their experiments and manage their training runs and, uh, iterate on their evals, uh, and deploy these models.

  16. 3:24

    And ultimately, the models are starting generally from some open source base model, um, and you're optimizing it for your task. And the goal that we're really trying to enable is for more people to be able to, uh, become their own research lab, become, uh-- take ownership over the, uh, intelligence of their own, uh, model weights and, uh,

  17. 3:42

    that optimize for the task that they care about with themselves as the experts steering the model, which means we need to make it way easier for people to do this.

  18. 3:50

    Currently, for a lot of people, it's still really hard. I think, uh, you can go-- Like, we're all here learning more about how it works because it's hard. We don't know how it all works, and we're figuring it out as we go in many cases.

  19. 4:00

    But we've spent a lot of effort and a lot of time building stuff that hopefully makes this a bit easier for people.

  20. 4:07

    Um, and so what's an environment? An environment is tasks, harn-harness, and rewards, uh, but it's not just for RL. So I think a lot of people think RL when they think environment, but environments and evals are really the same thing.

  21. 4:19

    You can use these same objects for generating synthetic data, which then you could use for SFT. You can do RL, or you could do algorithms like on-policy distillation. You could do prompt optimization like JEPA.

  22. 4:27

    You can use it as a kind of scientific test bed to iterate on your agents and your harnesses. Um, and verifiable rewards are the easy case where we just kind of can check exactly was something done correctly or not.

  23. 4:39

    And so for math, often if you have a numerical answer, you can just parse this out of, like, a box in the answer from the model and check. For code, maybe you wanna use test cases or a linter or something like this.

  24. 4:49

    For tool use, often you have some database state which you kind of know what you sh- what you're expecting at the end, and you can just kind of, like, check this deterministically.

  25. 4:56

    And so these are kind of the easy cases where the, the, uh, reward design problem is not so difficult. Um, but most real-world tasks are not this verifiable. Uh, for a lot of real agent tasks, we're having agents do things like write reports that maybe are analyzing a bunch of documents or research, um, or maybe asking to

  26. 5:15

    do things like book flights or buy things. But there isn't always, like, a clean best answer here. Uh, and there's also notions that are fuzzier of, like, interacting with users, like handling a refund.

  27. 5:24

    Like, what does it mean to handle this well? Um, and so here the signal is less clear, and there's a lot of different tricks we might want to explore and techniques we want to develop to ensure that this can be done reliably and scalably.

  28. 5:36

    Uh, and making evals is hard because oftentimes the benchmarks out there that we might, like, look at in the kind of, uh, m- new model releases, it's, like, a set of a few hundred tasks that a bunch of researchers spent months kind of handcrafting and talking to experts.

  29. 5:50

    Maybe they worked with data vendors and kind of, like, spent lots and lots of money kind of getting these, uh, to be very, like, precisely refined. And, and this isn't very scalable, uh, out of the box.

  30. 6:00

    Um, [clears throat]Especially for things that are more open-ended where there's no kind of clean check for what's good or not. Um, often the, the, the real world situations can be unbounded.

  31. 6:09

    You don't always know what things are going to be, uh, in the distribution. Like, a lot of these cases, we are figuring out the distribution as we go, and classical machine learning will tell you, you can train for the distribution, but generalizing outside of the distribution is kind of an undefined problem.

  32. 6:22

    And then especially with RL, we have to be very careful about reward hacking. And so reward hacking is when you have a kind of loose proxy for your objective that is, uh, undefined at the boundaries.

  33. 6:32

    And then models, if you train with RL, they can learn to exploit this and, uh, find, uh, weaknesses where there's some path towards, uh, climbing the, the reward that doesn't actually give you what you want.

  34. 6:42

    Uh, and so really the goal of what we would hope all of this builds into is continual learning, which is a big buzzword that I think a lot of people like talking about in many different ways.

  35. 6:51

    But I'm gonna use it to mean a very particular thing, which is that, uh, we want models to be deployed in relatively realistic, complex, messy settings and to be able to learn as they go.

  36. 7:02

    Where they are doing things, they are making mistakes, they are then able to observe and catch these mistakes after they happen and use this to not do the same thing again.

  37. 7:12

    In some cases, people want to try to do this at the harness layer or the prompt layer, um, but ultimately, you want a system that can evolve autonomously, uh, to be able to get better over time with humans in the loop at that right level of abstraction.

  38. 7:23

    And I think currently the level of abstraction for doing this is far too low for it to be practical for most people. Uh, and so this means we need new methods to be able to, uh, au-automatize as much of the difficult processes as possible.

  39. 7:34

    And many of these actually are automatizable. They just, uh, are kind of difficult problems to solve. And so there's a few techniques you can, you can use to kind of, uh, start making progress here.

  40. 7:43

    But one of the goals here is to do online reinforcement learning so that you can kind of iterate on this process as you go, as well as beyond just RL.

  41. 7:51

    There are other things where you might want to incorporate world knowledge into the model itself, not just in terms of skill refinement. RL is great for refining skills, uh, but less so for incorporating, like, dense new knowledge.

  42. 8:00

    And so blending these two together is also an important goal. Uh, and ultimately, the-- what we want from this is to be able to deploy agents into production and have them improve as they go and have the, uh, this, these experiments be monitorable and traceable and replayable so that we can kind of treat, um, model optimization very

  43. 8:17

    much as a science and make this science accessible to people who have a very wide variety of, uh, use cases they want to deploy agents for, which don't a-all live in the training distributions of the big models.

  44. 8:27

    And so we want to be able to do this on top of the best and biggest open models in the world and make this accessible. Uh, and so how do you manufacture signal?

  45. 8:35

    There's a bunch of techniques that we found very useful. Um, one is grounding. And so grounding roughly means that you have some source material, uh, and in machine learning generally, you want to have some notion of supervision.

  46. 8:46

    There's something you're learning from. Um, and in messy situations, we don't necessarily always have clean supervision, but we can get, uh, pretty re-reliable supervision if we kind of are careful about the techniques we use.

  47. 8:57

    And so grounding is one where you have some source material and the ability to do an A/B test of, like, with and without is a very useful way of creating this kind of capability gap, where a model will do better if it has something in context.

  48. 9:08

    And this gap is something we can exploit to create signal that we can then learn from. Judges are also really useful. We're relying on the fact that LLMs are already really powerful general reasoners for many things.

  49. 9:19

    And if we, uh, assign the-- if we set these judges up in the right way, then they can spend computes to make decisions about whether an action was good or bad.

  50. 9:27

    Uh, we also want to be scaling search. So search, in many ways, is something we can apply at many different layers of the pipeline, both in terms of creating tasks as well as the worlds, as well as the criteria for which we want to be giving judges for answering questions about the quality of a rollout.

  51. 9:43

    And so for source material, um, one very useful version of this, especially for this continual learning goal, is production traces themselves. And so what we found is super helpful is taking existing traces from a deployed agent and treating these as the source material, where, uh, we don't necessarily know up front what the distribution of tasks is, but

  52. 10:00

    as an agent is deployed, you start collecting more and more examples of, let's say, user prompts or, uh, s-- uh, calls from an orchestrator agent down into a sub-agent, and this starts becoming the distribution.

  53. 10:10

    We don't have labels yet, but it tells us at least what we want to look for. Um, and so this is one bi-- very useful category, especially for other things like, uh, search or for code.

  54. 10:20

    Uh, you have doc-- corpora-- corpora of documents. You have repos that are also very useful for kind of anchoring your, um, your, uh, your learning as well. That are-- And so, uh, taking these sources, these raw materials as places to kind of search for tasks from is a very useful way of starting to kind of create this

  55. 10:36

    environment out of nothing. Well, it's not nothing. It's something from the real world. And because you have the real world, you want to use that, the real world, your production environment, your agent traces as the source from which you want to learn, even if you don't have supervision yet.

  56. 10:49

    And so one thing you have to do here is get tasks. And so documents are actually a pretty easy version of this, where you can just sample documents. You can have models generate question-answer pairs grounded in the documents.

  57. 11:01

    You can verify that those answer-- those questions are answerable with other models that are still grounded in the documents. And then the actual task at hand involves throwing away the initial search.

  58. 11:09

    And so you kind of get to work backwards. And so this general principle of, like, working backwards is starting from the solution or something that's close to the solution and ha-- where your real task is, like, further upstream.

  59. 11:19

    This is a very useful way of kind of having a b-- you can verify the easy problem, then learn on the hard problem. And so anything where you can move backwards like this is super useful for kind of getting supervision for free.

  60. 11:30

    Um, in code, you can have-- you can use, uh, real world PRs, the diffs, the descriptions, the test cases, uh, removing different pieces of fi- different files to be able to have models start learning over code bases.

  61. 11:41

    Because you can kind of take something that is an, a completed artifact and start breaking it down into smaller pieces and then have replaying these pieces of getting to an end state that you know is reachable, uh, be a, a task that you train on.

  62. 11:54

    And so this idea of wanting to know that an end state is reachable and that you can then Take steps back, throw away the solution, and then learn to find it again, uh, can be applied more generally beyond code as well.

  63. 12:05

    Uh, and so we, we talk about world simulators broadly as the, the sort of thing we might want to do in messier environments which are not just, uh, production, uh, like which are not just, uh, doc search or code.

  64. 12:16

    And so a lot of the ones that we've been working on at Prime Intellect are related to things like tool use and web applications where we don't actually have full controllability of the backend state.

  65. 12:25

    There are s- some MCP tools or CLI tools or websites or applications where we can't actually program them yet, and so what we wanna do is learn to simulate them.

  66. 12:34

    And so we found that using combinations of, uh, universal backend infrastructure and test-time scaling and search and kind of iterating between the simulator and the real, uh, and the real we can kind of ground in these production traces.

  67. 12:48

    This then allows us to create really high-fidelity simulators. And so we found that these simulators are actually really great for RL because you can, one, if you have production data, you can make your simulator better and better over time, but also you have full controllability over the backend.

  68. 13:02

    And so you can actually do this reverse engineering where you get to kind of plant the answer. You can start from the end and work backwards, uh, and so that you, you have this verifiability baked into the simulator even if you don't have it in the real-world production deployment because you don't know in advance if a task

  69. 13:17

    was solvable at the time that you are being asked it. Um, and in terms of doing this, a very useful thing is scaling judges. And so a lot of times we will have a model that does something and it will make mistakes along the way, and it's easier to tell what went wrong in hindsight.

  70. 13:33

    And so the fact that you've already seen the chain of events after and you can look backwards and say, "Okay, the model made a mistake here. This thing doesn't feel quite right," or, "We asked seven different models and they all kind of agree this thing is wrong."

  71. 13:44

    This is a very useful way of kind of, uh, spending compute to do search to then extract rubrics. These rubric questions are, are, are very effective at like kind of, uh, distilling down the, the search into something that we can then, uh, use to more cheaply audit and kind of also ground once we have these rubrics as

  72. 14:01

    a, a way of saying, "Okay, we need tasks that target these kinds of, uh, failure modes as well." Um, all of this is under the umbrella of scaling search with test-time compute.

  73. 14:09

    And so we can scale search for mining traces by if we have offline production traces we can just look at them more and think about them more and have more models play with them.

  74. 14:18

    We can calibrate difficulty. So RL, to have the advantage gap that we mentioned, uh, needs to have a, uh, a separation between what one model will do once and what a model-- what a, a collection of rollouts will do.

  75. 14:29

    And so you want tasks that are not too easy, not too hard, and you want to be searching for these and iterating on generating more of them. And so this is another area where you can spend compute to, um, refine the difficulty of your, your task distributions, your task sets.

  76. 14:42

    Um, for simulators, when you're building, uh, web applications or tools, uh, that need to simulate complex behavior, you can spend compute on searching these and then you can have agents refine the implementations of them, and this allows for increasingly high-fidelity environments.

  77. 14:56

    You can do this on verification both at, uh, train time, uh, as well as, uh, offline when you're kind of creating these rubrics. You can do things like red teaming with adversarial prompt optimization to, to kind of explore for back doors.

  78. 15:09

    Then you can look for traces and spend compute mining these traces for understanding was this reward a reward hack or was this actually kind of in the spirit of the task?

  79. 15:16

    And I think these things can kind of feel like reward hacking can kind of sneak up on you if you're not careful for it, but in many cases, uh, the basic simple things actually work quite well where if the reward hacks are the sorts of things where a human can look at them and be like, "Oh yeah,

  80. 15:30

    that's a reward hack," judges are often are quite good at doing this as well. They just don't necessarily, uh, if-- tell-- if you tell the model not to do this it won't necessarily do it in the rollout, but in hindsight you can reflect on this and spend compute to kind of, uh, especially if you are collecting these

  81. 15:43

    over time and you are building up your corpus of examples of reward hacks. You can understand the sorts of things that go wrong, um, and address this by kind of, again, spending inference compute on refining your implementations, refining your rewards, as well as validating these by training.

  82. 15:57

    And so we find that in many cases you can do a lot up front, but also, also there are things that don't show up until you actually like start doing RL.

  83. 16:03

    And so part of this is folding in, uh, training experiments themselves into the process of environment design where you can, you can do, uh, small runs with individual models on like one environment and, and see what happens, and you can understand the, the behavior changes.

  84. 16:18

    You can have metrics that log the, the types of tool calls that are being done that are like judges asking, uh, questions about the, the traces to understand, uh, how behavioral patterns are changing.

  85. 16:27

    And all of these, uh, are very useful ways of kind of getting something from nothing and, uh, using compute as the thing that allows you to, uh, refine your understanding.

  86. 16:35

    And ultimately what you want is to surface the most important pieces up to the human, the, the highest level of, uh, questions about what is actually going on, what is the goal, so that the-- all of this is deferring to the human for the most important pieces of like actually, uh, employing expert judgment to say, "This is

  87. 16:51

    good. This is bad. This is what I want. This is not what I want." And, uh, these are all the ways that we kind of gain confidence in the environments.

  88. 16:59

    Um, I know we're running a little short on time, so I wanted to recap a couple blogs that we've, uh, put out recently that are kind of demonstrating pieces of this.

  89. 17:05

    We have a, a blog called General Agent, um, which is, uh, demonstrating this for tool use, this, uh, online loop of generating, uh, solving and synthesizing new tasks and gating based on this pass rate, which then we train on and we see, uh, great uplift on, uh, popular benchmarks for tool use.

  90. 17:21

    Um, additionally, beyond just RL, we found that it's quite important to think about cases where there's information in the world that RL alone will not, uh, explore. And so there's this great work, ECHO, uh, from some researchers that, uh, we are friends with and have been collaborating with.

  91. 17:35

    Uh, and then we did our own kind of, uh, deep dive into this as well to look at what happens when you have an agent that is not just training with reinforcement learning but is also getting supervised learning signal from the environment itself, which then allows the model to understand things like having an, a native world model

  92. 17:49

    of the environment, understanding what to expect because it has a, uh, a likelihood model of the tokens that the environment itself will generate. And these are the sorts of things that, uh, in many cases allow the model itself to kind of more adeptly navigate the world and not just like refine its skill but like get new information

  93. 18:03

    into its weights over time as well. Um, and so all of this is in spirit of making post-training easier, making continual learning easier, giving people the ability to, uh, create agents and not worry too much about having to, to fuss with the research pieces and fine-tune all the, the small details.

  94. 18:21

    Today we still do, but we're kind of seeing paths forward of how we start automating this, uh, more and more by like having environments as the anchor which we can then spend compute on refining.

  95. 18:30

    Uh, we can kind of use compute to mine, uh, the data we have from the real world to refine the, the signals where the humans are kind of just, uh, s- in the same way that with coding agents we're kind of going to higher levels of abstraction, we can do this with environment and reward design as well.

  96. 18:43

    Um, and all of this is what allows us to ultimately close the loop where models are then able to, uh, stay within the guardrails we give them. They go find the issues in production, and then they turn these back into new tasks that can then be trained on for getting better in the real world.

  97. 18:56

    Um, we work hands-on with startup enterprises to help them train their models. We are also hiring quite a lot. Um, if you want to get in touch for either of these, find me after the talk.

  98. 19:06

    Thanks a bunch. [audience applauding] [upbeat music]