StepFun-Formalizer: Unlocking the Autoformalization Potential of LLMs Through Knowledge-Reasoning Fusion¶
- 会议: AAAI 2026
- arXiv: 2508.04440
- 代码: stepfun-ai/StepFun-Formalizer
- 领域: 自动形式化 / 数学推理
- 关键词: Autoformalization, Lean 4, 知识蒸馏, 推理模板, RLVR, SFT, 形式化验证
一句话总结¶
提出 ThinkingF 流水线,通过大规模知识蒸馏与模板引导的推理轨迹合成分别增强 LLM 的形式语言领域知识和非形式到形式的推理能力,再经两阶段 SFT + RLVR 融合两种能力,7B/32B 模型在 FormalMATH-Lite 和 ProverBench 上达到 SOTA。
背景与动机¶
自动形式化(Autoformalization)旨在将自然语言数学表述翻译为 Lean 4 等形式语言中的可验证语句。现有方法存在两类典型缺陷:
- 通用大模型缺乏形式语言知识:如 Claude4-thinking 不熟悉 Lean 4 特定定义(如 Euler 函数的形式化表达),导致代码实现错误
- 专用模型缺乏推理能力:如 Kimina-Autoformalizer 在面对复杂自然语言问题时,无法正确理解语境并完成非形式-形式对齐
作者通过 GPT-4o 对约 10K 输出进行错误分类,发现 Kimina-Autoformalizer 在"问题理解错误"和"非形式-形式对齐错误"两类上占比极高,证实了推理能力不足是核心瓶颈。
方法详解¶
总体框架:ThinkingF 流水线¶
ThinkingF 包含 4 个阶段:知识蒸馏与筛选 → 推理数据合成 → 两阶段 SFT → RLVR。
设计一:知识蒸馏与三层质量筛选¶
目标:构建大规模高质量非形式-形式数据对,补充模型的形式语言知识。
- 非形式问题准备:从 NuminaMath-1.5 数据集筛选约 256K 非形式数学问题
- 形式语句生成:用 Kimina-Autoformalizer 为每个问题生成 16 个候选形式语句 \(\{y_{ij}\}_{j=1}^{16}\)
- 三层筛选:
- 语法检查:用 Lean4 REPL 过滤语法错误,保留正确语句 \(\{y_{ij}^*\}_{j=1}^{m_i}\)
- 多数投票:通过 BEq 验证将语句划分等价类,从最大等价类中选取最优形式化:
- LLM 有效性评估:用 DeepSeek-V3 过滤过于简单或包含内在矛盾的语句
最终保留约 183K 对高质量知识数据。
设计二:模板引导的推理轨迹合成¶
目标:为模型注入非形式到形式的推理能力,弥补直接蒸馏推理过程效果差的问题。
推理模板包含两个核心部分:
- 非形式问题理解:重述原始问题 → 分析高层逻辑结构 → 分解数学概念与对象
- 非形式到形式分析:预判形式化中可能遇到的陷阱 → 采用分治范式将自然语言数学对象逐一映射到 Lean 4 形式表达
基于人工标注的非形式-形式对 \(\{(\hat{x}_i, \hat{y}_i)\}\)(来自 MiniF2F、ProofNet、PutnamBench 等,共约 5.8K 条),用 Claude 3.7 Sonnet 按模板生成推理轨迹 \(\hat{c}_i\)。
关键发现:直接从通用推理模型(如 Claude4-thinking)蒸馏推理轨迹效果显著更差,因为通用模型在形式化过程中倾向于"解题"而非"翻译"。
设计三:两阶段 SFT¶
- 第一阶段:用知识数据 \(\{(x_i, y_i)\}\) 微调,输出前插入
<think></think>空标签以保持格式一致性 - 第二阶段:用推理数据 \(\{(\hat{x}_i, \hat{c}_i, \hat{y}_i)\}\) 微调,将推理轨迹包裹在
<think>...</think>中
基座模型选择 DeepSeek-R1-Distill-Qwen(7B / 32B),因其在非形式数学和编码上表现优异。
设计四:RLVR 强化学习¶
使用 BEq 等价验证作为可验证奖励,奖励函数为:
采用 GRPO 算法,结合 DAPO 的动态采样和 token 级损失改进。训练 7B 模型 450 步、32B 模型 350 步后,奖励从 0.232 提升到 0.347,平均 BEq@1 从 0.258 提升到 0.303。
实验结果¶
主要结果对比(BEq@1 / BEq@16,%)¶
| 模型 | FormalMATH-Lite | ProverBench | CombiBench |
|---|---|---|---|
| OpenAI o3-pro | 22.6 / 35.5 | 24.7 / 36.2 | 9.0 / 16.0 |
| Claude4-thinking | 20.8 / 32.2 | 24.4 / 35.6 | 9.7 / 18.0 |
| DeepSeek-R1-671B | 18.4 / 31.3 | 23.5 / 34.5 | 8.1 / 20.0 |
| Kimina-Autoformalizer-7B | 35.1 / 60.2 | 13.3 / 25.3 | 2.6 / 6.0 |
| StepFun-Formalizer-7B | 38.3 / 61.2 | 25.1 / 37.9 | 5.2 / 11.0 |
| StepFun-Formalizer-32B | 40.5 / 59.3 | 26.7 / 38.5 | 6.9 / 14.0 |
消融实验(OOD 基准,BEq@1 / BEq@16,%)¶
| 配置 | ProverBench | CombiBench |
|---|---|---|
| ThinkingF(完整) | 25.1 / 37.9 | 5.2 / 11.0 |
| 去除知识数据 | 24.5 / 37.4 | 3.9 / 10.0 |
| 去除推理数据 | 21.8 / 25.3 | 5.3 / 6.0 |
关键发现¶
- 推理数据是主要贡献者:去除推理数据后 BEq@16 大幅下降(37.9→25.3),说明推理能力对性能上限至关重要
- 知识数据起互补作用:虽单独贡献较小,但与推理数据融合后效果显著
- 模板引导优于直接蒸馏:直接从 Claude4-thinking 蒸馏推理轨迹,BEq@1 在 ProverBench 上从 25.1 降至 21.8
- RL 持续有效:即使在 SFT 已使用的 5.8K 数据上继续 RL,仍带来稳定提升
- 端到端定理证明:用 Kimina-Prover 对 10K 问题验证,StepFun-Formalizer-7B 产生 4940 个可证明语句,优于 Kimina-Autoformalizer-7B 的 4549 个
亮点¶
- 首个结合领域知识与非形式到形式推理的自动形式化训练流水线,填补了通用模型和专用模型各自的能力缺口
- 模板引导推理合成的设计巧妙,避免了通用推理模型"解题而非翻译"的问题
- 7B 小模型超越 671B 通用模型(DeepSeek-R1)在 ProverBench 上的表现,体现了极高的参数效率
- 用 BEq 等价验证作为 RL 奖励信号,实现了可靠的可验证反馈闭环
局限性¶
- 数据量有限:仅 5.8K 推理数据和 183K 知识数据;作者指出 32B 模型需要更多数据才能进一步超越 7B
- 形式语言局限于 Lean 4:未验证在 Coq、Isabelle 等其他形式语言上的泛化性
- CombiBench 表现仍较低:涉及复杂现实场景和长上下文的组合数学问题仍具挑战(7B 仅 5.2%)
- 依赖外部模型:知识蒸馏依赖 Kimina-Autoformalizer,推理合成依赖 Claude 3.7 Sonnet,流水线可复现性受限
- 评估方法局限:BEq 使用
exact?策略进行等价验证,是最严格但可能遗漏语义等价的情况
相关工作¶
- 自动形式化:LeanFormalizer(SFT/PPO)、Kimina-Autoformalizer(专家迭代)、Goedel-Formalizer(人工标注扩展)、Herald-Translator、Mathesis(首个加入 RL 但无推理过程)
- 推理增强 LLM:DeepSeek-R1、OpenAI o1 范式下的领域特化——Fin-R1(金融)、Table-R1(表格)、CodeV-R1(代码验证)、R1-Code-Interpreter
- 定理证明:DeepSeek-Prover-V2、Kimina-Prover、Goedel-Prover
评分¶
⭐⭐⭐⭐ — 方法设计系统且有效,知识-推理双数据流水线思路清晰,实验充分;7B 模型超越 671B 通用模型令人印象深刻;局限在于数据规模偏小且仅支持 Lean 4。