[BidClub_]
Latent Space · · 52 分钟

[直播] Anthropic 蒸馏与模型作弊:SWE-Bench 已死 | Nathan Lambert & Sebastian Raschka

Nathan LambertSebastian Raschka

播客
TL;DR
  • Anthropic 对蒸馏的警告,已将前沿 API 访问变成地缘政治与能力控制问题。 Nathan Lambert 认为,受 GPU 约束的中国实验室“显然应该这么做”:购买 Claude 输出,比在内部生成可比质量的合成数据更容易;而 Anthropic 将分布式采集称为“攻击”。服务条款主要赋予供应商终止访问的权利,但如果重新加强执行,供应商可能会把最强模型留在产品内,或限制高端 API 的访问。
  • 执行难点在于认识论:API 运行期间,评测与蒸馏看起来完全一样。 Sebastian Raschka 用了基本相同的循环来跑 MATH-500、一个包含12,000个样本的数学数据集,以及通过 OpenRouter 调用 DeepSeek V3.2 的书籍实验;只有在事后保存输出并用于训练,行为才会显出差别。请求量、重复程度和主题分布,可能在数万或数十万次请求时暴露采集行为,但合法基准测试会把问题运行3到5次,生产环境的聊天机器人也会产生巨大流量,由此形成令人不适的隐私权衡。
  • Anthropic 的证据高度依赖时间窗口,尤其是 MiniMax 与 DeepSeek 流量之间的差距。 swyx 注意到,Opus 4.6 发布后,MiniMax 几乎将一半流量切换过去,这与 MiniMax 2.5 正在训练的判断一致;DeepSeek 约150,000次交互,可能对应另一段训练窗口。如果不知道请求发生在4周还是6个月内,Nathan 认为 Anthropic 强调 DeepSeek 部分也是一种传播策略:它是“美国人唯一知道的中国 AI 名字”。
  • 蒸馏数据并非天然有价值,教师模型必须适配学生模型。 Nathan 表示,Qwen-dense 模型往往比更强的前沿系统更适合教会 Qwen 类开源模型,而 GPT-OSS 也是一个出人意料的好教师模型:“你有了这些数据,不代表它真的会让你的模型变得更好。” 实验室需要先证明 Claude 数据能够产生有效信号,再决定是否付费提取1,000亿个 token,尤其是在大模型生成速度约为每秒40个 token 的情况下。
  • API 可能不如围绕 API 构建的产品构成有效护城河。 Nathan 称 API 市场“竞争惨烈”,并认为如果 Anthropic 真担心蒸馏,可能会把最强模型直接放进 Claude Code,而不向市场广泛提供;Sebastian 则反驳称,聊天机器人、OpenClaw 工作负载,以及超出订阅额度的用户,都会创造规模可观的非补贴 token 生意。swyx 认为 Anthropic 有“Apple 的感觉”,同时称 OpenAI 的领导层由于理想主义和原则,不太可能把模型锁在产品背后——尽管据报道,最近3个 GPT-5 Codex 变体都曾获得2到4周的产品独占窗口。
  • SWE-bench Verified 已无法区分前沿编码模型,因为饱和度与任务缺陷共同淹没了有效信号。 分数集中在80多分,而重复运行的噪声约为0.5到1分,因此发布版本之间微小的提升“显然是胡扯”。OpenAI 后续审计发现,剩余顽固任务中有59%按原题无法解决;其中一个任务暗中要求精确使用字符串 get_annotation,使记忆原答案成为唯一可靠路径。
  • 下一轮评测的成本会实质性上升,隐私性也会更强。 GPT-5 使用了更晚版本 Django 的知识,而 Gemini Flash 和 Opus 仅凭任务 ID 就能复原题目与解法,这说明公开 GitHub 基准会污染模型,即使不存在蓄意作弊。SWE-bench Pro 增加了更新的任务、私有/公开拆分、更多仓库和语言,但嘉宾预计前沿评测的成本将达到数百万美元,之后可能上升至“数千万乃至数亿美元”,具备规模优势的实验室和数据供应商将因此受益。
摘要 · 为研究而整理的核心内容

1. Anthropic 将普通蒸馏升级为战略访问权之争

  • Sebastian 先区分了经典蒸馏与今天更宽泛的 LLM 实践:前者是用大教师模型的 logits 训练更小的模型,后者则是收集模型生成的答案,再用这些答案做监督微调。他以 DeepSeek R1 为例,节目中称其拥有67.1亿参数,并据此生成约10亿和30亿参数的变体;在创建紧凑模型时,“大家都这么做”。

  • Nathan 将这一机制延伸到前沿系统:实验室可以借助类似 Claude Opus 的模型来构建相关模型,而内部团队拥有的工具比 API 客户更丰富。争议并不始于实验室蒸馏自己的旗舰模型,而是始于教师模型属于竞争对手。

  • Nathan 的地缘政治判断非常明确:面对严重 GPU 短缺的中国实验室,“显然应该这么做”,因为通过 API 购买合成数据,比自行生成更容易。Anthropic 将分布式采集称为“攻击”,与其更广泛的 AI 竞争叙事一致。

  • 前沿模型供应商长期禁止使用 API 输出训练竞争模型。Nathan 认为,服务条款本质上是访问规则——供应商可以切断违规者的访问——而不是对下游实际发生什么的证明。围绕早期 Alpaca 式研究的担忧大多已经消退;ByteDance 可能曾遭遇过类似断供,但竞争焦虑正在重新点燃这一问题。

2. 检测需要监控行为,而不是证明模型已被训练

  • Sebastian 的质疑非常实际:他的评测脚本与蒸馏脚本几乎完全相同。两者都会提交问题、收集答案,并遍历一个数据集;他提到 MATH-500、另一个包含12,000个样本的数学数据集,以及通过 OpenRouter 调用 DeepSeek V3.2 的实验。请求过程本身无法揭示这些答案之后是否会被用于训练。

  • Nathan 首先提出的区分标准是规模。普通评测可能只运行1次,但随机性基准会把相同问题重复运行3到5次;当请求达到数万或数十万次时,再将其解释为评测就越来越牵强。通过分布式、受速率限制的账户进行工业化提取,会制造更明显的重复模式。

  • Sebastian 的反驳值得保留:合法用途的规模同样可能很大。企业聊天机器人可以产生海量流量,严肃的评测套件也可能覆盖大量基准。供应商或许能区分广泛分布的蒸馏数据与狭窄的数学或客服流量,但这意味着要检查客户生成的内容:“这多少有点奇怪”,即使用户也不应默认互联网上托管的 LLM 流量是私密的。

  • Nathan 澄清称,执行行动并非始于中国:Anthropic 早已阻止 OpenAI 和 xAI 使用其模型,并且可能明确指控 xAI 进行蒸馏。中国实验室的帖子仍是影响最大的升级,因为它公开将账户行为与地缘政治联系起来。

