Published at 2025-09-14 | Last Update 2025-09-14
本文翻译自 2025 年的一篇文章 Learning the Bitter Lesson。 来自 github.com/langchain-ai/open_deep_research 作者。
过去 70 年 AI research 领域学到的最大经验是:以计算作为支撑的通用方法 (general methods that leverage computation)是终极方案(ultimately the most effective),而且大幅领先其他方式。

水平及维护精力所限,译文不免存在错误或过时之处,如有疑问,请查阅原文。 传播知识,尊重劳动,年满十八周岁,转载请注明出处。
过去 70 年 AI research 领域学到的最大经验是:以计算作为支撑的通用方法 (general methods that leverage computation)是终极方案(ultimately the most effective),而且大幅领先其他方式。
Rich Sutton,The Bitter Lesson
The Bitter Lesson 在许多 AI 研究领域一次次地被证实,比如国际象棋、围棋、语音、视觉。
用好计算(leveraging computation)被证明是最重要的事情, 而我们强加给模型的"结构"反而往往会限制它们用好不断增长的计算能力。
这里所说的”结构”是什么意思?
Often structure includes inductive biases about
how we expect models to solve problems.
关于这一点,可以看一下 Hyung Won Chung(OpenAI)关于他的研究方法的演讲:
Add structures needed for the given levelof compute and data available.Remove them later, becausethese shortcutswill bottleneck further improvement.
The Bitter Lesson 也适用于 AI Engineering,如何快速演进的模型之上构建应用。
举个例子,Boris(Claude Code 的负责人)提到 The Bitter Lesson 强烈影响了他的方法。

Hyung 的演讲为 AI 工程提供了一些有用的教训。 接下来我通过构建 open-deep-research 的故事来说明这一点。
那么,这里的”结构”是什么?我对 LLM 应如何快速、可靠地进行研究做出了一些假设,如下图所示:

但此时,我之前强加的结构阻止了我的框架用上这些改进,

最终,我转向了 Multi-Agent 系统,这使我能够使用工具并让系统灵活地规划研究策略。
但是,我设计的新一版系统里, 每个 sub-agent 仍然独立撰写自己的 report section。 这也是到了 Cognition 的 Walden Yan 提出的问题: Multi-Agent 系统很难,因为 sub-agent 往往不能有效交流。 报告仍然不连贯,因为我的 sub-agent 并行撰写章节。
这是 Hyung 演讲的主要观点之一:虽然我们在改进方法,但经常未能去掉之前添加的所有结构。 在我这个例子中,我虽然转向了 Agent,但仍然强制每个 Agent 并行撰写部分报告。
最终,我将报告撰写移至最后一步,如下图所示,

AI 工程的一些经验总结:
理解你的应用结构(Understand your application structure)
考虑你的应用设计中嵌入了哪些 LLM 性能假设。例如对于我最初的 Workflow ,我避免工具调用是因为(当时)它不可靠,但几个月后情况变了!
随着模型能力的提升,重新评估这些结构(Re-evaluate structure as models improve)
我在重新评估假设方面有点慢了, 业界的工具调用能力大幅提升,而我没有及时重新评估假设是否还合理。
让去掉结构这件事情比较容易(Make it easy to remove structure)
Agent 抽象可能带来风险,因为它们可能使去掉结构变得困难。 我仍然使用框架(LangGraph),但使用的是其通用功能(例如 checkpointing),而且尽量只使用使用其底层构建模块(例如 node 和 edge),这样我可以轻松地(重新)配置。
构建 AI 应用的设计哲学仍处于初级阶段。 但有一点是可预测的:模型会变得越来越强大。 理解这一点可能是 AI 应用设计的最重要事情。
Thanks to Vadym Barda for initial evals, MCP support, and helpful discussion. Thanks to Nick Huang for work on the multi-agent implementation as well as Deep Research Bench evals.