AI Engineer World's Fair 2025
OpenThoughts: Data Recipes for Reasoning Models
Read the talk
OpenThoughts: Finding the Data Recipe for Reasoning Models
Strong reasoning students need more than a training algorithm: OpenThoughts tests which questions, teachers, sampling strategies, and filters make supervised fine-tuning effective.
From a talk by Ryan Marten
Before you start: Familiarity with supervised fine-tuning, reinforcement learning, and teacher–student distillation will help; the article explains how those ideas apply to reasoning data.
The missing recipe behind reasoning gains
What data lets a small model learn to reason? On competitive math tasks such as AIME, giving models room to generate long, step-by-step reasoning traces has accompanied striking improvements. That makes test-time scaling attractive—but it leaves a training question: which examples teach a model to use that extra thinking effectively?
DeepSeek-R1 made this question concrete. Ryan Marten emphasizes the supervised fine-tuning stage in its training pipeline: DeepSeek-V3-Base was trained on roughly 800,000 examples, including about 600,000 reasoning examples. Reinforcement learning helped produce the reasoning data, and further RL followed SFT. His description of R1 as an SFT model is therefore shorthand; that later RL also refined reasoning, while the small distilled models were trained with SFT alone.
Those strong small models suggested that the training method was accessible, but the data behind it remained insufficiently specified. A training recipe does not tell you which questions and reasoning traces to train on. Reconstructing that missing data recipe became the motivation for OpenThoughts.
For a specialized application, training your own reasoning model can serve performance, privacy, speed, cost, and control over the model’s future. Reasoning is another tool for solving a domain problem, and SFT and RL are complementary ways to develop it. The appeal of SFT here is its relative simplicity and effectiveness.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Separate the dataset comparison from the model comparison
The research problem has three parts: how much data is necessary, which creation steps matter, and which choices work best within each step. OpenThoughts 3, announced with this talk, is the resulting dataset recipe. Marten presents it as state of the art at its June 2025 release.
The first comparison plots accuracy against dataset size on AIME competitive math, LiveCodeBench competitive programming, and GPQA Diamond science questions. To compare OpenThoughts data with the data released for Nemotron Nano, the team trained the same base model on each dataset. The original OpenThoughts paper identifies that shared base as Qwen2.5-7B-Instruct. Marten reports that the OpenThoughts recipe shifts the accuracy-versus-data-scale curve upward relative to the Nemotron Nano data recipe. This comparison concerns the training data, rather than differences between model architectures or starting checkpoints.
The next comparison concerns released models. Marten reports that the OpenThoughts-trained 7B model outperforms DeepSeek-R1-Distill-Qwen-7B, the model the project originally sought to reproduce. Against released Nemotron Nano, he reports better results on some benchmarks and comparable results on others. That second comparison does not hold the base model fixed: Nemotron Nano starts from Llama-3.1-8B-Instruct. These are release-time results across science, code, math, and held-out benchmarks, not a claim of universal superiority.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Improve the recipe before paying to scale it
Moving right on a scaling plot means creating and training on more examples, with increasing expense. Moving the curve upward means improving what those examples contain. Dataset size and dataset recipe are separate experimental decisions: a better recipe seeks more accuracy at a given data scale, before committing to a larger run.
OpenThoughts decomposed data creation into a sequence of choices:
- Source questions: identify candidate question collections.
- Mix sources: decide which collections to combine.
- Filter questions: select the questions worth answering.
- Generate answers: sample reasoning traces from a teacher model.
- Filter answers: test whether removing undesirable responses improves training.
After studying these stages, the team also compared teacher models to choose the generator for the final recipe. Treating each choice as an experiment makes it possible to discover which steps help, rather than assuming every additional curation step improves the dataset.
The broader Hugging Face organization shown in the talk contained over 5,000 datasets and almost 3,000 models; those are not the experiment count for this release. Marten reports roughly 1,000 experiments for the project itself. The strategy was to find measurable signal at the smallest practical scale, test many alternatives, and then scale the strongest candidates. Small-scale rankings can change at larger scale, so the final large run remains a test of whether the earlier findings transfer.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
More traces can substitute for more unique questions
One of the most useful findings concerns repeated sampling. A training example is a question paired with a teacher response; it need not introduce a new question every time. Marten describes the following approximate fixed-size comparison:
| Construction | Unique questions | Traces per question | Total examples |
|---|---|---|---|
| Broad question set | 30,000 | 1 | 30,000 |
| Repeated sampling | 1,875 | 16 | 30,000 |
In the comparison Marten describes, these constructions performed similarly. His 30,000-example illustration rounds the paper’s 31,600-example ablations; it should not be read as universal equivalence across domains or sampling settings. In particular, the paper’s math results do not establish that more traces always win.
The scaling opportunity is a separate point: sampling 16 responses per existing question produces 16 times as many examples as sampling once. If finding good questions is the bottleneck, multiple teacher attempts let the dataset grow without requiring an equally large increase in unique questions. That still costs generation and training compute, but it changes what must be sourced.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Select teachers and sources by what the student learns
A model’s own benchmark strength does not determine its quality as a teacher. Marten compares this to a brilliant researcher who is a poor lecturer: solving a problem well and producing examples another model can learn from are different capabilities. In the OpenThoughts experiments, QwQ-32B was a stronger teacher than DeepSeek-R1, so the team switched to QwQ-32B for its recipe. The relevant outcome was the trained student’s performance.
Question provenance also proved less predictive than the team might have expected. Some of the best sources were entirely synthetic, outperforming tested sources drawn from forums or written manually by people. This is a finding about the selected sources, not a guarantee that synthetic questions are better. Its practical value is that synthetic generation can expand the supply of questions once a useful generation approach has been found.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Filter for useful difficulty, not every conventional quality signal
Two question filters worked well:
- LLM difficulty labels: ask a language model to judge how difficult each question is, then retain the hardest questions.
- Response length: have a model attempt each question, then use the length of its response as a proxy for difficulty.
The second method assumes that harder problems tend to elicit more reasoning text. Length is a proxy, not a direct measurement of difficulty. In these experiments, both approaches worked better than the tested embedding-based methods and fastText classifiers—methods more familiar from pretraining data selection. Post-training data may therefore need different selection signals.
Two other intuitively appealing choices did not help. First, a smaller collection of high-quality sources performed better than a broader mix chosen to increase source diversity. Adding sources was not automatically useful simply because it made the dataset more varied.
Second, answer verification and filtering did not improve the general SFT and distillation recipe in the reported experiments. This result has an experimental qualification: the paper includes a 63,200-example unfiltered baseline compared with 31,600-example filtered sets, explicitly without controlling compute for that comparison. It does not establish that verification is useless under every budget or in every domain.
Marten offers a possible explanation: a teacher’s attempt at a difficult problem may contain useful reasoning even when its final answer is wrong. Discarding it on final-answer correctness alone could remove something the student can learn from. That is a hypothesis about why filtering may fail, distinct from the observed result—and it does not negate verification’s role in RL.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Adapt the recipe and make evaluation reliable
A specialized model does not require repeating the entire research program. Start with the published recipe, then use available compute to test a few alternatives at each stage. The important qualification is that the best choice may depend on the domain: OpenThoughts studied code, science, and math separately.
| Domain | Useful question filter |
|---|---|
| Code | LLM difficulty labels |
| Math and science | Response length |
The distinction has a concrete explanation. Even a simple programming task can require many lines of code, so a long response need not mean difficult reasoning. An AIME answer is a compact integer; the final answer contributes little to the total response length. In that setting, length more closely reflects the reasoning preceding it.
When domain data is scarce, transform existing material into questions, then use those questions as in-context examples to generate more. This applies the synthetic-source finding to a practical constraint: a small collection of relevant material can seed a larger question set. Marten points to Curator, the team’s open-source library for synthetic-data generation.
Reliable evaluation is what makes recipe selection possible. Without a stable measure of whether a student improved, changes to sources, filters, or teachers become difficult to distinguish from noise. Evalchemy supports the team’s evaluations, including sharding and parallelism.
Small evaluation sets particularly need repeated sampling. Marten reports evaluating AIME’s 30 questions ten times and averaging the results to compare data strategies. Repetition does not add new problems, but it reduces the influence of a single stochastic attempt on the estimated score. The goal is a less noisy signal for deciding which recipe deserves the next training run.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
A specialized student can surpass its teacher
Distillation is often treated as a way to approach a teacher’s performance, with RL reserved for exceeding it. The legal-domain experiment provides a narrower but useful counterexample: classification of Supreme Court decisions, specifically opinion ideology in the paper.
The procedure was straightforward:
- Collect 2,000 unique questions.
- Sample five teacher answers per question.
- Verify the answers and discard incorrect responses.
- Fine-tune a 7B student on the retained examples.
Here, verification mattered. The resulting student surpassed DeepSeek-R1 on the reported Supreme Court classification task. This is task-specific superiority, not a claim that the student became a generally stronger reasoning model. It also gives a concrete reason to retest the general recipe’s negative findings when moving into a specialized domain.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
The released artifacts
The prepared talk closes by handing over the materials needed to investigate the recipe: the paper, model weights, datasets, and code for data generation and evaluation. The released artifacts include the OpenThoughts3-1.2M dataset, OpenThinker3-7B weights, and the OpenThoughts data curation repository. OpenThoughts names the data project; OpenThinker names the trained model.
Marten credits a large team’s work over several months. The presentation’s closing QR code leads to a tweet collecting the project links, giving the audience a route from the results to the underlying work.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
How ordinary SFT teaches longer reasoning
The first audience question asks what separates this training from regular supervised fine-tuning. Marten’s answer is direct: “This is just regular SFT.” The distinction lies in the training examples, not a special replacement for the supervised training procedure.
The follow-up asks how ordinary SFT can teach a model to think for longer. The supervised answers contain the thinking traces as well as the final outputs. Learning to generate those answers teaches the student to use its context window for a long reasoning sequence. The format itself is learnable through imitation; no separate mechanism for extended thinking is introduced in this explanation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
What makes a good teacher—and can a trace be repaired?
Why did the smaller QwQ-32B make a better teacher than DeepSeek-R1? The experiments establish the student outcome, but not its cause. Marten points to differences in reasoning-trace length distributions. Possible explanations include using more of the context window, producing more tokens or reasoning steps, and providing better-formatted responses. These remain hypotheses rather than a demonstrated account of the teacher advantage.
The team also tried Claude as a teacher and obtained poor results despite its strength as a model. Marten does not identify the version or give detailed comparison conditions, so the observation applies to that tested teacher, not the entire model family. What makes a response easy for a student to learn from remains an open research question.
The final question asks whether the project can identify the exact step where a reasoning chain goes wrong. It did not perform that fine-grained failure analysis. Marten points to literature on critical failure steps, then describes possible extensions: detect and intervene on erroneous steps during evaluation, or rewrite traces while creating the training dataset.
Those possibilities should not be confused with demonstrated improvements. The reasoning-trace modifications the team actually tried were not helpful. The talk ends with that boundary intact: selecting questions, sampling teachers, and evaluating students produced a useful recipe, while locating and repairing failures inside the traces still leaves substantial work to do.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
Original paper with recipe ablations and specialized legal-task results.
Project code and links to released reasoning datasets and models.
Released reasoning examples for supervised fine-tuning.
Model weights and usage information for the OpenThoughts3-trained student.
Synthetic-data generation library with structured-output examples.
Evaluation framework for language models and reasoning benchmarks.
Further reading
Release-time summary of the data recipe, findings and benchmark results.
Original account of R1's SFT, reinforcement learning and small-model distillation stages.
Read the complete timestamped transcript
- 0:00
[upbeat music] Yeah, I'm Ryan.
- 0:16
I'm a founding engineer at Bespoke Labs, and today I'm gonna talk to you about OpenThoughts, which is our project to create the best open source reasoning datasets. And I'll be switching tack a little bit from our earlier discussions on reasoning and RL, and focus on the reasoning part, and you'll see why.
- 0:35
So just so we're on the same page, we've talked a lot about reasoning, but what's actually going on here? So I like this graph from Jason, which shows this incredible performance that's happened in the last several months, where models are getting much, much, much better on certain benchmarks.
- 0:52
Um, and if you look at that, this is reasoning, this is test-time scaling. I think everyone here is quite familiar with this, and it seems that certain tasks like AIME, which are competitive math problems, really respond to models when they're able to think step by step and do these long chain-of-thoughts.
- 1:11
Um, so let's go back to DeepSeek-R1. Now, DeepSeek-R1 was really impressive for a lot of people for a lot of reasons, and RL was a big part of that.
- 1:21
But I was also particularly interested because DeepSeek-R1, at the end of the day, is an SFT model. So the final weights that they've released are actually from DeepSeek-V3-Base, which is fine-tuned on 800K SFT examples, 600K of which are reasoning.
- 1:40
Of course, you can see here that RL was a, a big part of it, and RL was used heavily to create that model which generated this data. Um, but at the end, it was SFT and a little bit of RL for alignment.
- 1:53
So this is really interesting and surprising. The other thing that was really interesting and surprising to us was these small reasoning models that DeepSeek released, which were incredibly strong.
- 2:03
Um, and this for us was a, a huge motivation, a huge motivation to try to do this ourselves. And why is that interesting? Because if we go back to here, none-- no a-additional detail was really given on these datasets here.
- 2:19
So if you wanna create strong reasoning models, we now sort of have a training recipe, but we don't have the data recipe. That's the missing link. Okay. I want to also include a slide here on why is it interesting to train your own reasoning models.
- 2:35
So, uh, I'm partially taking this from Amir's talk yesterday on open source and enterprise, which I really liked. But there's these main points: performance, privacy, speed and cost, and then ownership and destiny.
- 2:46
I think, um, using reasoning is a, is a great tool to solve a problem, and you shouldn't lim-limit yourself in your toolbox if you're trying to solve a specific domain task.
- 2:59
So, uh, as we talked about before, RL is a great tool in this toolbox to tackle, to tackle reasoning tasks, but we're gonna see here that SFT is, as Nathan put this morning, extremely easy and extremely effective.
- 3:12
Okay, great. Now, the missing link. How do we actually solve for this, this reasoning data recipe? There's all these questions that we had when we started. How much data do you really need?
- 3:24
What data creation steps are necessary? What are the optimal choices for each step in that data creation pipeline? And then how do you even go about figuring all this out?
- 3:35
And this, this is the meat of the OpenThoughts project. So today, we're excited to announce OpenThoughts 3, which is hot off the presses, just came out two hours ago, which is our latest and greatest version of our reasoning datasets.
- 3:48
And yeah. [laughs] [audience applauding] Thank you. And now we-- this is the state-of-the-art reasoning dataset recipe.
- 4:01
So you can see here, these graphs are showing accuracy on three of these reasoning benchmarks: AIME, which is competitive math; LiveCodeBench is competitive code; and GPQA Diamond, which is our science questions.
- 4:13
Um, on the Y-axis, you see accuracy is going up. Uh, on the X-axis, you see the data scale is going up. So we, we heard before that scaling is difficult, particularly difficult with RL.
- 4:25
The good news is for SFT, scaling is quite easier. Um, you can see here we compare to other open reasoning datasets. So Nemotron Nano. NVIDIA released this great model, Nemotron Nano.
- 4:36
It's a AP model, and they also released the dataset to train on it. So we compared directly by training on the same base model between our dataset, which is our dataset recipe, and the Nemotron Nano data, which is the NVIDIA recipe.
- 4:49
And you can see here there's a significant gap. So we, we shifted this scaling curve upwards.
- 4:55
Great. So the-- Yeah, this is the state-of-the-art 7B open data reasoning model. You can see we've had-- we have measured across the domains of interest, so science, code, and math, and then a couple held-out benchmarks.
- 5:09
So our original goal was to, to reproduce, to find the missing link for the DeepSeek Distill models. And you can see here we've crushed that goal. So we're, we're significantly outperforming the DeepSeek-R1 Qwen 7B model, which we started off trying to reproduce.
- 5:26
And then compared to the Nemotron Nano model, which is trained on a different base model, um, we are also outperforming on some benchmarks and similarly competitive on some others.
- 5:37
So okay, let's actually talk about how we achieve this. This is the interesting part for you. So if we go back to the scaling graph, you can see, um, once again on the X-axis, we're scaling dataset size.
- 5:49
So, uh, this is a, a, a huge method to in-increase accuracy, and the thing here is it gets more and more expensive. Exponentially, it gets more expensive as you keep going.
- 6:01
Um- And then, uh, um, vertically, you can see that we've shifted this, the scaling curve up. So this is what I was talking about before. This is the improving the dataset recipe.
- 6:11
So given a fixed dataset recipe, you can always scale it larger and you can always have higher performance. But, um, if you wanna push your performance to ax- absolute maximum, the real question is: How do I create the best dataset, and therefore, what is the best recipe for the dataset?
- 6:27
Okay. So, uh, en-enough teasing here. Let's go, let's go into the meat of it. So this is, this is how we approach this problem.
- 6:36
We broke down the dataset pipeline into sourcing questions, mixing different sources of questions, filtering those questions, filtering out the high- highest quality questions, generating answers with a teacher model, so that's distillation, and then filtering out bad answers.
- 6:52
Um, and, and lastly, at the end of this entire experimentation, we looked at what, what are the best teacher models? Which, which teacher model should we select? So through this entire pipeline, we've, we've come down to this final dataset recipe.
- 7:04
Now, this was a ton of work. This is a screenshot of our, our Hugging Face page. So you can see, created over five thousand datasets and almost three thousand models.
- 7:13
Um, for this project, it was only around a thousand experiments, but just to give you an idea of how rigorously we looked at the different decisions in each of these steps of the pipeline.
- 7:23
And also, I think this is interesting because it, it peels back the curtain a little bit on maybe what the frontier labs are doing. Uh, finding signal at the smallest scale possible and trying out as many things as possible and empirically choosing the best, and then scaling.
- 7:39
And often sometimes when you scale, you see, okay, what was the best of the small scale doesn't actually work. But if you're lucky, um, and you've done good science, then you'll, you'll-- your YOLO run will be the best possible, right?
- 7:54
Okay. So these are the, the key learnings that we had from our dataset recipe and, and this is what you can take away.
- 8:02
So the first thing is that pretty surprising, sampling multiple answers, so multiple reasoning traces per question in your dataset works really, really well. Um, the, the performance does not go down at a fixed scale if you take a fixed scale of questions, say thirty k questions, um, or so thirty, thirty k examples, and of those, you-- if
- 8:25
you take just thirty k questions and you only sample once per question, that performs pretty similarly to, um, if you took one sixteenth, so thirty k over sixteen, and then for each, you sampled sixteen times, which is quite cool.
- 8:41
So this allows you-- This is really cool 'cause this allows you to scale by sixteen x, which is more than an order of magnitude. And if you remember the graph from before, that corresponds to a pretty large increase in accuracy.
- 8:52
But the other surprising thing that we found was that a better model in terms of its own performance on evaluation benchmarks does not necessarily mean it's a better teacher model.
- 9:03
I think a good way to think about this is a brilliant researcher who's maybe a terrible lecturer, right? [laughs]
- 9:10
Um, we found specifically Qwen-32B was a stronger teacher model than DeepSeek-R1. So we switched to that in our, in our recipe, even though previously everyone has been using R1.
- 9:23
We also found that the syn-- the sources of data that had synthetic questions were actually quite good. Um, some of the top sources that we selected were entirely synthetic and better than sources, say, that scraped from forums or had humans manually write things.
- 9:39
And this is also really good news because synthetic question generation is scalable. So once again, we go back to the x-axis and we can push even further, which is, is accuracy boost.
- 9:51
So question filtering also works well. Here we, we filtered questions by having-- asking a language model how difficult is this question, and then taking only the hardest questions.
- 10:05
We also had a language model try to answer that question and looked at the length of that answer. So these are sort of proxies for the same thing. You can imagine that if a problem is a lot harder, then a language model will think more and it will produce more text, so its, its answer will be longer.
- 10:22
And these things worked better than embeddings-based approaches or fast text classifiers, which is interesting as so much that those, those approaches were typical for pre-training. So it seems that the, the filtering for data in post-training is quite different than pre-training.
- 10:39
Okay, some things that didn't work that were also quite interesting. Uh, through our experiments, we saw that choosing a smaller number of high-quality sources was much better than trying to optimize for diversity by going for a larger number of sources.
- 10:50
That's very counterintuitive, right? You'd think, "Okay, I'm always gonna go for, for higher diversity," but this is actually not what we saw. Um, the last thing we-- it was interesting is that people talk a lot about, um, verification, which is obviously very important for RL, and we actually see for SFT and distillation, it didn't seem that filtering
- 11:08
based off of the answer or verifying the answer really helped at all. This was quite surprising. Um, and I think there's, there's some, some good research in the literature about maybe why this is because if you have the, the hardest problem, it might be still helpful even if you have an incorrect answer to that hardest problem, um,
- 11:27
keeping it in and s- and seeing how the teacher model attempts. It's not just the final output that matters.
- 11:34
Okay, great. Okay, so this is-- those are all, like, the amazing learnings that we had for OpenThoughts 3, which super excited to share. But now you're probably thinking, "Okay, they've, they've done a thousand experiments.
- 11:44
I don't wanna do a thousand experiments. I still wanna create reasoning models. Uh, how do I adapt this if I wanna create specialized reasoning models?" Um, so I guess the first thing I would say is Be aware that based off of your domain, these exact choices might be a little bit different.
- 12:00
I would suggest, okay, start with our recipe and then iterate on it. If you have, um, capacity and compute, try a couple different choices for each step in the pipeline.
- 12:08
And I think a good example of this is we studied each step in the pipeline differently by domain. So we studied it distinctly for code, science, and math. And we saw, for example, in the question filtering, which I talked about before, um, using difficulty labels worked well for code questions, but for math and science, it was a
- 12:28
response length. And if you think about that for a second, it makes a little-- it makes sense because the response length for coding questions are very different, right? For, for, um, AIME math, it's literally just a number between zero to thousand.
- 12:41
So the, the answer is not-- it's not considering a, a large portion of the length. But you can imagine there's very simple coding questions in which the answer is still a lot of lines of code.
- 12:51
Um, so yeah, this is one thing to be aware of. The other thing which I talked about previously is synthetic question generation. Because it works so well, um, and if, if your specialized domain, if you're-- if you don't have a lot of data for your particular problem, then, uh, go ahead, transform that existing data into questions, expand
- 13:09
it, um, throw those as, as in-context examples, and just-- and generate more data. So yeah, we built an open source library for this. It's called Curator, and you can, you can try that out.
- 13:20
And then lastly, I feel like everyone says this, but it can't be said enough. Like, the, the evaluation is paramount. If you don't know how well your models are doing or improving, then you cannot make good principled decisions about your dataset recipe.
- 13:33
Um, we spent a lot of time on this. We also have this open source library on GitHub called Eval alchemy, uh, which takes a ca- takes care of this and also takes care of the, um, sharding and parallelism.
- 13:45
And, and the key thing here is for very small evaluation sets, if you, if you only have a handful of questions, you should run your model on those evaluation sets many times in average.
- 13:55
So going back again to AIME competitive math questions, there's only thirty per year. So, uh, for our evaluations, we gave the model those thirty questions ten times, and then we averaged to get the, the f- the final signal to determine, um, which data strategies were working better than others 'cause otherwise there's too much noise.
- 14:16
Okay, this is also very, very interesting and surprising and promising for you if you're specializing.
- 14:23
It seems that you can actually surpass the teacher in some domains with distillation. This is, this is super cool. Usually, you think about only RL can push the frontier.
- 14:31
Distillation's just about catching up to the teacher. But no, that's not the case. So we have an example, it's in our paper, where, um, we looked at the legal reasoning domain, so the problem of classifying Supreme Court decisions.
- 14:45
And what we did is we took two K unique questions, we sampled five answers per question, and then we did do verification here, which, which did matter. So we threw away any questions, any answers that were incorrect.
- 15:00
Um, and when you fine-tune the 7B model, it surpasses R1, which is a very strong reasoning model and also a very huge reasoning model. So this is very exciting, and there's a lot more, um, research and also application to be done here.
- 15:16
Okay, cool. So everything's open. It's OpenThoughts, and OpenThoughts means open. Go out and build. We have all of our, um, we've got our detailed paper. It's just out this morning.
- 15:27
We've got the weights dataset. Uh, we have a ton of repos, uh, for code, for data generation, for evaluation, and synthetic data.
- 15:36
So check those out. Um, this is, this is the team. It was a huge group of people, uh, a lot of work over many months. Uh, I think we're all very proud of what we did, but there's lots of people to recognize here.
- 15:47
If you, uh, scan that QR code, it goes to the tweet, and everything, uh, about the OpenThoughts project is linked in from there. Yeah. Thank you. [audience applauding]
- 16:02
All right. Thank you so much, Ryan. Um, that was fascinating. Looks like we're already getting-- We have at least one question lined up. Again, we have time for maybe a couple of questions.
- 16:11
So if you have questions, um, please, uh, line up and, and we'll do it. Um, actually, before we get to those questions, I will say as people are leaving, um, we are gonna be back here at two o'clock.
- 16:23
We've got an excellent afternoon planned on this track. We've got Nathan Lambert. Um, we've got the, uh, we've got Christian Seide, who's the co-founder of X. Um, and it's gonna be a really great track at two o'clock back in this room.
- 16:34
Also, one more thing, if you do have questions for any of the speakers from this morning, um, hopefully they're gonna be able to stick around. Don't let them go to lunch.
- 16:40
They're gonna be-- They're, they're sitting up here at the front, so swarm them as soon as we're done. But for now, let's, uh, let's get a couple questions for, uh, for...
- 16:46
Go ahead. Um, yes. Over there.
- 16:48
Uh, thank you. Great talk. So, uh, two questions. One is, um, if you're just using SFT on this data, what's the difference between this and regular SFT?
- 16:57
This is just regular SFT.
- 16:58
Oh.
- 16:59
Yeah.
- 16:59
Oh, okay. So then how is regular SFT able to make the models, like, think longer? Because I thought for the reasoning models, they have, like, this thinking block, and they think-
- 17:08
Yes
- 17:08
... for, you know, hours and minutes and-
- 17:10
Exactly.
- 17:10
So how do you, how do you-- how does F- SFT make it think for hours?
- 17:14
So you're, you're doing supervised fine-tuning on the questions, and the answers also contain the thinking. So the model learns to use its context window and produce these long thinking traces.
- 17:24
So i-it can do this, people call SFT imitation, um, but it, it can learn to learn this format in the same way. Yeah.
- 17:32
Thanks.
- 17:33
All right, we'll take one from this side.
- 17:35
Um, great presentation, Ryan. Uh, one question. Uh, why do you think, um, a smaller model like Qwen 32B was a better teacher than a DeepSeek-R1? What was your insight in-
- 17:48
Yeah
- 17:48
... figuring out that, like, a good professor makes a bad lecturer?
- 17:52
Yeah, that's a great question. Um, I think this is something we need to investigate more, but you can see that- Uh, when you look at charts of the length of reasoning traces, you can see the distributions are different.
- 18:04
So, uh, it might be the case that you're using more of your context window, using more tokens, more steps. It also might be the case that you just have, uh, a better formatted response, better output.
- 18:14
Um, this is like an- another o- great open research, research question. I- interesting, I'll also say on this point, we also tried Claude as a teacher, which is like a very- is a good strong model, and it was just a terrible teacher.
- 18:25
Um, so there's the, it, it, yeah, it's interesting what can s- what actually creates a good teacher. Yeah.
- 18:31
All right, we'll take one more very brief question from this side, and then those of you still waiting on questions, um, after, uh, after we have closed this up, swarm in.
- 18:39
So- so, um, great talk, Ryan. Um, we're doing similar kind of thing, but I just had a question. Do you guys have any like pattern map as to in the reasoning chain of thought when things don't work, at what level, you know, in the eval do you find out that things are not working or do, it's not
- 18:56
reasoning correctly? Is there a pattern map or something that you have in your open source wrap?
- 19:01
Is, sorry, I didn't catch that. Is there a-
- 19:03
So if there are five steps of reasoning-
- 19:04
Yes
- 19:05
... to reach a final conclusion, uh, at what step does the reasoning go awry?
- 19:09
Yeah, this is, this is a great question. We don't do this fine grain analysis, but there is a ton in the literature about this, um, where, yeah, there's a sort of critical step where it get, gets things wrong.
- 19:19
Um, there, w- we did like the simplest thing possible, right? You could also go in and try to do more complicated things, um, at evaluation time where you're doing interventions to, uh, maybe detect steps that have gone awry and, and, and change.
- 19:35
Or you can do this in the, when you're creating the data set. So you could potentially rewrite things. But everything that we tried in terms of like messing with the reasoning trace, it wasn't helpful.
- 19:46
Um, so yeah, I think there's still more to explore there. There's like, this is really just the start of everything in reasoning. [upbeat music]