HuggingFace镜像/Phi-4-reasoning-plus
模型介绍文件和版本分析
下载使用量0

Phi-4-reasoning-plus 模型卡片

Phi-4-reasoning 技术报告

模型摘要

开发者Microsoft Research
描述Phi-4-reasoning-plus 是一款最先进的开放权重推理模型,它通过在思维链轨迹数据集上进行监督微调以及强化学习,从 Phi-4 模型进一步优化而来。监督微调数据集融合了合成提示与来自公共领域网站的高质量筛选数据,重点关注数学、科学和编码技能,同时包含用于安全和负责任 AI 的对齐数据。这种方法的目标是确保小型高性能模型在训练时使用专注于高质量和高级推理的数据。Phi-4-reasoning-plus 额外经过了强化学习训练,因此具有更高的准确性,但平均会多生成 50% 的 tokens,从而导致更高的延迟。
架构基础模型与先前发布的 Phi-4 相同,拥有 140 亿参数,是密集型仅解码器 Transformer 模型
输入文本,最适合聊天格式的提示词
上下文长度32k tokens
GPU32 张 H100-80G
训练时间2.5 天
训练数据160 亿 tokens,约 83 亿独特 tokens
输出针对输入生成的文本。模型响应包含两个部分,即思维链推理块和总结块
日期2025 年 1 月 – 2025 年 4 月
状态静态模型,基于离线数据集训练,公开可用数据的截止日期为 2025 年 3 月及之前
发布日期2025 年 4 月 30 日
许可证MIT

预期用途

主要使用场景我们的模型旨在加速语言模型研究,用作生成式AI驱动功能的构建模块。它适用于需要以下条件的通用AI系统和应用(主要为英语):

1. 内存/计算资源受限的环境。
2. 延迟受限的场景。
3. 推理和逻辑能力。
超出范围的使用场景本模型仅针对数学推理进行设计和测试。我们的模型并非专门为所有下游用途设计或评估。开发人员在选择使用场景时应考虑语言模型的常见局限性,并在特定下游使用场景中使用前,对准确性、安全性和公平性进行评估和缓解,特别是在高风险场景中。开发人员应了解并遵守与其使用场景相关的适用法律或法规(包括隐私、贸易合规法律等),包括本模型对英语的侧重。选择使用场景时,请查看下文的负责任AI考量部分以获取进一步指导。本模型卡片中的任何内容均不应被解释为或视为对模型发布所依据的许可的限制或修改。

使用方法

[!IMPORTANT]
为充分利用模型的能力,推理时必须使用 temperature=0.8、top_k=50、top_p=0.95 和 do_sample=True。对于更复杂的查询,设置 max_new_tokens=32768 以支持更长的思维链(CoT)。

Phi-4-reasoning-plus 在推理密集型任务上表现出强大性能。在我们的实验中,我们将其最大 token 数量扩展到 64k,它在处理更长序列时取得了令人鼓舞的结果,在扩展输入上保持了连贯性和逻辑一致性。这使其成为探索需要深度、多步骤推理或广泛上下文任务的理想选择。

输入格式

鉴于训练数据的特性,在推理时务必使用 ChatML 模板及以下系统提示词:

<|im_start|>system<|im_sep|>
You are Phi, a language model trained by Microsoft to help users. Your role as an assistant involves thoroughly exploring questions through a systematic thinking process before providing the final precise and accurate solutions. This requires engaging in a comprehensive cycle of analysis, summarizing, exploration, reassessment, reflection, backtracing, and iteration to develop well-considered thinking process. Please structure your response into two main sections: Thought and Solution using the specified format:  {Solution section}. In the Thought section, detail your reasoning process in steps. Each step should include detailed considerations such as analysing questions, summarizing relevant findings, brainstorming new ideas, verifying the accuracy of the current steps, refining any errors, and revisiting previous steps. In the Solution section, based on various attempts, explorations, and reflections from the Thought section, systematically present the final solution that you deem correct. The Solution section should be logical, accurate, and concise and detail necessary steps needed to reach the conclusion. Now, try to solve the following question through the above guidelines:<|im_end|>
<|im_start|>user<|im_sep|>
What is the derivative of x^2?<|im_end|>
<|im_start|>assistant<|im_sep|>

使用 transformers

from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("microsoft/Phi-4-reasoning-plus")
model = AutoModelForCausalLM.from_pretrained("microsoft/Phi-4-reasoning-plus", device_map="auto", torch_dtype="auto")