3. 没有时间维度,Anthropic 的流量总量说明不了太多

  • Nathan 称这篇帖子“在某种意义上是政治性的——也许不算政治”,意思是它的目的在于传达更大的观点,而不是完整解释底层测量结果。他最尖锐的怀疑是:DeepSeek 之所以被点名,是因为它是“美国人唯一知道的中国 AI 名字”,尽管检测到的活动规模要小得多。

  • swyx 对 MiniMax 2.5 的判断集中在时间点上。MiniMax 似乎正在进行蒸馏时,Anthropic 发布了 Opus 4.6,并观察到近一半流量切换至新模型——这是同一条流水线在寻找最新教师模型的异常清晰信号。

  • 缺失的时间窗口是关键变量。报告中的调用究竟发生在4周还是6个月内,会彻底改变解读,尤其是如果 DeepSeek 在约1年前训练 V3.1 和 V3.2。账户受到速率限制且持续更换时,数百万次交互需要相当长的时间。

  • Sebastian 提出,MiniMax 的架构可能只有 DeepSeek 的约1/3大小、速度更快;他认为 MiniMax 可能使用了分组查询注意力,而不是 MLA 或 DeepSeek Sparse Attention,这或许能解释使用差异;他也提到免费层的可能性。Nathan 否定了10倍或3倍效率差异的解释——“我可以保证不是这样”——但承认 DeepSeek 早期找到正确研究思路或数据的可能性很小。他的默认判断更简单:大多数实验室都会测试可用 API,把不同教师模型接入同一条流水线,然后保留能提升性能的消融结果。

4. 最强模型未必是最好的教师模型

  • Nathan 的核心技术限定是,教师模型的质量具有相对性。Qwen-dense 模型往往特别适合教开源权重学生模型,因为很多学生本身就是 Qwen 模型,或已经变得类似 Qwen;OLMo 也能有效学习 Qwen 的输出。GPT-OSS 也出人意料地是一个好教师模型。

  • 将同样的提示扩展到 GLM-4.7、更大的 DeepSeek 模型或最新的 Qwen MoE,并不保证带来提升。可能的机制是教师模型的 token 概率与学生模型的基础分布之间存在兼容性;采样设置同样重要:“你有了这些数据,不代表它真的会让你的模型变得更好。”

  • Sebastian 也独立观察到,同系列蒸馏的效果更好。强得多的模型,可能在风格上差异过大,或与学生模型预训练中接触到的问答分布相去甚远。他还保留了新旧方法的区别:真正的 logits 蒸馏在开放权重模型上可行,而 Claude 和 OpenAI 只暴露有限的 top-token 信息;Nathan 澄清称,OLMo 使用的是生成 token,而不是 logits。

  • 数量本身也带来权衡。以约每秒40个 token 的速度生成1,000亿个 token 非常缓慢,因此中等规模教师模型可能比最强前沿模型更快交付可用数据。这使得数据数量与质量成为流水线中独立的一项消融变量。swyx 更广泛的总结是:“你部署的模型永远不是你训练的模型。” Nathan 认同实验室可能会保留更大的内部教师模型,但他对这些实验室有多频繁专门训练 dense 模型以部署 MoE,表示“不是100%确定”。

5. 产品独占可能成为解决 API 泄漏的答案

  • Nathan 提出的激进商业判断是,前沿 API 市场“竞争惨烈”,且差异化很弱。API 更适合 Google、Azure 等传统云厂商,以及 Lambda、Nebius 等新兴基础设施供应商,而不是以产品为核心的实验室。如果 Anthropic 真的担心模型被提取,可以立即把新模型放进 Claude Code,而跳过广泛的 API 发布。

  • Sebastian 从需求侧反驳称,客服产品、超出订阅 token 限额的应用,以及 OpenClaw 工作负载,都可能需要 API。在足够大的规模下,只要推理定价仍能盈利,出售这些未获订阅补贴的 token“其实并不是一个糟糕的商业模式”。

  • swyx 的判断是,Anthropic 因为有“Apple 的感觉”,更可能关闭模型。至于 OpenAI,他不认为其会从根本上把所有东西锁在产品内,并将这种克制归因于理想主义和原则,而不是经济激励。不过,经济方向已经很明显:据报道,最近3个 GPT-5 版本都曾给 Codex 变体提供2到4周的独占窗口;Sebastian 则提醒,最新一次的时间安排也可能只是为了推广新的 Codex 应用。

6. SWE-bench Verified 死于饱和与无法解决的任务

  • swyx 追溯称,SWE-bench 源自 Princeton 一个将数千个开源 issue 与 pull request、测试配对的团队。它偏向一小批热门仓库,形成了选择偏差,但在 Devin 报告成绩后,成为第一个被广泛采用的智能体编码基准。模型表现从发布初期约13%升至约80%。

  • 与 HumanEval 式自动补全不同,SWE-bench 只提供 issue 和仓库状态,不规定修复路径。swyx 和 Nathan 猜测,OpenAI 花费了几百万美元筛选500个任务,每个任务由3名人工审核。讽刺的是,OpenAI 最初甚至无法在自己的基础设施上跑完全部500个任务,因此部分版本报告的只是“子集中的子集”,分母更小。

  • 饱和使排行榜几乎失去意义:模型成绩集中在约81%到89%之间,重复运行的波动约为0.5到1分。swyx 称微小的增量纪录“就是胡扯”。嘉宾指出,500个二元任务意味着每次只能增加0.2分;Nathan 补充称,评分标准的子分项允许更细微的变化。Sebastian 的实际比较更尖锐:MiniMax 2.5 的体感不如 GPT-5.2,但基准分数却相近。

  • 随后,OpenAI 对剩余的顽固失败任务重新审计,每个任务安排6人参与,并设置升级机制。结果发现,剩余任务中有59%按原题无法解决。swyx 举例称,其中一个任务要求隐藏测试找到精确名称 get_annotation,但提示词从未提出这一要求。嘉宾的结论是,只有记住原始答案才能稳定通过,这一缺陷反而可以作为检测污染的“蜜罐”或金丝雀。

7. 公开基准会自我污染,替代方案将更加昂贵

  • GPT-5 的思维链有时会调用更晚版本 Django 中的信息来解决旧任务。嘉宾强调,这不一定出于恶意:GitHub 训练数据可能通过代码克隆、下游单元测试、博客文章、会议演讲或对基准快照发布之后功能的文档,吸收这些基准内容。

  • OpenAI 还只给 Gemini Flash 和 Opus 一个任务 ID,模型就能“把题目和解法一股脑吐出来”。考虑到语料规模,Sebastian 认为单次运行就能记住这些内容非常惊人。他说,实验室可能已经形成了一套跨训练阶段重复利用数据的“艺术”:预训练中复用过多会造成遗忘;Nathan 则补充称,持续预训练需要重新访问部分旧数据,即使只增加约1%–2.5%的数据,也能保留惊人的细节。

  • SWE-bench Pro 以更新的日期、私有/公开拆分、更广泛的仓库和语言,以及改进后的测试重新开始。Nathan 认为,Scale AI 的动力和预算实际上近乎无限,因为优质数据对它“简直是生死攸关”。Sebastian 保持必要的怀疑:SWE-bench Verified 同样有专业审核人员,因此 Pro 的缺陷可能也要等模型达到饱和后才会暴露。

  • 私有评测可能需要受控访问——API key、协议,或服务端评分——以降低私有任务泄漏的风险。swyx 给出的成本预测是投资者最关心的终点:前沿评测可能花费数百万美元,随后升至“数千万乃至数亿美元”。编码和数学仍相对客观;计算机控制任务和主观工作可能由 GDPval 代表,更难评测,可能还需要2年时间才能建立良好的基准。

