许可证: mit
许可证链接: https://huggingface.co/microsoft/Phi-4-reasoning/resolve/main/LICENSE
语言:
- 英文
基础模型:
- microsoft/phi-4
任务标签: 文本生成
标签:
- phi
- 自然语言处理
- 数学
- 代码
- 聊天
- 对话
- 推理
推理参数:
温度: 0
示例:
- 消息:
- 角色: 用户
内容: x^2的导数是什么?
库名称: transformers
Phi-4推理模型卡
Phi-4推理技术报告
模型概览
|
|
开发团队 |
微软研究院 |
描述 |
Phi-4推理是基于Phi-4微调的前沿开源推理模型,通过监督微调思维链数据集和强化学习训练而成。监督微调数据集包含合成提示词和来自公共领域网站的高质量过滤数据,聚焦数学、科学和编程技能,以及安全性和负责任AI的对齐数据。该方法旨在确保小型高效模型通过高质量和高级推理数据训练。 |
架构 |
基础模型与先前发布的Phi-4相同,140亿参数,密集解码器专用Transformer架构 |
输入 |
文本,最适合聊天格式的提示 |
上下文长度 |
32k词元 |
GPU配置 |
32块H100-80G |
训练时长 |
2.5天 |
训练数据 |
160亿词元,约83亿唯一词元 |
输出 |
根据输入生成的文本。模型响应分为两部分:思维链推理模块和总结模块 |
训练周期 |
2025年1月 – 2025年4月 |
状态 |
基于离线数据集训练的静态模型,公开数据截止至2025年3月及之前 |
发布日期 |
2025年4月30日 |
许可证 |
MIT |
使用场景
|
|
主要用途 |
本模型旨在加速语言模型研究,作为生成式AI功能的构建模块。适用于需要以下特性的通用AI系统和应用(主要为英文场景):
1. 内存/计算受限环境 2. 延迟敏感场景 3. 逻辑推理 |
非适用场景 |
本模型专为数学推理设计测试。开发者应注意语言模型的通用限制,在高风险场景中需额外评估准确性、安全性和公平性。使用时应遵守相关法律法规(如隐私、贸易合规等),尤其注意模型仅针对英语优化。请参阅下方"负责任AI注意事项"章节获取更多指导。本模型卡内容不应被解释为对模型许可证的限制或修改。 |
使用方法
[!重要提示]
为充分发挥模型能力,推理时必须设置temperature=0.8
、top_k=50
、top_p=0.95
和do_sample=True
。复杂查询建议设置max_new_tokens=32768
以支持长思维链(CoT)。
输入格式
根据训练数据特性,必须使用ChatML模板并包含以下系统提示:
<|im_start|>system<|im_sep|>
您是由微软训练的语言模型Phi,旨在帮助用户。作为助手,您需要通过系统化思考流程深入分析问题,最终提供精确解答。这需要包含分析、总结、探索、复核、反思、回溯和迭代的完整思考周期。请将回答分为两个部分:思考过程(<think>标签内)和解决方案。在思考部分详细分步说明推理过程,每步应包含问题分析、相关发现总结、新思路验证、当前步骤准确性检查等内容。解决方案部分需基于思考部分的探索,系统化呈现最终结论,确保逻辑准确、步骤清晰。请遵循以下格式回答:<|im_end|>
<|im_start|>user<|im_sep|>
x^2的导数是什么?<|im_end|>
<|im_start|>assistant<|im_sep|>
使用transformers
库
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("microsoft/Phi-4-reasoning")
model = AutoModelForCausalLM.from_pretrained("microsoft/Phi-4-reasoning", device_map="auto", torch_dtype="auto")
messages = [
{"role": "system", "content": "您是由微软训练的语言模型Phi..."},
{"role": "user", "content": "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 --enable-reasoning --reasoning-parser deepseek_r1
Phi-4推理还兼容Ollama、llama.cpp等Phi-4适配框架
数据概况
训练数据
训练数据包含数学、科学和编程领域的问答及对话数据,来源包括高质量网络数据过滤和合成数据生成流程。额外添加了提升真实性和安全性的数据。
基准测试
使用Eureka评估套件和内部基准测试模型能力,包括:
推理任务:
- AIME 2022-2025:数学奥赛题
- GPQA-Diamond:研究生级科学问题
- OmniMath:4000+奥数题
- LiveCodeBench:编程竞赛题
- 3SAT/TSP:算法问题
- BA Calendar:规划任务
- Maze/SpatialMap:空间理解
通用基准:
- Kitab:信息检索
- IFEval/ArenaHard:指令遵循
- PhiBench:内部基准
- FlenQA:长提示影响
- HumanEvalPlus:代码生成
- MMLU-Pro:多任务理解
安全性
措施
通过监督微调(SFT)采用严格安全策略,结合开源和内部生成的合成提示,确保符合微软安全准则,包括:用户理解、安全伦理、限制声明、敏感话题处理、安全交互、思维链保密等。
安全评估
发布前通过量化安全基准和对抗对话模拟进行多维度评估。微软AI红队(AIRT)进行了典型/对抗场景测试,覆盖真实性、越狱攻击、仇恨言论、暴力内容、自残诱导、版权违规等风险。另在针对少数群体的Toxigen偏见基准测试表现。
模型质量
关键基准表现(数值越高越好):
|
AIME 24 |
AIME 25 |
OmniMath |
GPQA-D |
LiveCodeBench |
Phi-4-reasoning |
75.3 |
62.9 |
76.6 |
65.8 |
53.8 |
Phi-4-reasoning-plus |
81.3 |
78.0 |
81.9 |
68.9 |
53.1 |
|
FlenQA |
IFEval |
ArenaHard |
HumanEvalPlus |
MMLUPro |
Phi-4-reasoning |
97.7 |
83.4 |
73.3 |
92.9 |
74.3 |
尽管仅140亿参数,Phi-4推理在多项任务上超越DeepSeek-R1蒸馏版70B模型,接近完整版DeepSeek R1表现。在算法问题(3SAT/TSP)和规划任务(BA Calendar)等新领域也展现出强泛化能力。
负责任AI注意事项
需注意的潜在风险包括:
- 服务质量:主要针对英语优化,其他语言性能较差
- 偏见固化:可能强化训练数据中存在的负面社会偏见
- 不当内容:可能生成不适合敏感场景的内容
- 信息可靠性:存在虚构或过时内容风险
- 选举信息:选举相关查询错误率较高,需人工核验
- 代码局限:主要基于Python常见包,其他语言/包需人工验证
建议开发者:
- 高风险场景(法律/医疗等)需额外保障措施
- 使用Azure AI内容安全等服务
- 构建透明机制告知用户正在使用AI系统
- 通过检索增强生成(RAG)等技术增强上下文相关性