messages = [
    {"role": "system", "content": "You are Phi, a language model trained by Microsoft to help users. Your role as an assistant involves thoroughly exploring questions through a systematic thinking process before providing the final precise and accurate solutions. This requires engaging in a comprehensive cycle of analysis, summarizing, exploration, reassessment, reflection, backtracing, and iteration to develop well-considered thinking process. Please structure your response into two main sections: Thought and Solution using the specified format:  {Solution section}. In the Thought section, detail your reasoning process in steps. Each step should include detailed considerations such as analysing questions, summarizing relevant findings, brainstorming new ideas, verifying the accuracy of the current steps, refining any errors, and revisiting previous steps. In the Solution section, based on various attempts, explorations, and reflections from the Thought section, systematically present the final solution that you deem correct. The Solution section should be logical, accurate, and concise and detail necessary steps needed to reach the conclusion. Now, try to solve the following question through the above guidelines:"},
    {"role": "user", "content": "What is the derivative of x^2?"},
]
inputs = tokenizer.apply_chat_template(messages, tokenize=True, add_generation_prompt=True, return_tensors="pt")

outputs = model.generate(
    inputs.to(model.device),
    max_new_tokens=4096,
    temperature=0.8,
    top_k=50,
    top_p=0.95,
    do_sample=True,
)
print(tokenizer.decode(outputs[0]))

使用 vllm

vllm serve microsoft/Phi-4-reasoning-plus --enable-reasoning --reasoning-parser deepseek_r1

Phi-4-reasoning-plus 还得到 Ollama、llama.cpp 以及任何 Phi-4 兼容框架的开箱即用支持。

数据概览

训练数据集

我们的训练数据混合了数学、科学和编码领域的问答及聊天格式数据。聊天提示来源于经过筛选的高质量网络数据,并可选择通过合成数据生成管道进行重写和处理。我们进一步纳入了用于提升真实性和安全性的数据。

基准数据集

我们使用开源的 Eureka 评估套件以及我们自己的内部基准对 Phi-4-reasoning-plus 进行了评估,以了解该模型的能力。具体而言,我们在以下方面对模型进行了评估:

推理任务:

  • AIME 2025、2024、2023 和 2022: 数学奥林匹克竞赛题目。

  • GPQA-Diamond: 复杂的研究生级科学问题。

  • OmniMath: 包含 4000 多个带有人工注释的奥林匹克级数学问题的集合。

  • LiveCodeBench: 从竞争性编程竞赛中收集的代码生成基准。

  • 3SAT(3-文字可满足性问题)和 TSP(旅行商问题): 算法问题求解。

  • BA Calendar: 规划。

  • Maze 和 SpatialMap: 空间理解。

通用基准:

  • Kitab: 信息检索。

  • IFEval 和 ArenaHard: 指令遵循。

  • PhiBench: 内部基准。

  • FlenQA: 提示长度对模型性能的影响。

  • HumanEvalPlus: 函数式代码生成。

  • MMLU-Pro: 用于多任务语言理解的流行聚合数据集。

安全性

方法

Phi-4-reasoning-plus 通过监督微调(SFT)采用了稳健的安全后训练方法。该方法利用各种开源和内部生成的合成提示,以及遵循严格的微软安全准则生成的 LLM 响应,例如用户理解与清晰度、安全与道德准则、局限性、免责声明与知识范围、复杂和敏感话题处理、安全与尊重参与、准则保密性和思维链保密性。

安全性评估与红队测试

在发布之前,Phi-4-reasoning-plus 采用了多方面的评估方法。我们使用多个开源安全基准和内部工具(利用对抗性对话模拟)进行了定量评估。在定性安全评估方面,我们与微软的独立 AI 红队(AIRT)合作,评估了 Phi-4-reasoning-plus 在普通用户场景和对抗性用户场景下的安全风险。在普通用户场景中,AIRT 模拟了典型的单轮和多轮交互,以识别潜在的风险行为。对抗性用户场景则测试了多种旨在故意破坏模型安全训练的技术,包括事实准确性、越狱攻击、仇恨与不公平等有害内容、暴力、性内容或自残内容,以及受保护材料的版权侵犯。我们进一步在 Toxigen 基准上对模型进行了评估,该基准旨在衡量针对少数群体的偏见和毒性。

有关安全对齐的更多详细信息,请参阅技术报告。

模型质量

以下是模型在代表性基准上的质量概览。对于下表,数值越高表示性能越好:

AIME 24AIME 25OmniMathGPQA-DLiveCodeBench (8/1/24–2/1/25)
Phi-4-reasoning75.362.976.665.853.8
Phi-4-reasoning-plus81.378.081.968.953.1
OpenThinker2-32B58.058.0—64.1—
QwQ 32B79.565.8—59.563.4
EXAONE-Deep-32B72.165.8—66.159.5
DeepSeek-R1-Distill-70B69.351.563.466.257.5
DeepSeek-R178.770.485.073.062.8
o1-mini63.654.8—60.053.8
o174.675.367.576.771.0
o3-mini88.078.074.677.769.5
Claude-3.7-Sonnet55.358.754.676.8—
Gemini-2.5-Pro92.086.761.184.069.2
Phi-4Phi-4-reasoningPhi-4-reasoning-pluso3-miniGPT-4o
FlenQA [3K-token subset]82.097.797.996.890.8
IFEval Strict62.383.484.991.581.8
ArenaHard68.173.379.081.975.6
HumanEvalPlus83.592.992.394.088.0
MMLUPro71.574.376.079.473.0
Kitab
No Context - Precision
With Context - Precision
No Context - Recall
With Context - Recall