Alessio Fanelli

Thanks for coming to Sail Live number six. This is a very exciting one. I think the topics are always fun with these, whatever the topic of the day is for our little rat-racing minds trying to keep up with AI. We're welcoming the latest writer joining the Sail Coalition, so I think this just means more content for Sail. I've been a fan of swyx and a friend for a while at this point, so I'm very happy to have his content join this. I think you've been doing great stuff recently and continuing to evolve this, so welcome to the team.

swyx

Thank you, sir.

I just think this is my friends and colleagues in the AI media space, and it's great to be able to support people and keep that network closer. Welcome.

Nathan Lambert

Yeah. Well, thanks for joining us. It's a real pleasure to have you on here, Shawn, or swyx. I coincidentally listened to your podcast about the SWE-bench benchmark. Small world. Awesome to have you here.

swyx

Thanks for having me. I'm glad to be on and chat. I've never done one of these Substack Live things, so I'm curious how it works. I always think about Substack as a newsletter platform, but they want to go multimedia.

Nathan Lambert

I think the live thing, before we get to technical content, is actually good because it gives it a different edge. It's just a little bit sharper when you know you're live. I think we've all done a lot of podcasts, even podcasts that are unedited and put out later, but I think the live thing is a different element that can be tapped into nicely.

Why don't we just dive into it? We're going to start with distillation. I put “How Models Cheat” at the top so we can talk about benchmarks. I think Anthropic posted this pretty spicy blog post this week. It was essentially detailing how they found distributed distillation—quote-unquote, “attacks”—on their services from prominent Chinese labs. I'm very unsurprised with Anthropic calling it an attack. I think that fits with a lot of their branding.

Anthropic is detailing how they found distributed accounts across multiple Chinese labs building shaded LLMs. They described what they were doing and why Anthropic is concerned about this in its worldview of AI geopolitics. I think it's very interesting because I'm of the opinion that the Chinese labs obviously should do this. They're at a massive GPU shortage, and using APIs is much easier than generating synthetic data on their own.

Mm-hmm.

Nathan Lambert

I think there's a lot of—

Nathan, if I may interrupt you here, maybe we should, just for the general audience, define distillation before we dive into the details.

Nathan Lambert

Yeah.

Distillation is a broader concept. It's not a new concept that came up with LLMs; it's an older concept in machine learning in general. The idea is that you have a larger model, let it generate outputs, and train a smaller model on those outputs. The idea is that you can train the smaller model more efficiently using the larger model.

Originally, what you would do is train on the logits. Old-school machine-learning people might remember that, from deep neural networks: the logits, the outputs of the last layer, are what you usually work with to compute the loss function, the cross-entropy term. You would train on this signal.

Nowadays, in the context of LLMs, it's a bit looser, so it doesn't have to be logits that you train on. It could just be output data—synthetic data, like Nathan just said. For example, it's actually a very common practice. In DeepSeek-R1, as described in the paper, and in other companies, they would train the flagship model, the largest model, the R1 model with 6.71 billion parameters. Then they would create smaller variants—I forgot the numbers, but 1 billion and 3 billion models, in a smaller range, like these models you can run locally—and train them on the outputs of their own larger models.

This is very common practice. Everyone does that when they're producing smaller model variants. The question Nathan brought up is, what happens if you're a company and you generate this synthetic data from another company's LLM, then train your own model on it? Sorry, that was just a little interruption. Distillation, in short, is training a smaller model on the outputs of a larger model.

Nathan Lambert

Yeah. I think this is even possible at the frontier. People distill from something like Claude Opus to build clones on it. They're generally doing very similar things internally. They have different access to tools and richer tools.

All of these large labs have had terms of service for years saying that you effectively cannot use the outputs from these APIs to train something like a competitive AI model. They're vague terms. Terms of service are not a contract, essentially; you're using a service, and if the provider finds that you violate the terms, they can cut off your access. That's just a basic thing.

These terms have not been enforced much within the US. I think there was one case, maybe ByteDance a year or two ago, where OpenAI cut off their API access. But this was discussed so much right after ChatGPT, when people were building the first open models, like Alpaca and things. People wondered, “Is OpenAI going to come after us for doing these research models?” It totally died down. People were worried about this for over a year; it was kind of an inseparable discussion. So nothing really happened, and this is the first prominent reemergence of the discussion. I think it's because people are far more worried about AI competitiveness.

Sebastian Raschka

Mm-hmm. Yeah, yeah.

Nathan Lambert

I'm curious what you guys think.

Sebastian Raschka

Can we talk for a second about how they would even detect that? You said in the beginning something about a distillation attack. You didn't say that specifically, but you implicitly put quotation marks around “attack.”

How would you even detect that? Distillation in that context means literally just letting ChatGPT or Claude generate synthetic data, then collecting that synthetic data and training your own model with supervised learning—supervised fine-tuning on it. But how would a company know that this is a distillation attack versus just an evaluation? Right now, I'm actually distilling for chapter 8 of my book, but I'm doing it with open-weight models, so no worries, Anthropic. Please don't worry about it.

Nathan Lambert

I distill from API models for my job.

Sebastian Raschka

Yeah. I use OpenRouter right now and just distill from the DeepSeek V3.2 model, which I think these folks are okay with.

What I wanted to say is that when I'm evaluating models, I use basically almost the same script. When you're evaluating a model, you have the question and let the model generate the answer, right? You generate the response to your benchmark question. In my benchmarks, I have data sets from MATH-500—500 examples—and I have a bigger MATH data set of 12,000 examples. You're basically just running an API in a loop to let it generate these questions and—sorry, the answers.

But how would a company know that someone is just evaluating versus saving that data and training their own model? You see what I'm saying? It's the same process.

Nathan Lambert

I think it's a scale thing. When you're evaluating, at least with the basic evaluations, you're going to do it once and not keep doing it. There's some amount where you're not going to—I think most of it is quantity, and then they're going to look at patterns across similar accounts. That's what they're saying here.

Sebastian Raschka

Sure, sure.

Nathan Lambert

I think they're going to see really repetitive stuff.

Sebastian Raschka

Yes. I think the interesting point this leads to is that you can do evaluation at a large scale. If you're a big company and you want to know whether your LLM performs well, you have a large suite of benchmarks you're going to run.

You said maybe they're looking for patterns. One way would be, “Okay, this is a familiar question. It comes up in the benchmark, so this person is maybe not stealing our answers; they're just using it for benchmark purposes.” But then it means they're looking at what you're generating there, which is, of course, nothing is private when you're using LLMs on the internet.

Alessio Fanelli

The data is somewhere, you know, intermediately stored, but then it almost implies that they are checking what you use the LLM for and what you generate, which is kind of a sensitive topic, almost privacy-wise, right? That's an interesting point because, of course, you mentioned the terms of service, which say that you are not allowed to distill, but you're not distilling.

