基础模型:
- microsoft/Phi-4-mini-reasoning
语言:
- en
库名称: transformers
许可证: mit
许可证链接: https://huggingface.co/microsoft/Phi-4-mini-instruct-reasoning/resolve/main/LICENSE
管道标签: text-generation
标签:
- nlp
- unsloth
- math
- code
小部件:
- 消息:
- 角色: 用户
内容: 如何解方程 3x^2+4x+5=1?
模型概述
Phi-4-mini-reasoning 是一个轻量级的开源模型,基于合成数据构建,专注于高质量、密集推理的数据,并进一步微调以提升数学推理能力。该模型属于 Phi-4 模型家族,支持 128K 令牌的上下文长度。
üì∞ Phi-4-mini-reasoning 博客 和 开发者文章
üìñ Phi-4-mini-reasoning 技术报告
üë©‚Äçüç≥ 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 研究员门户或 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 参数的模型在多语言理解和推理能力方面达到了与更大模型相似的水平。然而,由于模型规模的限制,某些任务仍存在根本性限制。模型无法存储太多事实知识,因此用户可能会遇到事实错误。然而,通过使用 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 亿个数学内容令牌。数据集整合了三个主要组成部分:
- 精选的高质量公开数学问题和用于训练基础 Phi-4-Mini 模型的部分 SFT(监督微调)数据;
- 由 Deepseek-R1 模型生成的广泛合成数学数据集,专门用于高质量监督微调和模型蒸馏;
- 一组平衡的正确和错误答案,用于构建偏好数据,旨在通过学习更有效的推理轨迹来增强 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 考虑的更多信息,开发者在