核心摘要
OpenAI o1 和 DeepSeek R1 让“为难题分配更多推理计算”成为主流讨论方向。公开资料支持讨论强化学习、验证器、蒸馏和测试时算力,但不能据此断言统一的内部思维链,或保证额外推理能解决所有难题。
📋 目录
- 范式转移:从系统 1 到系统 2 思考
- 推理模型是如何工作的?核心机制解析
- OpenAI o1 架构探秘
- DeepSeek R1:开源推理的突破口
- 测试时算力 (Test-Time Compute) 的威力
- 常见问题 (FAQ)
- 总结
✨ 核心要点
- 额外推理预算:系统可以为特定任务分配更多计算,同时带来成本和延迟权衡。
- 可观测性有限:可见解释不一定是内部计算的完整记录,应依靠结构化输出、外部验证器和结果检查。
- 训练流程不可简化:R1 的公开报告描述了多阶段流程,不能概括为“只有纯 RL”。
- 条件性 Scaling:增加推理计算可能改善部分任务,收益取决于任务、评测器、采样和停止策略。
范式转移:从系统 1 到系统 2 思考
在心理学中,诺贝尔奖得主丹尼尔·卡尼曼将人类的思维模式分为两种:
- 系统 1:快速、本能、自动化(例如脱口而出“2+2=4”)。
- 系统 2:缓慢、深思熟虑、逻辑严密(例如心算“17×24”)。
标准自回归模型和推理系统都可以使用迭代 Prompt、工具、采样和验证器。“系统 1/系统 2”只是教学类比,不是精确的神经机制;普通模型有时能解决难题,推理模型也仍会失败。
推理模型更准确的描述是:经过训练或配置后,会为部分问题分配更多计算。它是否回溯、验证或搜索取决于实现,不能仅凭流畅答案推断。
📝 术语链接:思维链 (CoT) — 一种提示词技术,要求模型在给出最终答案前,先一步一步地写出推理过程。
推理模型是如何工作的?核心机制解析
推理系统可能采用超出传统 SFT -> RLHF 流程的后训练方案,但具体流程取决于模型,必须以模型报告为来源。
1. 隐藏的思维链 (The Hidden Chain of Thought)
向推理模型提问时,服务可能在返回最终文本前分配额外计算。API 可能隐藏、摘要或展示其中一部分,展示内容不应被视为忠实完整的内部轨迹。
- 它首先拆解问题。
- 它提出一个假设(解法 A)。
- 它在内部推演解法 A。
- 类似
等等,这个思路行不通的展示文本只是输出模式,不能证明运行时执行了经过验证的回溯。
隐藏计算的大小、表示形式和可靠性取决于供应商。应用应依靠结构化输出、外部验证器和结果检查,而不是隐藏轨迹。
下面的图是概念性工作流,不代表 o1 或 R1 的私有实现:
2. 大规模强化学习 (Large-Scale RL)
训练推理策略可以组合监督数据、强化学习、验证器、蒸馏等技术。即使人类解答不是原始思维过程,也仍然可以作为训练数据。
因此,研究人员使用了强化学习 (Reinforcement Learning)。他们给模型一道极难的数学题,并配备一个自动验证器(例如一个 Python 脚本,用于检查最终答案是否正确)。
- 如果模型做对了,给予正向奖励。
- 如果做错了,给予惩罚。 奖励设计会塑造被强化的行为;“让我检查一下”不是正确性的可靠指标,必须通过验证器和留出集评估行为是否真的有帮助。
OpenAI o1 架构探秘
虽然 OpenAI 对 o1 系列的具体架构严格保密,但从技术报告和 API 的行为特征中,我们可以窥见几项核心创新:
- 推理期权衡:公开评测显示,额外推理预算可能改善部分任务,但不是普遍单调规律。
- 未公开的内部机制:PRM、隐藏轨迹和搜索策略应标注为假设,除非供应商公开说明。
- 安全不能由模型类别推断:推理模型仍需策略执行、对抗测试和工具边界控制。
DeepSeek R1:开源推理的突破口
DeepSeek R1 发布了公开训练报告和可研究的模型资料。它与 OpenAI o1 的比较取决于检查点、Prompt、采样、工具、日期和基准协议,不能概括为普遍的“追平或超越”。
DeepSeek R1 的训练流水线:
- 基于 DeepSeek-V3 底座:R1 构建在一个极其高效的混合专家 (MoE) 底座模型之上。
- R1-Zero 探索阶段:公开报告描述了不采用同样传统推理热启动的强化学习阶段,以及更长推理轨迹等观察结果。“顿悟时刻”是非正式描述,不是机制性结论。
- 冷启动与蒸馏:公开 R1 流程包含监督数据、强化学习和蒸馏。应以报告和具体模型资料核对,不要假设所有部署都采用同一路径。
# 伪代码:R1 强化学习奖励函数的简化逻辑
def calculate_reward(model_output, ground_truth):
reward = 0
# 1. 准确性奖励 (Outcome Reward)
if extract_final_answer(model_output) == ground_truth:
reward += 10.0
# 2. 格式奖励(仅为示意,不是公开的真实奖励函数)
if "<think>" in model_output and "</think>" in model_output:
reward += 1.0
return reward
测试时算力 (Test-Time Compute) 的威力
训练算力和推理算力是不同的成本与容量决策,不能根据口号推断某个项目的硬件和周期。
推理模型会公开或内部增加推理预算,可能表现为更长生成、多个候选、验证或搜索;产品通常只提供有限的推理档位,并不一定支持任意“思考 30 分钟”的控制。
⚠️ 常见错误:
- 所有任务都使用推理模型 → 正确做法:在翻译、摘要、编程和推理任务上用代表性数据比较质量、延迟、成本和错误恢复,不要采用固定黑名单。
常见问题 (FAQ)
Q1:我能看到 OpenAI o1 隐藏的思维链吗?
不同供应商接口和版本的行为不同。即使出现 <think> 块,它也是生成文本,不代表经过验证或完整的内部轨迹;应核对当前 API 和模型文档。
Q2:为什么推理模型有时候会在句子的中间突然输出“等等,让我重新想想”?
它可能来自学习到的叙述模式、产品渲染或真实的中间计算。单凭这句话无法确定生成原因,也无法证明纠错正确。
Q3:推理模型会取代 AI Agent 吗?
不完全会。Agent 运行时可以把推理模型作为决策组件,而工具和状态仍在模型之外。供应商是否执行内部循环取决于实现;与真实世界交互仍需要显式工具权限和编排。
总结
推理模型展示了为难题分配额外推理计算的价值,但仍是概率系统。生产使用需要固定评测协议、外部验证、有界预算和策略控制;展示出来的思维链不能替代证据。