The point I'm trying to make is that you're not distilling live when you're on the platform. You're doing it somewhere later. You're just letting the LLM generate answers, and I find it kind of interesting that a company would look at that, even at the scale, and call you out like, “Hey, you're generating too many answers here. That's not cool,” or something. That's kind of a weird thing.

Nathan Lambert

Yeah. I wanted to respond to something a couple of sentences back, but actually, Anthropic blocked US companies first, before the Chinese companies. It has blocked both OpenAI and xAI from using the models, and I think it maybe explicitly accused xAI of distilling stuff. I don't know, but definitely not in a full blog post like this.

So this is definitely the most high-profile case. I do think it's actually pretty hard to distinguish from, “Hey, I'm just running my internal benchmark, man.” Of course, it's going to be a very high volume of a lot of the same stuff because, especially with some benchmarks, you have to run them 3–5 times—the exact same questions, right?

Mm.

Nathan Lambert

I do think that once you get into the tens of thousands or hundreds of thousands, then you're like, “Okay, you're not just running benchmarks. You're distilling this thing.”

There is a good point in the chat: how would the distribution of questions look if you were distilling? Related to your point, at a certain point, when you have a certain magnitude of answers generated, it might look suspicious.

But there are a lot of legitimate use cases. If a company uses, let's say, OpenAI or Claude API as its own chatbot and has a lot of customers, naturally a lot of answers are generated. They would probably look at distributions. Maybe you would expect a very broad distribution when you are distilling because you want to cover pretty much everything, whereas when you are running benchmarks, it's maybe more specific.

If you're running a math benchmark, it's just math. If you have a customer chatbot, it's more like customer answers. I think they would maybe analyze your distribution. I feel like this is kind of a weird thing to do. I don't know. If you're a company and you're looking into your customer privacy—the data generated—you have to expect that it's not private, of course, but it's still kind of weird that they essentially do that.

swyx

Okay, what else do we have to talk about? I think this is interesting. One thing I did was throw it into Nano Banana, which is kind of a decent visual.

Nathan Lambert

Throw it into Nano Banana 2. It's a Nano Banana 2 live pod. It just released 5 minutes ago.

This is actually Nano Banana 2. Because I'm in the early-access program, they cut you over to the new Nano Banana, and then I couldn't access the old one. I was trying to do a diff, but I couldn't because I only had access to the new Nano Banana.

Nathan Lambert

Classic. That is classic early-tester-program shit. Look at the pain we have to deal with here.

Is it interesting that DeepSeek used so much less than MiniMax? I think, Nathan, in your write-up, you had a little bit of a comment about that.

Nathan Lambert

This is a political blog post in a way. Maybe not political, but they're trying to make a point that's more about making a point than the details. The DeepSeek thing is definitely way smaller-scale.

Okay.

Nathan Lambert

I think most of the labs will experiment with all the APIs they can get access to. Data is just so important, and you're going to have a pipeline where you could sub in any API and then run an ablation to see if it gives you performance.

Yeah.

Nathan Lambert

The API is kind of free. Just do it.

Yeah.

Nathan Lambert

The millions of exchanges are a bit more of a bet. You can measure that over a longer period, and it takes a lot longer to get the data out of the API, especially when you have to spread it across a ton of accounts. These accounts are all rate-limited and have other problems. That takes longer, but this tiny one is so fast.

That was generally my point: it made it clear that Anthropic is trying to use the DeepSeek name as the only Chinese AI name that people in the US know.

Sebastian Raschka

Mm. Marketing-wise, to make it stick.

Actually, you mentioned the different APIs. I'm not sponsored by them and have no affiliation—I’ve never talked to anyone from that company—but OpenRouter, for example, is a good example. I've been using it a lot for the open-weight models because the bigger ones are too big to run locally.

What's nice is that they also offer this: it's basically just routing you through other companies' APIs, and they automatically select which one is cheapest at that point. I sometimes get some failures. I think when it switches, it might sometimes crash, but maybe that's something I have to fix in my script.

Even then, if you're distilling, you can do that from multiple providers. Of course, if you want something from ChatGPT or Claude, it's always going to go through the official one, and then it gets, I guess, suspicious. But you could also technically distill a bit through OpenRouter, through their account rather than your direct account. You can make multiple accounts, and yeah, it's kind of interesting that they track all that.

Different topic now that you called out that they call out DeepSeek, which is quite interesting.

swyx

For what it's worth, OpenRouter seems not to be using DeepSeek in most of these.

Nathan Lambert

These are free models. DeepSeek isn't free.

Yeah.

Sebastian Raschka

I see. Yeah. I'm using the paid API, I should also say. It's also nice that they show you how much it costs and the tokens per second for different providers.

If you go to the search at the top, you can look at the different DeepSeek models. This one is an older model, so maybe it only has 1 provider. But if you go to DeepSeek R1 or something, or even the normal DeepSeek V3.2, there should be multiple providers. If you scroll down, you can see different providers, different tokens per second, and different costs.

I just like that website because it's quick to use the API, and they have an OpenAI-like API. It's not sponsored or anything; I just find it generally useful. But, yeah, just a side note.

Nathan Lambert

Do you want to go back to the comparison? Did you have a high-level point to make there, swyx?

swyx

Okay, just a couple. First, I think the timing—after Moonshot released their stuff, after MiniMax released their stuff, but before DeepSeek V4—was strategic. I think that may also have factored into why MiniMax was detected more, or had a higher number.

When you collect data is very important. They found MiniMax during the training of MiniMax 2.5, which we will confirm later if we do end up doing the call with them. Obviously, the number is going to be very high because they were actively looking for it, and then they banned the MiniMax accounts and MiniMax changed its behavior.

Actually, I don't think that's exactly what happened. Sorry, let me correct myself. While MiniMax was distilling, Anthropic released Opus 4.6, and they said that they redirected nearly half their traffic. So I'm like, “Okay, very clearly, this is them, right?” This is the exact same traffic switched to a new model the moment a new model was released.

DeepSeek maybe wasn't doing that because they hadn't been working on their stuff actively. I don't know. It could be a different thing. Or DeepSeek is just way more efficient: I get all I need from 150K. You guys are so inefficient.

Nathan Lambert

Yeah.

You guys—

Nathan Lambert

It would be so interesting if we knew the timeframe of this. Are all of these API requests within the last 4 weeks? Are they within the last 6 months? That's such a different nature of what is going on.

Exactly. That's what I'm saying. DeepSeek was training DeepSeek V3.1 and V3.2 about a year ago.

Nathan Lambert

Yeah. Or, I don't know, DeepSeek OCR. I guess they said what it is, but it's not that.

Alessio Fanelli

Yeah.

Sebastian Raschka

But, scale-wise, I do think MiniMax is 3 times smaller. It's just a faster model. They don't use MLA, and they don't use DeepSeek Sparse Attention. I think it's just grouped-query attention, but it is still a pretty snappy model, so I think it's attractive to use.

And the other one, off the top of my head, I don't know—maybe they had some free tier or something like that. When the models come out, they sometimes offer free usage, and that was a more recent model than DeepSeek. I think the last one was from December, the V3.2.

Yeah. So maybe this is an irrelevant point because they were training before, and before would have the same amount of traffic, or they're just way more efficient, right? It does bring to mind, okay—