19.3
88.5
8.2
68.1

23.2
91.5
4.9
74.8

27.6
93.6
6.3
75.4

37.9
94.0
4.2
76.1

53.7
84.7
20.3
69.2
Toxigen Discriminative
Toxic category
Neutral category

72.6
90.0

86.7
84.7

77.3
90.5

85.4
88.7

87.6
85.1
PhiBench 2.2158.270.674.278.072.4

总体而言,Phi-4-reasoning 和 Phi-4-reasoning-plus 仅拥有 140 亿参数,却在广泛的推理任务中表现出色,显著优于更大规模的开源模型(如 DeepSeek-R1 蒸馏的 700 亿模型),并接近完整的 DeepSeek R1 模型的性能水平。我们还在多个用于算法问题解决和规划的新型推理基准上测试了这些模型,包括 3SAT、TSP 和 BA-Calendar。这些新任务名义上超出了模型的训练领域,因为训练过程并未特意针对这些技能,但模型仍表现出对这些任务的强大泛化能力。此外,在评估模型在标准通用能力基准(如指令遵循或非推理任务)上的性能时,我们发现尽管后训练阶段专注于特定领域的推理技能,我们的新模型相比 Phi-4 仍有显著提升。

负责任的AI考量因素

与其他语言模型类似,Phi-4-reasoning-plus可能会表现出不公平、不可靠或冒犯性的行为。需要注意的一些局限性行为包括:

  • 服务质量:该模型主要基于英文文本进行训练。非英文语言的性能会较差。在训练数据中代表性较低的英语变体,其性能可能不如标准美式英语。Phi-4-reasoning-plus并非旨在支持多语言使用。

  • 伤害的呈现与刻板印象的延续:这些模型可能会过度或不足地代表某些人群,抹去某些群体的代表性,或强化贬低性或负面的刻板印象。尽管经过了安全训练,由于不同群体的代表性水平不同,或训练数据中反映现实世界模式和社会偏见的负面刻板印象示例的普遍性,这些局限性仍可能存在。

  • 不当或冒犯性内容:这些模型可能会生成其他类型的不当或冒犯性内容,这可能使其在没有针对特定用例的额外缓解措施的情况下,不适用于敏感场景。

  • 信息可靠性:语言模型可能会生成无意义的内容或编造听起来合理但不准确或过时的内容。

  • 选举信息可靠性:该模型在响应选举关键查询时的缺陷率较高,这可能导致呈现不正确或非权威的选举关键信息。我们正在努力改进模型在这方面的性能。用户应向所在地区的选举机构核实与选举相关的信息。

  • 代码适用范围有限:Phi-4-reasoning-plus的大部分训练数据基于Python,并使用常见的包,如typing、math、random、collections、datetime、itertools。如果模型生成的Python脚本使用了其他包或其他语言的脚本,我们强烈建议用户手动验证所有API的使用。

开发人员应应用负责任的AI最佳实践,并负责确保特定用例符合相关法律法规(例如隐私、贸易等)。强烈建议使用具有高级防护措施的安全服务,如Azure AI Content Safety。需要考虑的重要方面包括:

  • 资源分配:如果未经过进一步评估和额外的去偏技术,模型可能不适用于可能对法律地位或资源分配、生活机会(例如住房、就业、信贷等)产生重大影响的场景。

  • 高风险场景:开发人员应评估在高风险场景中使用模型的适用性,在这些场景中,不公平、不可靠或冒犯性的输出可能代价极高或导致伤害。这包括在准确性和可靠性至关重要的敏感或专业领域提供建议(例如法律或健康建议)。应根据部署环境在应用层面实施额外的安全措施。

  • 错误信息:模型可能会产生不准确的信息。开发人员应遵循透明度最佳实践,并告知最终用户他们正在与AI系统交互。在应用层面,开发人员可以构建反馈机制和管道,将响应建立在特定用例的上下文信息之上,这种技术称为检索增强生成(RAG)。

  • 有害内容生成:开发人员应根据其上下文评估输出,并使用适用于其用例的可用安全分类器或自定义解决方案。

  • 滥用:可能存在其他形式的滥用,如欺诈、垃圾邮件或恶意软件制作,开发人员应确保其应用程序不违反适用的法律法规。