语言:
- 英文
库名称: transformers
许可证: mit
许可证链接: https://huggingface.co/microsoft/Phi-4-mini-instruct-reasoning/resolve/main/LICENSE
管道标签: 文本生成
标签:
- 自然语言处理
- 数学
- 代码
小部件:
- 消息:
- 角色: 用户
内容: 如何解方程3x^2+4x+5=1?
模型概述
Phi-4-mini-reasoning是一款轻量级开源模型,基于合成数据构建,专注于高质量、密集推理的数据,并进一步微调以提升高级数学推理能力。该模型属于Phi-4模型系列,支持128K令牌的上下文长度。
üì∞ Phi-4-mini-reasoning博客 和 开发者文章
üìñ Phi-4-mini-reasoning技术报告 | HF论文
üë©‚Äçüç≥ Phi烹饪书
üè° Phi门户
üñ•Ô∏è 试用 Azure
üéâPhi-4模型: [Phi-4-reasoning] | [multimodal-instruct | onnx];
[mini-instruct | onnx]
预期用途
主要用例
Phi-4-mini-reasoning专为在内存/计算受限环境和延迟敏感场景下进行多步骤、逻辑密集的数学问题解决任务而设计。部分用例包括形式化证明生成、符号计算、高级文字问题以及广泛的数学推理场景。这些模型在跨步骤保持上下文、应用结构化逻辑以及在需要深度分析思维的领域中提供准确可靠的解决方案方面表现出色。
用例考虑
该模型仅为数学推理设计和测试。它并非为所有下游用途专门设计或评估。开发者在选择用例时,应考虑语言模型的常见限制以及跨语言性能差异,并在特定下游用例中使用前评估和缓解准确性、安全性和公平性问题,特别是高风险场景。开发者应了解并遵守适用于其用例的相关法律法规(包括但不限于隐私、贸易合规法律等)。
本模型卡中的任何内容均不应解释为或视为对模型发布许可证的限制或修改。
发布说明
此版本的Phi-4-mini-reasoning解决了用户反馈和市场需求,提供了一款紧凑的推理模型。这是一款基于Transformer的紧凑语言模型,专为数学推理优化,旨在在计算或延迟受限的环境中提供高质量、逐步的问题解决方案。该模型通过从更强大的模型(更大、更智能、更准确且更擅长遵循指令)生成的合成数学数据进行微调,从而提升了推理性能。Phi-4-mini-reasoning在推理能力和效率之间取得了平衡,使其可能适用于教育应用、嵌入式辅导以及在边缘或移动系统上的轻量级部署。如果发现Phi-4-mini-reasoning存在关键问题,请通过MSRC Researcher Portal或secure@microsoft.com及时报告。
模型质量
为了了解其能力,将3.8B参数的Phi-4-mini-reasoning模型与一组模型在各种推理基准上进行了比较。模型质量的高级概述如下:
模型 |
AIME |
MATH-500 |
GPQA Diamond |
o1-mini* |
63.6 |
90.0 |
60.0 |
DeepSeek-R1-Distill-Qwen-7B |
53.3 |
91.4 |
49.5 |
DeepSeek-R1-Distill-Llama-8B |
43.3 |
86.9 |
47.3 |
Bespoke-Stratos-7B* |
20.0 |
82.0 |
37.8 |
OpenThinker-7B* |
31.3 |
83.0 |
42.4 |
Llama-3.2-3B-Instruct |
6.7 |
44.4 |
25.3 |
Phi-4-Mini (基础模型, 3.8B) |
10.0 |
71.8 |
36.9 |
Phi-4-mini-reasoning (3.8B) |
57.5 |
94.6 |
52.0 |
总体而言,仅3.8B参数的模型在多语言理解和推理能力方面达到了与更大模型相似的水平。然而,对于某些任务,它仍受限于其规模。该模型没有足够的容量存储过多的事实知识,因此用户可能会遇到事实错误。然而,通过将Phi-4与搜索引擎结合使用,特别是在RAG设置下,可能可以解决这一弱点。
使用方法
分词器
Phi-4-mini-reasoning支持最多200064
个令牌的词汇量。分词器文件已提供可用于下游微调的占位符令牌,但也可以扩展到模型的词汇量大小。
输入格式
鉴于训练数据的性质,Phi-4-mini-instruct模型最适合使用特定格式的提示。以下是两种主要格式:
聊天格式
此格式用于一般对话和指令:
<|system|>你的名字是Phi,一个由微软开发的AI数学专家。<|end|><|user|>如何解方程3*x^2+4*x+5=1?<|end|><|assistant|>
使用transformers进行推理
Phi-4-mini-reasoning已集成到transformers
的4.51.3
版本中。当前transformers
版本可通过以下命令验证:pip list | grep transformers
。Python 3.8和3.10将是最佳选择。所需软件包列表:
flash_attn==2.7.4.post1
torch==2.5.1
transformers==4.51.3
accelerate==1.3.0
Phi-4-mini-reasoning也可在Azure AI Studio中使用。
示例
获取Phi-4-mini-instruct模型检查点后,用户可以使用以下示例代码进行推理。
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
torch.random.manual_seed(0)
model_id = "microsoft/Phi-4-mini-reasoning"
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="cuda",
torch_dtype="auto",
trust_remote_code=True,
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [{
"role": "user",
"content": "如何解方程3*x^2+4*x+5=1?"
}]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_dict=True,
return_tensors="pt",
)
outputs = model.generate(
**inputs.to(model.device),
max_new_tokens=32768,
temperature=0.8,
top_p=0.95,
do_sample=True,
)
outputs = tokenizer.batch_decode(outputs[:, inputs["input_ids"].shape[-1]:])
print(outputs[0])
训练
模型
- 架构: Phi-4-mini-reasoning与Phi-4-Mini共享相同的架构,具有3.8B参数,是一个密集的解码器专用Transformer模型。与Phi-3.5-Mini相比,Phi-4-Mini的主要变化包括200K词汇量、分组查询注意力以及共享的输入和输出嵌入。
- 输入: 文本。最适合使用聊天格式的提示。
- 上下文长度: 128K令牌
- GPU: 128 H100-80G
- 训练时间: 2天
- 训练数据: 150B令牌
- 输出: 生成的文本
- 日期: 2024年2月训练
- 状态: 这是一个静态模型,训练于离线数据集,公开数据的截止日期为2025年2月。
- 支持语言: 英语
- 发布日期: 2025年4月
训练数据集
Phi-4-mini-reasoning的训练数据完全由更强大和更先进的推理模型Deepseek-R1生成的合成数学内容组成。目标是从该模型中提取知识。该合成数据集包含超过一百万个不同难度级别(从中学到博士水平)的多样化数学问题。对于合成数据集中的每个问题,采样了八种不同的解决方案(展开),仅保留已验证为正确的解决方案,结果约为300亿令牌的数学内容。该数据集整合了三个主要组成部分:1)精选的高质量公开数学问题和用于训练基础Phi-4-Mini模型的部分SFT(监督微调)数据;2)由Deepseek-R1模型生成的大量合成数学数据,专门用于高质量监督微调和模型蒸馏;3)一组平衡的正确和错误答案,用于构建偏好数据,旨在通过更有效的推理轨迹增强Phi-4-mini-reasoning的推理能力。
软件
硬件
请注意,默认情况下,Phi-4-mini-reasoning模型使用flash attention,这需要特定类型的GPU硬件来运行。我们已在以下GPU类型上进行了测试:
如果您想在以下GPU上运行模型:
- NVIDIA V100或更早一代GPU:调用AutoModelForCausalLM.from_pretrained()时使用attn_implementation="eager"
安全评估和红队测试
Phi-4系列模型采用了强大的安全后训练方法。该方法利用了各种开源和内部生成的数据集。用于安全对齐的总体技术是结合SFT、DPO(直接偏好优化)和RLHF(人类反馈强化学习)方法,利用人工标注和合成的英语数据集,包括专注于帮助和无害性的公开数据集,以及针对多个安全类别的各种问题和答案。
Phi-4-Mini-Reasoning是根据微软负责任AI原则开发的。使用Azure AI Foundry的风险和安全评估框架评估了模型响应中的潜在安全风险,重点关注有害内容、直接越狱和模型基础性。Phi-4-Mini-Reasoning模型卡包含了关于我们在安全和负责任AI考虑方面的更多信息,开发者在