Nathan Lambert

The efficiency thing is not it. I can guarantee it. There's a small chance that they got the right research idea early and found the right data to use, but it's not that they're going to be 10× or 3× more efficient.

Okay. So it's a timing thing, or they just don't actually use it that much. I mean, you play this out: I was like, "Okay, why don't they share? They're all buddies, right? What?" And it does come to a point where, okay, let's have all of China distribute it to every citizen, and then—

Nathan Lambert

I can talk about this a little bit. There's not a lot of research, but there are a few research projects trying to understand how you use distillation data. I think SFT is the cleanest example, where you're doing this autoregressive loss on Q&A pairs.

But the strongest model is not necessarily the best teacher, and most of us in this area think it's because you have to match the probabilities of the tokens to the base model. What's happening is that Qwen dense models are the best teachers for a lot of open-weight models, and I think that's because a lot of open-weight models are either Qwen or have been Qwen-like for a while. So OLMo learned really well from Qwen, and obviously other Qwen models did.

But scaling these pipelines up to use, say, GLM-4.7, a bigger DeepSeek model, or a more recent big Qwen MoE—it's a lot harder to just generate the data from the same prompts with the right sampling settings, then do SFT on them, and actually make the numbers go up.

Interestingly, GPT-OSS is a pretty good teacher. But there's a huge gap there: just because you have this data does not mean it's actually going to make your model better. So you have to do the research to be like, "Oh, we learned that we get signal out of Claude. We need to get 100 billion tokens ASAP because it's going to just immediately make our model better."

That's not a common place to be in modeling because of this weird teacher-student dynamic going on. So I could see that being different across labs.

Sebastian Raschka

Yeah, I think it also has something to do with that. I noticed that if you're distilling the smaller model from the same model family, it performs better. And I think it's to your point that if you have a very, very strong model, it might also be too different, or the style might be too different, and then it's too much of a leap for your model to adapt. It's too different from the Q&A answers during pre-training, and so—

Ah.

Sebastian Raschka

You make a bigger leap. Another thing I wanted to say: you mentioned OLMo, and it's been a while since I read the paper, but you might know way better than I do. I think you also trained on the logits, and maybe—

Nathan Lambert

We didn't do technical distillation. We just took the tokens.

Sebastian Raschka

Oh, I see. Okay, then that was probably a different paper. I think Google does that for their Gemma models.

swyx

Yeah, they do.

Sebastian Raschka

Because there's also the distinction: you can only do that for open-weight models. If you do that for Claude or OpenAI, it would not work with the logits because they don't provide them. They only provide them for some tokens, like the top 100 or 1,000 tokens.

And so, in a sense, if you want to do the real, in quotation marks, "distillation," it's even easier to do that from open-weight models because you can control it. But then, like you said, we need 100 billion tokens ASAP. That's not an easy thing to do because even at 40 tokens per second or something for these large language models, when you generate answers, getting that many billions of tokens takes time, right?

So it's almost easier to start distilling from a medium model. It's the question of more data versus higher-quality data, right? It's also a sweet spot, an experiment in itself, in an ablation study, right?

Yeah. I like that Nathan had to call it technical distillation because it is no longer the default, even though it was the first.

Also, another fun fact: I did my Jeff Dean interview recently, and I tried to get it out of him, but he sort of dodged it a little bit. Remember, there were actually 3 sizes of Gemini models? There were Nano, Pro, and Ultra, and I was like, "Where is Ultra?"

They keep it in a basement and distill from it, right?

Sebastian Raschka

Interesting. Yeah. Maybe it's also to safeguard yourself so no one can make a copy, or for the price too, but probably both.

Yeah. I mean, I think this is how I always think of it: the model you deploy is never the model you train.

Sebastian Raschka

Mm-hmm.

Because you train the dense and then you deploy the MoE, right?

Sebastian Raschka

Mm.

You basically always do it.

Sebastian Raschka

Mm.

Nathan Lambert

Say more. Do you think they're really distilling from dense models?

I mean, I think that is the full thing. When you have unlimited resources, don't care about inference, just care about maxing intelligence—why not?

Nathan Lambert

Yeah. I'm not 100% sure. I think the MoEs just give you a FLOP. I don't know if that's actually how I think of the gains of MoE when you have a really good MoE architecture. But I do think that they have bigger models that they distill from.

And they train internal models differently from external ones because the external models have been getting a lot smaller, which is kind of a weird thing. We don't have a good way to measure it. Maybe Dylan will reverse-engineer it in Inference Max, whatever the heck.

Sebastian Raschka

But I'm always suspicious of these things. It's really a capacity thing too: how many people use the model at the same time, the hardware, how much is allocated. It's a rule of thumb, but it's really tricky, I think. It's really hard to say anything from these numbers.

Nathan Lambert

I do think they might start restricting models that will only be in products and not be in the API. I think the whole API business is brutally competitive, and I don't have a good sense of what its defensibility is.

I think it makes sense for something like Google, Azure, or any existing cloud businesses to have APIs, so that's kind of a more natural transition. But the Anthropic and OpenAI API—the transition from their products, which are their big differentiation, whether it's ChatGPT, Claude Code, or Codex—you don't get people to go use the API from that.

And I think you get a lot of people who are already spending on cloud who then go to use the APIs, which is why Lambda and Nebius are going to have these API products. But isn't it that if Claude's really worried about distillation, they should put the model release in Claude Code ASAP and then just not bother with the API?

I don't know when that'll happen, but it could.

Sebastian Raschka

I do think, though, it's a big customer base, the API customer base. Any type of product that's built with LLMs, like customer-chatbot types of things. But more generally, I do think the problem is—I don't know exactly how the plans work in Claude, but you would reach a token max where you can only get so much with your subscription. You can, I think, buy more tokens, but I think it's just easier with the API at a certain scale.

Sebastian Raschka

Also, the whole OpenClaw customer base, right? They don’t allow the plan anymore in the OpenClaw context, so you have to use the API. Given how many tokens OpenClaw generates, it’s actually not a bad business if you don’t lose money on these tokens. If you sell it at a nonsubsidized price, I do think the API is actually not a bad business model.

Yeah.

Nathan Lambert

Do you want to take a side? Do you want to try to break the tie? I’m obviously being provocative.

Yeah.

Nathan Lambert

I don’t really know.

Yeah, yeah.

Nathan Lambert

But I could see it. Anthropic gives me Apple vibes.

I mean, Anthropic has a higher chance of doing this, yes. OpenAI, just because I’ve talked to the people so much, I just don’t super believe that they will have locked models to products, only out of, I guess, idealism and sort of principles rather than economic incentive. Economic incentive would agree with you that they should have private models for products.

Recently, they’ve done this, right? The last 3 GPT-5s all had Codex variants that were 2 to 4 weeks ahead, released only inside Codex rather than as an API.

Sebastian Raschka

Hmm.

But, just constitutionally, I don’t think the people who run these things believe in locking things behind APIs because they have such a huge market anyway. They kind of don’t care, and if you’re genuinely sort of a zealot—if you’re not trying to maximize the value of your company and are genuinely just trying to spread AGI everywhere—then you release the API because you just don’t know what people are going to build with it.

Nathan Lambert

