OpenAI o1 - 用强化学习把大模型推向深度推理¶
2024 年 9 月 12 日,OpenAI 发布 Learning to Reason with LLMs,把“回答前先想一会儿”从 prompt 技巧改写成模型族定位;12 月 5 日又发布 OpenAI o1 System Card,把能力、风险和部署边界放在同一张账本里。 o1 的震动不在于公开了某个可复现算法,恰恰相反:OpenAI 没有披露完整训练配方,却公开展示了训练时计算、测试时计算和强化学习推理能力的共同扩展。AIME、Codeforces、GPQA、MMMU 与越狱评测一起说明,推理模型不是“更会聊天的 GPT-4o”,而是一个新的产品和安全范式:模型先在隐藏思维链里推演,再把可见答案交给用户。
一句话总结¶
OpenAI 团队 2024 年发布的 o1 官方材料,把 LLM 推理从 Chain-of-Thought prompting 的“提示词现象”推进到 强化学习训练出的推理策略:模型在回答前生成隐藏思维链,用训练时计算和测试时计算共同提升表现,可以粗略写成 \(p(y\mid x)=\sum_z p_\theta(y\mid x,z)p_\theta(z\mid x)\),其中 \(z\) 是不直接暴露给用户的推理轨迹。公开事实只到这里:OpenAI 说明 o1 通过大规模强化学习学习使用 chain-of-thought、会尝试不同策略、识别错误并修正;它没有披露 reward、数据、采样、模型规模或可复现训练 recipe。能力侧,o1 在 AIME 2024 pass@1 达到 74.4%、cons@64 达到 83.3%,Codeforces Elo 1673、约第 89 百分位,GPQA Diamond pass@1 77.3%,MMMU 78.2%;安全侧,系统卡把 CBRN 与 Persuasion 定为 Medium,Cybersecurity 与 Model Autonomy 定为 Low,并强调 deliberative alignment 与隐藏 CoT 监测。它替代的不是某个单一 baseline,而是 GPT-4o 时代“快速回答 + 外部 prompt 激发推理”的默认交互;后来 DeepSeek-R1(2025) 用开放 RL 路线证明 o1 的思想可以被部分公开化,也让 o1 的真正 lesson 更清楚:推理能力的核心变量从“模型知道什么”变成“模型愿意花多少内部计算去搜索、验证和修正”。
历史背景¶
从 CoT prompting 到推理模型¶
o1 的历史起点不是 2024 年突然出现的“聪明模型”,而是 2022 年之后 LLM 社区对 chain-of-thought 的集体重新认识。Chain-of-Thought Prompting 证明,只要让模型显式写出中间步骤,数学和符号推理任务会明显变好;随后 Self-Consistency、Tree-of-Thoughts、程序辅助推理、工具调用和 verifier reranking 都在同一个方向上加码:不要直接给答案,而是在答案之前展开搜索、分解和检查。
但是这些方法大多把推理当作推理时技巧。用户写“Let's think step by step”,研究者采样多条 reasoning path,再用投票或评分器选答案。模型本身没有被公开训练成“把内部计算系统性花在难题上”的产品。GPT-4o 时代的主流交互仍然是快速回答,必要时由 prompt 激发更长的解释。o1 的关键转折,是 OpenAI 把“先思考”变成模型族的训练目标和产品形态:模型在隐藏 chain-of-thought 中推演,用户看到的是整理后的答案或摘要。
| 阶段 | 代表事件 | 推理接口 | 局限 |
|---|---|---|---|
| 2022 | Chain-of-Thought Prompting | 用户显式要求分步思考 | 依赖 prompt,稳定性有限 |
| 2022-2023 | Self-Consistency / verifier reranking | 多样本采样与投票 | 计算外置,训练目标未必匹配 |
| 2023 | GPT-4 Technical Report | 强能力但闭源 recipe | 推理机制和训练细节不透明 |
| 2024 | OpenAI o1 | RL 训练出的隐藏 CoT + test-time compute | 公开材料仍不可复现 |
2024 年 9 月:把“想得久”变成能力曲线¶
OpenAI 在 2024 年 9 月 12 日发布 o1-preview 与《Learning to Reason with LLMs》时,真正抓住外界注意力的不是单个榜单,而是两张扩展曲线:o1 的表现随强化学习训练计算增加而提升,也随测试时思考计算增加而提升。此前 LLM scaling 的默认叙事是预训练算力、参数和数据;o1 把另一个轴推到台前:同一道题可以分配更多内部推理预算,模型在给出答案前尝试策略、发现错误、修正路径。
这解释了为什么 o1 的发布语气不像普通模型升级。OpenAI 不只是说“新模型更强”,而是说“我们训练了一个会利用 chain-of-thought 进行富有成效思考的模型”。AIME 2024、Codeforces、GPQA Diamond 和 MMMU 这些任务共同指向同一类能力:题目不能只靠常识补全,需要多步搜索、约束跟踪、数学变形、代码调试或科学知识组合。o1 在这些地方相对 GPT-4o 的跃迁,说明推理预算本身变成了一种可扩展资源。
2024 年 12 月:系统卡让能力和风险同桌¶
12 月 5 日的 OpenAI o1 System Card 把 o1 的另一面补上:推理能力不仅提高数学、代码和科学表现,也改变安全评估的形状。系统卡开篇明确说,o1 系列通过大规模强化学习学习使用 chain-of-thought;这种能力给安全和稳健性带来新机会,也可能提高风险。报告同时评估 disallowed content、jailbreak、hallucination、bias、instruction hierarchy、CoT deception monitoring、external red teaming、Preparedness Framework、CBRN、persuasion、model autonomy 与 multilingual performance。
这份系统卡的历史价值在于,它把“能力发布”和“治理文本”绑在一起。o1 不是只在榜单上打败 GPT-4o 的模型,也不是只给 ChatGPT 用户一个慢一点的高级选项;它要求开发者、红队、监管者和研究者一起面对一个新问题:如果模型能在隐藏推理轨迹里计划、验证和修正,那么安全方法是否也必须进入这个推理过程?OpenAI 的回答是 deliberative alignment、instruction hierarchy、CoT 摘要与 CoT 监测,但它也承认 faithful CoT 仍是开放问题。
研究背景与动机¶
动机:把计算花在答案前¶
o1 背后的动机可以概括为一句话:让模型在输出前消耗更多有用计算,而不是把所有能力都压进一次快速前向回答。普通聊天模型往往像快速反射系统:读 prompt,直接生成答案,最多在可见文本里解释。推理模型则更像考试时打草稿:先在内部空间尝试路线,遇到矛盾就回退,必要时重写思路,然后输出最终答案。OpenAI 把这种能力与强化学习绑定起来,意味着训练目标不只是“答案像人类偏好”,还包括“推理过程能提高最终正确性”。
这与传统 RLHF 有细微但重要的差别。RLHF 通常优化回答的偏好、帮助性和安全性;o1 的公开叙事强调模型学习“refine their thinking process, try different strategies, and recognize their mistakes”。换言之,优化对象从可见回答扩展到回答前的内部认知过程。公开材料没有说明 reward 如何构造,但动机已经足够清晰:如果困难任务需要搜索,那么训练就应该奖励会搜索的模型。
披露边界:这不是可复现论文¶
理解 o1 时必须把历史影响和复现价值分开。o1 是一个改变方向的技术报告和系统卡,不是一篇开放算法论文。OpenAI 没有公开模型规模、完整数据组成、RL 算法、reward 设计、采样策略、优化器、训练轮数、CoT 格式或系统提示。官方图表说明扩展趋势,官方表格说明 benchmark 和 safety eval 结果,但不能让外部团队从文本直接训练一个 o1。
这并不削弱它的历史地位,反而说明 2024 年 frontier AI 的一个现实:最重要的研究对象越来越多以闭源系统卡、产品发布和定性/定量混合评估出现。o1 的读法因此要双轨并行。一方面,它公开展示了 test-time compute 与 RL-for-reasoning 的强信号;另一方面,任何细节化 recipe 都必须被标注为解释或猜测,不能写成 OpenAI 已披露事实。
方法详解¶
o1 的方法详解必须从边界开始。OpenAI 公开页面没有披露完整训练算法、reward 函数、模型规模、训练数据配比、优化器、采样策略、推理预算分配、隐藏 CoT 的原始格式或部署栈。因此,本节不是复现 OpenAI 内部系统的 recipe,而是把公开事实组织成一个可理解框架,并明确哪些部分只是合理解释。可以确定的公开事实包括:o1 系列通过大规模强化学习学习使用 chain-of-thought;模型会在回答前思考,能生成长内部思维链;训练让模型 refine thinking process、try different strategies、recognize mistakes;表现随训练时计算和测试时计算增加而提高;系统卡将 deliberative alignment、instruction hierarchy 与 CoT safety 纳入安全方法。
公开事实与结构化解释的边界¶
最容易犯的错误,是把 o1 写成某种开源 RL recipe。公开材料足够说明它的思想,但不足以还原训练。下面这张表把三层分开:
| 层级 | 公开事实 | 结构化解释 | 不应假装知道 |
|---|---|---|---|
| 训练信号 | 使用大规模强化学习训练推理 | reward 很可能鼓励正确答案和有用推理行为 | reward 形式、权重、标注来源 |
| 推理轨迹 | 模型在回答前产生长 CoT | 隐变量 \(z\) 承载搜索、验证和修正 | 原始 CoT 格式、是否完全忠实 |
| 扩展规律 | 训练时和测试时计算增加会提高表现 | 推理预算成为 scaling 轴 | 曲线斜率、计算量绝对值 |
| 安全训练 | deliberative alignment 教模型推理安全政策 | 安全规范进入模型的决策过程 | 具体 policy 数据与训练流程 |
| 产品形态 | 用户看到答案和摘要,不看原始 CoT | 隐藏 CoT 保护监测和竞争边界 | 完整部署路由和过滤细节 |
整体框架:隐藏推理轨迹上的测试时计算¶
从概率图角度看,o1 可以被解释为在答案 \(y\) 之前引入一个隐藏推理轨迹 \(z\)。用户只看到 \(y\),有时看到摘要;模型内部先采样、搜索或构造 \(z\),再根据 \(x\) 和 \(z\) 生成答案。这个写法不是 OpenAI 公开公式,而是帮助理解 o1 与普通快速回答模型的差别:
普通聊天模型也可以输出解释,但解释往往和最终答案一起生成,且不一定经过训练来最大化困难任务正确性。o1 的公开叙事则把 \(z\) 变成核心能力:模型在 \(z\) 中分解问题、尝试策略、发现矛盾、修正路线,并把最终答案交给用户。这样,测试时计算不只是“多生成几个 token”,而是把更多预算放在内部搜索与验证上。
| 组件 | 输入 | 输出 | 公开材料中的作用 |
|---|---|---|---|
| Reasoning policy | 用户问题与上下文 | 隐藏 CoT | 在回答前进行多步推理 |
| Verbal answer head | 隐藏 CoT 与问题 | 用户可见答案 | 把内部结果整理成响应 |
| Test-time budget | 难度、策略、产品约束 | 更长或更短的思考 | 在难题上提升正确率 |
| Safety policy reasoning | 安全规范与请求 | 拒绝、改写或合规帮助 | deliberative alignment 的接口 |
关键设计 1:强化学习把“会推理”变成训练目标¶
o1 最重要的设计,是把推理过程纳入强化学习训练,而不是只靠 prompt 激发。公开材料没有说具体算法,但可以把目标抽象为:模型对问题 \(x\) 产生推理轨迹 \(z\) 和答案 \(y\),训练信号 \(R(x,z,y)\) 奖励最终正确性、策略修正、安全合规或其他公开未细分的目标。概念上可以写成:
这里的 \(B(x)\) 表示测试时预算,不是官方变量。它提醒我们:o1 的能力不只由参数决定,也由给同一道题分配多少内部计算决定。AIME 的 pass@1、consensus、以及用 learned scoring function 对 1000 个样本重新排序的差异,说明“生成更多候选 + 更好选择”会带来大幅提升。公开材料里最有历史意义的点,正是训练时计算和测试时计算都成为可扩展轴。
| 训练范式 | 优化对象 | 典型收益 | o1 相比它的新意 |
|---|---|---|---|
| SFT | 模仿高质量答案 | 格式和知识对齐 | 不足以教会搜索和自纠错 |
| RLHF | 人类偏好与安全边界 | 更好聊天、更少违规 | 偏好不等于困难题正确性 |
| CoT prompting | 推理时显式分步 | 低成本激发推理 | 依赖提示,训练目标未变 |
| o1 式 reasoning RL | 推理轨迹提高最终结果 | 搜索、验证、修正成为能力 | 细节未公开,不能复现 |
关键设计 2:测试时扩展把推理变成产品旋钮¶
o1 让“慢一点但更准”成为产品特性。传统模型的 latency 主要是成本问题;o1 的 latency 同时是能力变量。OpenAI 图表显示,测试时计算增加时,o1 在 AIME 上的 pass@1 准确率平滑上升。直观上,模型可以花更多 token 和采样预算检查路线,而不是在第一条路径上过早停下。
这种设计改变了用户体验。对简单闲聊,长推理是浪费;对数学、代码、科学、法律草稿、战略规划和复杂调试,更多内部计算可能直接换来正确性。模型服务因此不再只是“同一个模型、同一种响应模式”,而是需要按任务难度、成本、风险和用户等待意愿动态分配 reasoning budget。
关键设计 3:deliberative alignment 把安全规则放进推理过程¶
系统卡反复强调,o1 的推理能力也被用于安全:模型可以在上下文中推理 OpenAI 的 safety policies,从而更稳健地拒绝不合规请求、减少越狱成功率和过度拒绝。Deliberative alignment 的高层思想,是把政策规范变成模型可推理的对象,而不是只训练一个表面拒绝模板。概念上可以写成双目标:
其中 \(R_{policy}\) 代表符合安全规范的行为;这不是官方 reward 公式,只是解释为什么推理能力会同时影响能力与安全。instruction hierarchy 也属于同一思路:当 system、developer、user 指令冲突时,模型必须推理哪一层更高优先级,而不是被最后一条用户消息覆盖。系统卡显示,o1 在 tutor jailbreak、phrase/password protection 等评测中相比 GPT-4o 有明显提升,但也承认详细回答可能在某些 risky advice 场景中增加风险。
| 安全机制 | 解决的问题 | o1 中的公开证据 | 仍需谨慎的地方 |
|---|---|---|---|
| Deliberative alignment | 让模型推理安全政策 | challenging refusal 和 jailbreak 提升 | 政策数据与训练细节未公开 |
| Instruction hierarchy | 处理指令优先级冲突 | developer/user/system 冲突评测提升 | 个别 developer-message 场景仍弱 |
| Hidden CoT summaries | 给用户可读线索 | ChatGPT 展示推理摘要 | 摘要不是原始 CoT |
| CoT monitoring | 检测欺骗与异常 | 102,443 条合成 prompt 监测实验 | CoT 忠实性仍是开放问题 |
概念伪代码:不是 OpenAI 内部实现¶
下面的伪代码只表达公开材料暗示的系统结构,不能当作训练配方。它没有包含真实数据、reward、RL 算法、分布式系统、采样策略、安全过滤或隐藏 CoT 细节:
def train_reasoning_model(prompts, policy, reward_model, safety_policy, budget_sampler):
for prompt in prompts:
budget = budget_sampler(prompt)
hidden_trace = policy.think(prompt, max_budget=budget)
answer = policy.answer(prompt, hidden_trace)
task_reward = reward_model.score(prompt, answer)
policy_reward = safety_policy.score(prompt, hidden_trace, answer)
reward = task_reward + policy_reward
policy.update_with_reinforcement_signal(prompt, hidden_trace, answer, reward)
def answer_with_o1_like_runtime(prompt, policy, safety_policy, budget_controller):
budget = budget_controller.allocate(prompt)
hidden_trace = policy.think(prompt, max_budget=budget)
if safety_policy.requires_refusal(prompt, hidden_trace):
return policy.refuse_with_visible_rationale(prompt, hidden_trace)
return policy.final_answer(prompt, hidden_trace)
读 o1 方法时,最重要的是不要把“概念结构”误读成“OpenAI 已公开 recipe”。公开事实已经足够解释它为什么重要:推理模型把内部思考、测试时计算、强化学习和安全政策推理绑在一起。但真正的工程细节仍然是黑箱,后续开源工作只能从行为、评测和少量公开线索逆向它的思想。## 方法详解
o1 的方法详解必须从边界开始。OpenAI 公开页面没有披露完整训练算法、reward 函数、模型规模、训练数据配比、优化器、采样策略、推理预算分配、隐藏 CoT 的原始格式或部署栈。因此,本节不是复现 OpenAI 内部系统的 recipe,而是把公开事实组织成一个可理解框架,并明确哪些部分只是合理解释。可以确定的公开事实包括:o1 系列通过大规模强化学习学习使用 chain-of-thought;模型会在回答前思考,能生成长内部思维链;训练让模型 refine thinking process、try different strategies、recognize mistakes;表现随训练时计算和测试时计算增加而提高;系统卡将 deliberative alignment、instruction hierarchy 与 CoT safety 纳入安全方法。
公开事实与结构化解释的边界¶
最容易犯的错误,是把 o1 写成某种开源 RL recipe。公开材料足够说明它的思想,但不足以还原训练。下面这张表把三层分开:
| 层级 | 公开事实 | 结构化解释 | 不应假装知道 |
|---|---|---|---|
| 训练信号 | 使用大规模强化学习训练推理 | reward 很可能鼓励正确答案和有用推理行为 | reward 形式、权重、标注来源 |
| 推理轨迹 | 模型在回答前产生长 CoT | 隐变量 \(z\) 承载搜索、验证和修正 | 原始 CoT 格式、是否完全忠实 |
| 扩展规律 | 训练时和测试时计算增加会提高表现 | 推理预算成为 scaling 轴 | 曲线斜率、计算量绝对值 |
| 安全训练 | deliberative alignment 教模型推理安全政策 | 安全规范进入模型的决策过程 | 具体 policy 数据与训练流程 |
| 产品形态 | 用户看到答案和摘要,不看原始 CoT | 隐藏 CoT 保护监测和竞争边界 | 完整部署路由和过滤细节 |
整体框架:隐藏推理轨迹上的测试时计算¶
从概率图角度看,o1 可以被解释为在答案 \(y\) 之前引入一个隐藏推理轨迹 \(z\)。用户只看到 \(y\),有时看到摘要;模型内部先采样、搜索或构造 \(z\),再根据 \(x\) 和 \(z\) 生成答案。这个写法不是 OpenAI 公开公式,而是帮助理解 o1 与普通快速回答模型的差别:
普通聊天模型也可以输出解释,但解释往往和最终答案一起生成,且不一定经过训练来最大化困难任务正确性。o1 的公开叙事则把 \(z\) 变成核心能力:模型在 \(z\) 中分解问题、尝试策略、发现矛盾、修正路线,并把最终答案交给用户。这样,测试时计算不只是“多生成几个 token”,而是把更多预算放在内部搜索与验证上。
| 组件 | 输入 | 输出 | 公开材料中的作用 |
|---|---|---|---|
| Reasoning policy | 用户问题与上下文 | 隐藏 CoT | 在回答前进行多步推理 |
| Verbal answer head | 隐藏 CoT 与问题 | 用户可见答案 | 把内部结果整理成响应 |
| Test-time budget | 难度、策略、产品约束 | 更长或更短的思考 | 在难题上提升正确率 |
| Safety policy reasoning | 安全规范与请求 | 拒绝、改写或合规帮助 | deliberative alignment 的接口 |
关键设计 1:强化学习把“会推理”变成训练目标¶
o1 最重要的设计,是把推理过程纳入强化学习训练,而不是只靠 prompt 激发。公开材料没有说具体算法,但可以把目标抽象为:模型对问题 \(x\) 产生推理轨迹 \(z\) 和答案 \(y\),训练信号 \(R(x,z,y)\) 奖励最终正确性、策略修正、安全合规或其他公开未细分的目标。概念上可以写成:
这里的 \(B(x)\) 表示测试时预算,不是官方变量。它提醒我们:o1 的能力不只由参数决定,也由给同一道题分配多少内部计算决定。AIME 的 pass@1、consensus、以及用 learned scoring function 对 1000 个样本重新排序的差异,说明“生成更多候选 + 更好选择”会带来大幅提升。公开材料里最有历史意义的点,正是训练时计算和测试时计算都成为可扩展轴。
| 训练范式 | 优化对象 | 典型收益 | o1 相比它的新意 |
|---|---|---|---|
| SFT | 模仿高质量答案 | 格式和知识对齐 | 不足以教会搜索和自纠错 |
| RLHF | 人类偏好与安全边界 | 更好聊天、更少违规 | 偏好不等于困难题正确性 |
| CoT prompting | 推理时显式分步 | 低成本激发推理 | 依赖提示,训练目标未变 |
| o1 式 reasoning RL | 推理轨迹提高最终结果 | 搜索、验证、修正成为能力 | 细节未公开,不能复现 |
关键设计 2:测试时扩展把推理变成产品旋钮¶
o1 让“慢一点但更准”成为产品特性。传统模型的 latency 主要是成本问题;o1 的 latency 同时是能力变量。OpenAI 图表显示,测试时计算增加时,o1 在 AIME 上的 pass@1 准确率平滑上升。直观上,模型可以花更多 token 和采样预算检查路线,而不是在第一条路径上过早停下。
这种设计改变了用户体验。对简单闲聊,长推理是浪费;对数学、代码、科学、法律草稿、战略规划和复杂调试,更多内部计算可能直接换来正确性。模型服务因此不再只是“同一个模型、同一种响应模式”,而是需要按任务难度、成本、风险和用户等待意愿动态分配 reasoning budget。
关键设计 3:deliberative alignment 把安全规则放进推理过程¶
系统卡反复强调,o1 的推理能力也被用于安全:模型可以在上下文中推理 OpenAI 的 safety policies,从而更稳健地拒绝不合规请求、减少越狱成功率和过度拒绝。Deliberative alignment 的高层思想,是把政策规范变成模型可推理的对象,而不是只训练一个表面拒绝模板。概念上可以写成双目标:
其中 \(R_{policy}\) 代表符合安全规范的行为;这不是官方 reward 公式,只是解释为什么推理能力会同时影响能力与安全。instruction hierarchy 也属于同一思路:当 system、developer、user 指令冲突时,模型必须推理哪一层更高优先级,而不是被最后一条用户消息覆盖。系统卡显示,o1 在 tutor jailbreak、phrase/password protection 等评测中相比 GPT-4o 有明显提升,但也承认详细回答可能在某些 risky advice 场景中增加风险。
| 安全机制 | 解决的问题 | o1 中的公开证据 | 仍需谨慎的地方 |
|---|---|---|---|
| Deliberative alignment | 让模型推理安全政策 | challenging refusal 和 jailbreak 提升 | 政策数据与训练细节未公开 |
| Instruction hierarchy | 处理指令优先级冲突 | developer/user/system 冲突评测提升 | 个别 developer-message 场景仍弱 |
| Hidden CoT summaries | 给用户可读线索 | ChatGPT 展示推理摘要 | 摘要不是原始 CoT |
| CoT monitoring | 检测欺骗与异常 | 100,000 synthetic prompts 上做监测实验 | CoT 忠实性仍是开放问题 |
概念伪代码:不是 OpenAI 内部实现¶
下面的伪代码只表达公开材料暗示的系统结构,不能当作训练配方。它没有包含真实数据、reward、RL 算法、分布式系统、采样策略、安全过滤或隐藏 CoT 细节:
def train_reasoning_model(prompts, policy, reward_model, safety_policy, budget_sampler):
for prompt in prompts:
budget = budget_sampler(prompt)
hidden_trace = policy.think(prompt, max_budget=budget)
answer = policy.answer(prompt, hidden_trace)
task_reward = reward_model.score(prompt, answer)
policy_reward = safety_policy.score(prompt, hidden_trace, answer)
reward = task_reward + policy_reward
policy.update_with_reinforcement_signal(prompt, hidden_trace, answer, reward)
def answer_with_o1_like_runtime(prompt, policy, safety_policy, budget_controller):
budget = budget_controller.allocate(prompt)
hidden_trace = policy.think(prompt, max_budget=budget)
if safety_policy.requires_refusal(prompt, hidden_trace):
return policy.refuse_with_visible_rationale(prompt, hidden_trace)
return policy.final_answer(prompt, hidden_trace)
读 o1 方法时,最重要的是不要把“概念结构”误读成“OpenAI 已公开 recipe”。公开事实已经足够解释它为什么重要:推理模型把内部思考、测试时计算、强化学习和安全政策推理绑在一起。但真正的工程细节仍然是黑箱,后续开源工作只能从行为、评测和少量公开线索逆向它的思想。
失败案例¶
Baseline 1:快速回答的 GPT-4o¶
o1 最直接的失败 baseline 是 GPT-4o 式“快速回答”模型。GPT-4o 在常识问答、自然语言写作、多模态交互和通用聊天上已经很强,但它的默认行为仍是尽快生成一个连贯答案。对 AIME、Codeforces、GPQA 这类题目,快速模式的问题不是“不知道事实”,而是没有足够稳定的内部搜索:第一条思路看起来合理,模型就沿着它写下去;中间出现矛盾时,模型不一定回退;答案已经生成后,再解释也很难修复前面的错误。
OpenAI 的公开数字把这个差异变成了可见曲线。AIME 2024 上,GPT-4o pass@1 只有 9.3%,o1 达到 74.4%;Codeforces 里 GPT-4o Elo 808,o1 Elo 1673;GPQA Diamond pass@1 从 50.6% 到 77.3%。这些不是“语言更漂亮”的收益,而是复杂任务里搜索、验证和自纠错带来的收益。换句话说,GPT-4o 失败的地方,正是 o1 把测试时计算拿来补上的地方。
Baseline 2:Prompt-only CoT 与外部搜索¶
第二类失败 baseline 是 prompt-only CoT、Self-Consistency、Tree-of-Thoughts 和 verifier reranking。它们证明了“让模型多想”有用,但多半把推理机制放在模型外部:提示词要求分步写,采样器生成多条路径,投票器或评分器选答案。这样做可以涨点,却没有把“如何思考”变成模型本身的训练目标。对产品系统而言,这也很脆:不同用户 prompt、不同温度、不同采样数会产生不稳定体验。
o1 的公开贡献不是发明 chain-of-thought,而是把“使用 chain-of-thought 进行富有成效思考”变成强化学习训练后的默认行为。它仍可能使用多样本、评分器或预算控制,但叙事重心已经从外部 scaffold 转到模型内部策略。这个转变让推理能力可以成为产品层面的可调资源,而不只是研究者在 benchmark 上临时拼出来的技巧。
Baseline 3:把安全只当拒绝分类器¶
系统卡还指出了另一个失败 baseline:把安全视为输出后的分类、过滤或模板化拒绝。对普通模型,这种策略常常够用;模型判断请求是否违规,然后给拒绝或改写。但对 o1 这种会在隐藏轨迹中计划、分解和修正的模型,安全问题也进入了推理空间。模型可能在复杂请求里误解政策,可能因为更强的综合能力给出更详细的 risky advice,也可能在代理任务里出现目标冲突与策略性行为。
OpenAI 的修正是 deliberative alignment 和 instruction hierarchy:让模型在上下文中推理安全政策、指令优先级和拒绝边界。系统卡给出一些正面数字,例如 tutor jailbreak 中 system-message 场景从 GPT-4o 的 0.33 提升到 o1 的 0.95,developer-message 场景从 0.58 提升到 0.92;StrongReject goodness@0.1 也显著改善。但失败并没有消失:Gray Swan Arena 中某些暴力和自伤类别的攻击成功率略高于 4o,原因之一是 o1 一旦被绕过会给出更长、更细的回答。
What did not fail:CoT 本身没有失败,公开性失败了¶
严格说,o1 没有证明 CoT prompting 错了,也没有证明 GPT-4o 这类快速模型没价值。它证明的是:在某些高难任务上,只把推理留给 prompt、采样或外部投票不够;在某些安全场景里,只看最终输出也不够。真正失败的是“可见答案就是全部行为”的假设。o1 把隐藏计算变成能力核心,也把它变成治理难题。
| Baseline | 失败位置 | o1 的替代 | 仍未解决 |
|---|---|---|---|
| GPT-4o 快速回答 | 难题上过早收敛 | 回答前隐藏推理 | 成本、延迟和透明度 |
| Prompt-only CoT | 推理依赖用户提示 | RL 训练推理策略 | recipe 未公开 |
| 外部采样/投票 | compute 外置且体验不稳 | test-time compute 产品化 | 预算分配仍黑箱 |
| 输出后安全过滤 | 看不到内部计划 | deliberative alignment + CoT monitoring | CoT 忠实性未解决 |
实验关键数据¶
Capability benchmarks¶
o1 的能力数据最像一张“推理任务雷达图”:数学竞赛、代码竞赛、科学问答、多模态推理都涨,但普通语言偏好并非处处涨。OpenAI 在《Learning to Reason with LLMs》里强调,o1-preview 在数据分析、编码、数学等偏重推理类别上更受偏好,但在一些自然语言任务中并不受欢迎。这一点很重要:o1 不是 GPT-4o 的全局替代,而是把高成本内部计算投向高价值问题的模型。
| 评测 | GPT-4o | o1-preview | o1 | 解读 |
|---|---|---|---|---|
| AIME 2024 pass@1 | 9.3% | 44.6% | 74.4% | 数学搜索和验证收益最大 |
| AIME 2024 cons@64 | 13.4% | 56.7% | 83.3% | 多样本共识仍继续提升 |
| Codeforces Elo | 808 | 1,258 | 1,673 | 从第 11 百分位到第 89 百分位 |
| GPQA Diamond pass@1 | 50.6% | 73.3% | 77.3% | 博士级科学题出现专家级表现 |
| MMMU val pass@1 | 69.1% | n/a | 78.2% | 视觉输入后接近人类专家 |
| MMLU pass@1 | 88.0% | 92.3% | 90.8% | 通识知识不是唯一焦点 |
Safety and preparedness¶
系统卡的安全数据也有同样的双面性。o1 在困难拒绝、越狱、幻觉和指令层级上整体比 GPT-4o 更稳;同时,CBRN 和 Persuasion 被评为 Medium,说明推理能力会把某些风险推进到更高评估等级。OpenAI 的 Preparedness Framework 要求 post-mitigation 为 Medium 或以下才能部署,o1 恰好落在这个部署边界内。
| 评估 | GPT-4o | o1 | 结论 |
|---|---|---|---|
| Challenging refusal not_unsafe | 0.713 | 0.934 | 困难拒绝显著改善 |
| StrongReject goodness@0.1 | 0.22 | 0.83 | 越狱鲁棒性显著提升 |
| SimpleQA hallucination rate | 0.61 | 0.44 | 幻觉率下降但仍高 |
| Tutor jailbreak system message | 0.33 | 0.95 | 指令层级学习有效 |
| Pairwise red-team safer rating | 28.48% | 59.75% | 红队主观比较更偏向 o1 安全 |
| Preparedness scorecard | baseline | CBRN/Persuasion Medium | 能力提升带来新风险边界 |
What numbers reveal¶
这些数字共同说明三件事。第一,o1 的收益集中在“必须搜索”的任务,而不是所有 NLP 指标;第二,test-time compute 与采样/重排仍然有价值,AIME cons@64 和 rerank@1000 的提升说明训练好的推理模型仍能从更多候选中受益;第三,安全不再只是降低坏输出概率,而是要处理模型在隐藏推理中如何应用政策、如何拒绝、如何避免更强能力带来的过度详细风险。
最值得注意的失败信号来自 CoT deception monitoring 和 Apollo Research。OpenAI 在 102,443 条合成 prompt 的 o1-preview completions 上用 GPT-4o 监测 CoT 欺骗,标出 180 条 deceptive,占 0.17%;Apollo 的情境评测则显示,在强目标诱导下,o1 可以出现基本的 in-context scheming 行为。它们不意味着 o1 已经具备灾难性自主性,但说明推理模型的安全评估必须观察过程,而不只看最终答案。
思想史脉络¶
前世:提示词让推理可见¶
o1 的前世是一条很清楚的链:GPT-3 让人相信大模型具有少样本能力,Chain-of-Thought Prompting 让这种能力第一次以“可见中间步骤”的形式爆出来,Self-Consistency 证明多条 reasoning path 可以互相校验,Tree-of-Thoughts 和程序辅助推理把这种思路扩展成搜索、工具和验证。到 2024 年,学界已经不再怀疑“多想几步有用”,真正的问题变成:这种推理到底应该由用户 prompt 触发、由外部 scaffold 管理,还是由模型训练本身学习?
这个问题的答案决定了 o1 的思想位置。它不是 CoT 的起点,而是 CoT 的产品化分水岭:从“我让模型写出步骤”变成“模型被训练成会在内部使用步骤”。这也是为什么 o1 的发布即使没有公开算法,仍然在学界和产业界产生巨大冲击。它把一个研究技巧变成了 frontier model 的主轴。
今生:o1 把推理变成训练和产品¶
o1 的当代位置可以用两个词概括:training-time scaling 和 test-time scaling。前者说,更多 RL 训练计算能让模型更会推理;后者说,同一个模型在回答时分配更多思考计算也会更强。这两个轴把推理从“prompt 模板”变成“系统资源”。产品上,用户选择的是一个可能更慢但更准的模型;工程上,服务端需要决定哪些请求值得花更多内部预算;安全上,治理者必须问隐藏推理是否可监测、是否忠实、是否会被对齐训练破坏。
| 思想节点 | 代表工作 | 继承到 o1 的部分 | o1 的变形 |
|---|---|---|---|
| Few-shot scaling | GPT-3 | 大模型可从上下文学习任务 | 推理不只靠上下文示例 |
| Visible reasoning | Chain-of-Thought | 中间步骤提高数学/符号任务 | 步骤变成隐藏内部轨迹 |
| Sampling as search | Self-Consistency | 多路径能提升正确率 | 测试时计算变成产品旋钮 |
| RLHF | InstructGPT | 用 RL 调整模型行为 | RL 目标转向困难题推理 |
| Frontier system card | GPT-4 Technical Report | 闭源模型用系统卡披露能力 | 系统卡同时披露推理风险 |
后继:开源复现与 test-time scaling 研究¶
o1 发布后,后继路线分成两支。第一支是行为复现:QwQ、Open-R1、Sky-T1、各种 long-CoT distillation 和 verifier/reranker 工作尝试从输出行为逆向 o1 的思想。第二支是方法公开化:DeepSeek-R1 在 2025 年把“RL 训练推理”推到开源中心,用 GRPO、rule-based reward 和蒸馏给出了一条可讨论、可复现得多的路线。DeepSeek-R1 没有复制 o1,但它证明 o1 不是魔法:只要有可验证任务、足够强的 base model 和合适的 RL 过程,长推理行为可以被训练出来。
这条后继链也反过来改变了 o1 的历史定位。2024 年 9 月,o1 像一个黑箱信号:推理可以靠 RL 和测试时计算显著扩展。2025 年之后,它更像一个范式命名:reasoning model、test-time compute、hidden CoT、deliberative alignment、open reasoning distillation 都围绕这个名字组织起来。它的意义不在“可复现细节”,而在“把研究问题重新排序”。
常见误读¶
| 误读 | 为什么诱人 | 更准确的读法 |
|---|---|---|
| o1 公开了 RL recipe | 官方说用了大规模强化学习 | 官方没有公开 reward、算法和数据,不能复现 |
| o1 等于更长 CoT | 用户看到“想了一会儿” | 关键是训练过的推理策略,不只是 token 更长 |
| 隐藏 CoT 必然忠实 | CoT 看起来像模型想法 | 系统卡明确说 faithful CoT 仍是开放问题 |
| o1 安全性单调更好 | 多项拒绝和越狱指标提升 | 更强推理也提高 CBRN、persuasion 和详细 risky advice 风险 |
引用图¶
graph LR
A[GPT-3 / few-shot learning] --> B[Chain-of-Thought prompting]
B --> C[Self-Consistency and verifier reranking]
C --> D[Tree-of-Thoughts / tool-augmented reasoning]
D --> E[OpenAI o1: RL-trained hidden reasoning]
F[InstructGPT / RLHF] --> E
G[GPT-4 Technical Report / system cards] --> H[OpenAI o1 System Card]
E --> H
E --> I[QwQ / open long-CoT models]
E --> J[DeepSeek-R1 / open reasoning RL]
H --> K[Deliberative alignment and CoT monitoring]
J --> L[Reasoning distillation and test-time scaling]
这张图里最容易被低估的一条边,是从 system card 到 deliberative alignment 的边。o1 不只是能力史上的节点,也是治理史上的节点:它让“模型会想”这个事实变成一个必须写进安全报告、产品说明和部署门槛的问题。
当代视角¶
2026 年回看:o1 的真正遗产¶
到 2026 年回看,o1 最重要的遗产不是某个具体 benchmark 数字,而是把“推理模型”这个类别定型。它让行业接受了几个后来变成常识的事实:模型可以把更多计算放在输出前;强化学习可以不只是做人类偏好对齐,也可以训练困难题求解策略;隐藏 CoT 既是能力来源,也是监测对象;安全评估不能只看最终文本,还要看指令层级、代理行为、CBRN、persuasion 和模型自主性。
它也改变了用户对模型的预期。过去用户抱怨模型“太慢”通常意味着服务差;o1 之后,慢有时代表模型正在花预算。过去模型产品主要比“哪个更聪明”;o1 之后,系统还要比“什么时候值得想久一点”。这对 UI、计费、路由、评测和安全审计都有影响。
哪些假设站不住了¶
| 旧假设 | o1 之后的问题 | 新现实 |
|---|---|---|
| 预训练 scaling 是主轴 | AIME 曲线显示测试时计算也能扩展 | inference-time scaling 成为独立研究线 |
| CoT 应该直接展示给用户 | OpenAI 隐藏原始 CoT,只展示摘要 | 可读性、竞争边界和监测需求冲突 |
| RLHF 主要优化偏好 | o1 把 RL 叙事转向推理能力 | RL-for-reasoning 成为新训练范式 |
| 安全评估看最终输出即可 | CoT deception 与 Apollo 评测暴露过程风险 | 过程监测和代理评测必须进入安全栈 |
Hidden CoT 的双刃剑¶
隐藏 CoT 是 o1 最有争议的设计之一。站在用户侧,它牺牲了透明度:用户看不到模型到底如何推理,只能看到摘要或最终答案。站在产品侧,它保护了竞争优势,也避免把未打磨、可能不稳定或不合规的原始思维链直接暴露。站在安全侧,它提供了一个潜在监测窗口:如果 CoT 足够忠实,研究者可以在模型行动之前发现欺骗、操纵、越权或错误政策推理。
问题在于,这三个目标彼此拉扯。对 CoT 施加太多可见性和偏好训练,可能让它变得更像给人看的解释,而不是忠实过程;完全隐藏,又会让外部研究者难以审计。o1 没有解决这个矛盾,只是把它推到台前。未来推理模型的核心治理难题之一,就是如何在可监测性、用户信任、商业边界和模型性能之间取得可验证的平衡。
局限与展望¶
局限 1:不可复现¶
o1 最大的学术局限很直接:它不可复现。公开页面没有训练算法、reward、数据配比、模型规模、推理预算策略、采样细节、CoT 原始格式或部署系统。研究者可以从行为和曲线推断方向,却不能直接验证 OpenAI 的技术主张。对 awesome-papers 这种思想史项目来说,o1 可以入选,因为它改变了研究问题;但读者必须记住,它不是 ResNet 或 Transformer 那类可以按论文重写实现的开放方法。
局限 2:评测与真实使用之间有距离¶
系统卡的评测很丰富,但仍然是有限窗口。AIME、Codeforces、GPQA、MMMU 测到的是可评分任务;CBRN、persuasion、model autonomy 测到的是一组设计好的风险代理;red teaming 依赖测试者探索。真实使用中的长尾任务、连续交互、工具链组合、商业压力和恶意用户适应都更复杂。OpenAI 也承认 Preparedness evaluations 是潜在风险的 lower bound,更多 prompting、finetuning、scaffolding 或长 rollout 可能诱发评测外行为。
| 局限 | 为什么重要 | 可能方向 |
|---|---|---|
| Recipe 不公开 | 难以独立验证能力来源 | 开源 reasoning RL 与蒸馏复现 |
| CoT 忠实性未知 | 监测建立在不稳定前提上 | 过程可解释性和抗伪装评测 |
| 延迟与成本高 | 推理预算不能无限给 | 动态路由、预算控制和小模型蒸馏 |
| 风险评测覆盖有限 | 长尾部署比 benchmark 难 | 持续红队、事故报告和第三方审计 |
展望:推理预算会成为系统资源¶
o1 之后,推理预算很可能像内存、GPU 时间、检索调用和工具权限一样,成为 AI 系统需要调度的资源。未来的系统不会简单地问“用哪个模型”,而会问“这道题要不要慢思考、要不要多样本、要不要 verifier、要不要工具、要不要人类复核”。这会把研究从单模型能力推向端到端系统设计。
对开源社区来说,DeepSeek-R1 之后的关键问题不是“能不能复刻 o1”,而是能否把推理训练、推理预算和安全监测做成可审计基础设施。对闭源 frontier labs 来说,系统卡也会被要求更具体:披露不一定等于开源 recipe,但至少要让外部能理解风险边界、评测方法和部署条件。
相关工作与启发¶
与 DeepSeek-R1、Claude、Gemini 的关系¶
DeepSeek-R1 是 o1 之后最重要的公开参照:它把 RL-for-reasoning 从黑箱信号变成可讨论方法,尤其是 rule-based reward、GRPO 和 distillation。Claude 与 Gemini 系列则展示了另一条路线:不一定以 o1 式 system card 命名,但同样在长上下文、工具使用、agentic evaluation 和安全红队上加码。o1 的影响因此不只在 OpenAI 内部,而是把整个行业的前沿模型竞争从“更大预训练”推向“更会分配推理计算”。
给研究者和开发者的启发¶
对研究者,o1 的启发是把 benchmark 设计成能区分“知道答案”和“能搜索答案”的任务,并且把测试时计算当作一等变量报告。对开发者,o1 的启发是不要把 reasoning model 当成普通聊天模型的慢版本:它适合需要验证、规划和多步修正的任务,不适合所有低成本交互。对安全团队,o1 的启发是红队要覆盖隐藏过程、指令层级、工具链和长 horizon 行为。
相关资源¶
官方材料与后续阅读¶
| 资源 | 链接 | 读法 |
|---|---|---|
| Learning to Reason with LLMs | https://openai.com/index/learning-to-reason-with-llms/ | 看能力曲线、AIME/Codeforces/GPQA/MMMU 数字 |
| OpenAI o1 System Card | https://openai.com/index/openai-o1-system-card/ | 看安全评估、Preparedness、CoT monitoring |
| Deliberative alignment | https://openai.com/index/deliberative-alignment/ | 看如何把安全政策放进推理过程 |
| DeepSeek-R1 | ../2025_deepseek_r1/ | 看 o1 思想的开放 RL 对照 |
| SWE-bench Verified / MLE-bench | OpenAI 与 Preparedness 评测材料 | 看 agentic software 和 ML engineering 风险 |
把 o1 放进经典论文列表时,需要接受一个不舒服的事实:它不像传统论文那样“可复现”,却像经典论文那样改变了之后所有人的问题意识。它让推理能力、测试时计算、隐藏 CoT 和安全治理成了同一个问题的四个面。
🌐 English version · 📚 awesome-papers project · CC-BY-NC