Yeah.

Sebastian Raschka

One more thing, though, with the Codex thing. We’ll have to see next time, because I think this time it might also be a bit biased toward releasing it in Codex because they almost released it simultaneously with the app that they want to promote at the moment. So it could have been more like they did that so that anyone checks out the app. But we’ll see next time.

Yeah. But there’s always a 2- to 4-week exclusive window.

Sebastian Raschka

Yeah.

And that’s their right.

Sebastian Raschka

Yeah, sure.

If you want to promote Codex, it’s pretty effective.

Sebastian Raschka

Yep.

We have a bunch of questions in the chat about other topics. Do we want to cover benchmarks and then this thing, or—

Nathan Lambert

Go right ahead.

What do you want to do? It’s your Substack. I don’t know.

Nathan Lambert

Oh, no. Oh, man. It’s a collective.

It’s a collective.

Nathan Lambert

You should just dive into what you’re interested in. Go for it.

Sebastian was interested in the SWE-bench stuff. This past week, SWE-bench Verified died—officially.

Nathan Lambert

Wait. What do you mean by this?

Sebastian Raschka

Yeah, let’s define SWE-bench first, maybe.

Okay. I happen to have the post on this. Let me remember.

Sebastian Raschka

So the broader topic, the umbrella topic here, is how we compare which LLM is currently the best LLM. One of the ways would be SWE-bench, basically. But I’ll let you explain, because you had this brilliant podcast—or article.

Where do you want me to start? Should we just define SWE-bench, I guess?

Sebastian Raschka

I guess, yeah.

All right.

Sebastian Raschka

So basically, it is a coding benchmark.

Yes.

Sebastian Raschka

SWE-bench is a popular way to compare the capabilities of LLMs, and then there is SWE-bench Verified. Maybe you should talk a bit more about SWE-bench first.

SWE-bench was a paper out of Princeton, from Ofir Press’s group. They do a lot of good code-benchmarking work. They drew thousands of example open-source issues and the pull requests that closed those issues. There’s a bit of selection bias here because they only focus on popular open source, and only a small number of popular open-source projects, but a large number of issues from those projects.

They dredged up some passing tests and some failing tests that you need to make pass in order to get the score. When it launched, it was kind of obscure. Devin was actually the first one to pick it as a benchmark to report. I think at launch it was 13%, and now everyone’s at 80% or something like that. SWE-bench, because it was done on a student budget, was very—let’s call it—sloppy.

Nathan Lambert

Terminal-Bench is like this now, too. They’re just aggregating. It’s hard to do a benchmark that is well-calibrated across topics and difficulty.

Yeah. It is hard. For the small group that is watching, I’m actually working on it with Cognition to launch a new benchmark here.

OpenAI was like, “Okay, guys, SWE-bench is taking off. We’re going to adopt this, but we refuse to abide by the full SWE-bench. We’re just going to curate a 500-example subset of the original SWE-bench.” They actually hired humans to vet each task. I think it’s somewhere inside this blog post, but basically, they hired 3 humans for every task to vet whether the task was high quality or not, because there’s a lot of slop in there. They said, “Okay, this is the 500 that we’re going to endorse.”

Sebastian Raschka

So it’s a curated subset of SWE-bench with 500, let’s say, challenging problems that are supposedly well-defined.

Yeah. What’s really funny is that at launch—this was launched in 2024—OpenAI could not run all 500 of its own tasks. For a while, there were a few releases from OpenAI that reported on a subset of the subset because they couldn’t run it on their eval infrastructure. Their numbers were higher because their denominator was lower, which is very funny.

Sebastian Raschka

Maybe in that context, we should say what SWE-bench looks like. I think it’s basically code that has bugs in it, and usually the task for the LLM is to fix the bug in the code, right?

Nathan Lambert

It’s right here. The whole thing’s open, which becomes a problem in the future. But right now, you can see the whole thing, right? You can see the reports from the issue ID and the problem statements, and then you also have the tests that you’re supposed to pass and fail. It’s all here on Hugging Face, and you can see that it says 500. Anyway, I think we don’t need to get too lost in the details.

Sebastian Raschka

I just wanted to define the context: this is a coding benchmark with essentially 500 examples that are available on the internet.

Nathan Lambert

Yes. If you want a bit more historical context, this is a step up from HumanEval, which is more about completions, right? This was, in my mind, the first proper agentic benchmark, I guess, apart from τ-bench, where they give you the problem and the end result, and they don’t really specify how you’re supposed to get there.

A lot of previous benchmarks, like MMLU and HumanEval—which, in the coding domain, was also released by OpenAI—were very much, “Here’s the problem statement, and then give me the right answer immediately after,” without that many extra files or anything that you’re supposed to run. The other ones are more autocomplete; this one is more agentic. It’s all a spectrum, obviously, because you can use agents to solve autocomplete, but that’s not what HumanEval was testing.

Anyway, I wanted to make sure people understand that OpenAI actually invested a lot of money and effort into making SWE-bench Verified.

How much money do you think this cost?

Nathan Lambert

Oh my God, don’t do this to me.

Millions. I would guess on the order of a couple of million. It could even be a few million.

Nathan Lambert

I’d say a couple million. Basically, you do the first filter pass, and then it’s 500 times 3 because they had 3—

Per person?

Nathan Lambert

Individuals.

Yeah.

Nathan Lambert

Yeah. 3 people per task, and then maybe a couple more verification passes or whatever, right? So then they were like, “Oh, well, not only is it saturated because everyone just takes turns incrementing by 0.1 every time they release a new model.” It’s bullshit. It’s obviously bullshit.

The inherent noise in just running these models varies by 0.5 to 1 every time you run it. You just choose the highest one every time.

Mm.

Nathan Lambert

A little nitpick. I don’t think it can be 0.1%, because—

Sure, sure.

Nathan Lambert

Is it 500?

Because what you said before—it’s 500 examples. I think the smallest increment is 0.2%, if I—

Nathan Lambert

Okay.

But it’s a little detail. Yeah, sorry.

Nathan Lambert

A little.

Yeah.

Nathan Lambert

I think as we progress to the next era of benchmarking, the N—so the N here is 500, right?—doesn’t directly correlate to the percentage points because you get sub-points as well from the rubric.

Ah, yeah. Good point. Good point.

Nathan Lambert

So it’s like Terminal-Bench. Even though it has 90-something tasks, you can get subdivisions less than 1%.

Anyway, not only do they have this, they actually audited their own benchmark. They were like, “Okay, how come everyone is saturating at 80%? What’s up with the remaining 20%? How come everyone is failing at it?” And they were like, “Oh, actually, we looked. We paid even more people—6 people per task now—with an extra team if any sort of positive identification is found.”

They found that 59% of them cannot even be solved at all because the original benchmark was still slop. Stuff got through that was not solvable. I actually tried to illustrate this in my post.

Here’s an impossible test, right? This is an example of a SWE-bench Verified task that passed the first round of human verification. Here’s the task: we want to implement Python type hints or something, and we want to see the expected behavior. I want to see a string in the output.

If you were given this, you would never pass it because the test said, “I am looking for something called `get_annotation`, and if you don’t give me this magic string, `get_annotation`, you will fail this test.”

Why?

Nathan Lambert

Yeah, it’s way too—

It’s way too specific.

Nathan Lambert

It’s like a coding interview.

Yep, yep. Yeah.

Nathan Lambert

This is just a bad task that somehow escaped validation in the first run of verification.

So the only way—

Nathan Lambert

You could kind of solve it is if you’re memorizing the answer.

Nathan Lambert

Yeah, exactly. Exactly. I think every benchmark should include stuff like this.

Like a honeypot.

Nathan Lambert

If you solve this, you’re like, “Oh, shit.” This is a canary, right? I mean, you’re definitely cheating.

Like a sanity check. Yeah, yeah, yeah.

Nathan Lambert

Yeah, yeah.

That’s actually a really nice point, yeah.

Nathan Lambert

I just think it’s a beautiful illustration of how hard it is to make evals. There were multiple rounds: there was the original SWE-bench, where the Princeton kids did the initial first pass. Then there was a second pass, with OpenAI doing SWE-bench Verified, and every single person who ran SWE-bench Verified for the next 1.5 years did not call this out—until OpenAI was like, “Hey, let’s look at the data.”

I think it’s really interesting. While they were looking at this, they had a second thing. They looked at the chain of thought, and inside the chain of thought, they found GPT-5’s own chain of thought starting to include information from the future.

Because the problem is open source, and because the model was trained on information from GitHub, it would use advanced knowledge of future versions of the Django version they were using to solve the problem. It knew how to—

Sebastian Raschka

Mm.

Nathan Lambert

Sebastian Raschka

Definitely seen stuff like this in the real world, where the models will hallucinate the new version of the API even if your script isn’t on it. I think a lot of the Hugging Face stuff is the worst with this, where the models just produce total gobbledygook. They’ve seen all the versions, and the API has changed too much over time, so they just fucking throw something out there.

Nathan Lambert

Mm. Yep.

Nathan Lambert

Yeah. I mean, I think there’s a lot of this, right? There’s the ethical question: you can blame things like, “Oh, you should not have released the full dataset in public, because obviously people can train on a full dataset.” But it’s not like the researchers are trying to do this.

Because these things are also open source, any dataset that touches GitHub—any training corpus that touches GitHub—is eventually going to absorb this.

Sebastian Raschka

Yeah, yeah. And it’s not even this website or the repository directly. It’s a clone of this repository, or someone else who has that develops their own open-source library and has it in the unit tests or something. It’s not even intentional or malicious or anything; by accident, you’ve already absorbed that.

Nathan Lambert

Yes.

Sebastian Raschka

Yeah.

Nathan Lambert

Or a new feature that releases this—an edit-only feature—it gets written up in a blog post or a conference talk or something, and then it just makes it in, right? It’s really funny.

To me, OpenAI could have stopped there and said, “Okay, we’re done.” They did one more extra thing, which is kind of funny. They also then ran Gemini Flash and Claude Opus, and in this case it was even more egregious.

They just gave the task ID and said, “Repeat the SWE-bench task to me.” From the task ID, the model could just vomit out the whole problem statement and the solution.

Sebastian Raschka

Mm.

Nathan Lambert

Sebastian Raschka

These are crazy. The stuff that’s in these models when you zoom in deep is really incredible, because these are models that are really well done, but there’s just so much complexity in all the pieces of the puzzle that get put in the recipe.

There are just so many weird corners.

Nathan Lambert

Yes.

Nathan Lambert

I also still find it fascinating that, of course, it’s kind of by design when you’re training that you memorize things, because that’s literally next-token prediction. But given how big a model is and how much data it sees—and usually it sees the data only once—it still has enough capacity to memorize.

Usually I would think, “Okay, I would have to train multiple epochs to be able to memorize,” but no. It may be enough to include it once or twice in the training corpus, and it can produce a perfect rendition or a perfect recap of what’s in there. It’s kind of fascinating, even for people who don’t want that. It’s crazy.

Sebastian Raschka

Yeah. Labs got good at this. There’s essentially a duplication level that you need at each stage of training, and it’s not easy to measure.

If you do too much at pretraining, your model forgets basic facts. At post-training, it’s probably closer to these abilities, and I think that’s something that is not well reflected in evals of your knowledge tank.

Nathan Lambert

Yeah, I mean—

Sebastian Raschka

But I think this is an art that they have probably gotten good at.

Nathan Lambert

Yeah. Continued pretraining does also require some revisiting of old data; otherwise, like you said, you have forgetting. But it’s still fascinating to me that with such a small fraction—because you usually use 1% or 2.5% for continued pretraining—it’s enough to have the model memorize almost everything. That’s fascinating.

Sebastian Raschka

Yeah.

Nathan Lambert

I don’t know. It’s still fascinating after all these years.

Sebastian Raschka

I think there’s—one of the pet topics that I pursue 2 or 3 times a year in my work is the information theory of LLMs. I still think it’s super understudied. How come you can memorize from one pass?

Nathan Lambert

Mm. Yeah, exactly right.

Sebastian Raschka

People also forget superposition, which is Anthropic’s original mech interp work. It basically stuffs information inside smaller bits that then get forgotten. But how does superposition actually work?

Sebastian Raschka

I don't think I've seen a convincing study on that.

Nathan Lambert

Yeah.

Sebastian Raschka

Okay. Anyway, I don't know. I'm done on my SWE-bench right now. I don't know if you have thoughts or questions or whatever, but I do think this is an example of the model unintentionally cheating, and benchmarks are hard to make. We need new ones. If this happens to SWE-bench Verified—which I think is the most scrutinized benchmark in the world—

**swyx**

In my recent post...

**Nathan Lambert**

What else is there?

**swyx**

I had a bar plot where I showed the SWE-bench Verified numbers for most models, and, like you said, they were all 80-something percent—literally between 81 and 89, let's say—where there's almost zero variation. Even something like MiniMax M2.5, which I do think is worse than GPT-5.2—no offense, it's a smaller model, it's a cheaper model. For my usage—

**Sebastian Raschka**

M2.5 is an open model. It's a little bit worse, but on this particular benchmark, it's the same. I don't think what I'm saying is that M2.5 should get a lower score on SWE-bench, but I think other models should get a higher score. But, like you said, the problems are just impossible to solve.

One point I think we didn't bring up is that we said SWE-bench Verified has issues. So what do we do about it? I think there is a SWE-bench Pro now, which is kind of—

**Nathan Lambert**

Yes.

**Sebastian Raschka**

It's a—I would say Verified tried to fix the regular SWE-bench, and Pro tries to fix Verified. But I haven't looked into this. Is it another subset, or is it a completely different set of problems?

**Nathan Lambert**

Yeah, it's a new set. SWE-bench draws from roughly a 2022–2023 era of problems. There are a few things you do, right? One, you do private/public splits, right?

**Sebastian Raschka**

Mm-hmm.

**Nathan Lambert**

That's super obvious. Two, you update the dates from which you draw, and three, you diversify the repos and the languages, right? These are all very, very basic fixes, and then obviously trying to fix the testing. They're super-basic fixes to the original SWE-bench. It doesn't take a genius to figure out, but they did the hard work and—

**Sebastian Raschka**

But it is, in a sense, also what Verified meant to do. So it's not—let's say people looked at this again, but there's no guarantee that it doesn't also still have issues that might be discovered later on, right? I mean, it's—

**Nathan Lambert**

No. So SWE-bench Verified was an intentional subset, right? These guys were like, “No, no, no. We need to have a superset.” Not even a superset.

**Sebastian Raschka**

A different. Yeah, yeah.

**Nathan Lambert**

Yeah.

**Sebastian Raschka**

But what I was trying to say is, when SWE-bench Verified was developed, there were 3 people per task making sure the task was well-defined and everything.

**Nathan Lambert**

Mm-hmm. Mm-hmm.

**Sebastian Raschka**

But then 2 years later, it turns out, no, no, this was not the case for everything.

**Nathan Lambert**

Yeah.

**Sebastian Raschka**

And what I'm trying to say is, it could be that SWE-bench Pro is better, but it might still have issues that might not be obvious right now. Maybe in 1 to 2 years, once we revisit this and see some of the failure cases, maybe we'll discover, okay, this still has some issues. So it's not a guaranteed perfect set, is what I'm saying. I don't know, but it's just a suspicion here.

**Nathan Lambert**

Totally, totally. I do think Scale AI has a professional interest in making sure this is good.

**Sebastian Raschka**

Yeah, no, but what I was trying to say is SWE-bench Verified also had a professional interest in making sure, just by accident.

**Alessio Fanelli**

Oh, very different incentives. I guess they all have very different incentives.

**Nathan Lambert**

This one has an unlimited budget. This one has basically an unlimited budget because it's literally existential to Scale AI that they have good data.

**Sebastian Raschka**

Sure.

**Nathan Lambert**

But I also think it's really nice that OpenAI's evals team keeps endorsing Opus. It is kind of funny. So, yeah, they deprecate SWE-bench Verified, and then they were like, “We're gonna report SWE-bench Pro now.” And GPT-5 is, you know, number 1, 2, 3.

**Sebastian Raschka**

Maybe—do you know, if I wanted to evaluate on the private dataset, how would I do that? Is there an API call I have to make against Scale AI, or—

**swyx**

I don't know.

**Nathan Lambert**

You get an API key and have to agree, because if you don't have an agreement, then you just have to keep the data. You have to jump through special hoops to make sure that you don't steal the private eval.

**Sebastian Raschka**

Mm-hmm. Yeah, my question was basically: do they even let you download the data, or is it more like you send the answer to them and they do the evaluation on their backend, so that you don't even get to download the data? Because otherwise, like you said, you could—

**Nathan Lambert**

Scale AI.

**Sebastian Raschka**

Yeah, yeah. So basically, you only provide the answer. You have your LLM generate an answer, and you submit the answers, and then they have some process to evaluate on their end, so that their private data never leaves their server, is my guess, because otherwise someone might upload it or something.

**Nathan Lambert**

Yeah, I don't know. I haven't tried it, so I don't really know. I'm sure you can reach out to them to figure it out. Yeah. Anyway.

**Alessio Fanelli**

I think this is good unless people have more comments that they want to add.

**Nathan Lambert**

Yeah. But this is only coding, right? Every other domain needs this.

**Alessio Fanelli**

But coding is the hot thing right now. Yeah.

**Nathan Lambert**

The frontier is even more expensive.

**swyx**

I think the frontier evals are even more expensive, which is like the APEX eval from Mercor. Evals are going to cost millions. They're going to cost tens of millions and hundreds of millions of dollars at the frontier, which is just a very strange dynamic. Whereas so much of the ecosystem is forking between frontier models and then research and other things, and trying to follow that dynamic and explain it to people is going to take a lot of work.

**Sebastian Raschka**

But, yeah, coding is—I do think—really interesting because that's what most people use LLMs for these days, but it is also easier to evaluate. I think once you leave coding and math, it becomes a bit obscure. How do you measure the quality of the answer you get back? You get back to, let's say, preferences, I guess, which is more of a subjective thing, whereas coding is more objective. So it's not a bad thing to do.

I think the other day, though, Anthropic acquired another company that does UI-type stuff on the computer, and I think that is something where—

**swyx**

Minor. Doesn't really matter.

**Sebastian Raschka**

No, I mean, that's—I'm not trying to say this is a big thing to talk about. What I'm trying to say is, this is another interesting point for evaluating LLMs on those tasks, because I think a lot of people want an LLM to control the computer and do various things, but those are harder to measure. So maybe in 2 years we'll have something more like benchmarks for that. It's harder to specify. It's kind of like—what is it called? In programming, there's unit testing and then system testing, basically, like UI testing and stuff like that.

**Nathan Lambert**

Yes.

**Sebastian Raschka**

Yeah, so I think that is the next—

**swyx**

Maybe it's going to be the next big thing.

**Sebastian Raschka**

Basically, that thing. Yeah.

**swyx**

Yeah, yeah.

**Sebastian Raschka**

GDPval is usually the thing that gets brought up here. So I'll just leave it there. I think we've sort of beaten the—

**swyx**

Yep.

**Sebastian Raschka**

The dead horse.

**swyx**

Yeah, the benchmarks. Yeah.

**Sebastian Raschka**

Benchmarking. But definitely GDPval is sort of here. I'll put it that way. Okay.

**swyx**

Yeah, but the big topics are essentially distillation and the benchmarks this week, yeah.

**Sebastian Raschka**

Cool.

**swyx**

And welcoming Max to our coalition of—

**Sebastian Raschka**

Yeah.

**swyx**

GDPvals, whatever that means formally.

**Sebastian Raschka**

It just means I get to hang out with you guys, which is what I want anyway.

**swyx**

I mean, it's ultimately a media vehicle, and brands and vehicles for media are actually very influential today. I think you see many companies investing in that, and I think it's important to have people that you respect and are aligned with able to amplify each other.

**Sebastian Raschka**

Yeah. It's also nice to talk to humans because I noticed the last couple of weeks, if you go to social media, I think 50% are lobsters, like OpenClaw clients nowadays. I get a lot of emails, but also notifications or responses that look AI-generated, so it's nice to have this human connection and actually talk to an expert about things, yeah.

**Sebastian Raschka**

Cool. There are a bunch of comments. I don't know if you want to do quick hits, or if you're kind of checked out.

**swyx**

I have to go to a meeting.

**Sebastian Raschka**

Okay.

**swyx**

That's why I'm trying to wrap this up.

**Sebastian Raschka**

I see. Okay. Well, you know, time is yours. What do you want to do?

**swyx**

Yeah. Okay. Thanks, everybody. We'll see you next week.

**Sebastian Raschka**

Yeah. Thanks, everyone, for joining. It was a nice spontaneous discussion, I guess. It always feels nice to talk about things, and it's too bad we didn't get to discuss these chat questions because I probably need glasses at some point. My screen is pretty far away, and I can just barely read them.

But yeah, thanks, everyone, for commenting. It's nice to see so many people excited about these topics.

**swyx**

Peace out. Hopefully, see you later.

**Sebastian Raschka**

Yeah. Have a good rest of the day.

**swyx**

Bye.

**Sebastian Raschka**

Bye.