许可证: mit
许可证链接: https://huggingface.co/microsoft/phi-4-gguf/resolve/main/LICENSE
语言:
- 英语
任务标签: 文本生成
标签:
- phi
- 自然语言处理
- 数学
- 代码
- 聊天
- 对话式
推理参数:
温度: 0
小部件示例:
- 消息:
- 角色: 用户
内容: 我该如何向别人解释互联网?
库名称: transformers
Phi-4 模型卡片
模型概述
|
|
开发团队 |
微软研究院 |
描述 |
phi-4 是一款基于合成数据集、经过筛选的公共领域网站数据、以及获取的学术书籍和问答数据集的最先进开源模型。该方法的目的是确保小型高效模型通过专注于高质量和高级推理的数据进行训练。
phi-4 经历了严格的增强和对齐过程,结合了监督微调和直接偏好优化,以确保精确的指令遵循和强大的安全措施 |
架构 |
140亿参数,密集解码器专用Transformer模型 |
输入 |
文本,最适合聊天格式的提示 |
上下文长度 |
16K 词元 |
GPU配置 |
1920块H100-80G |
训练时间 |
21天 |
训练数据量 |
9.8万亿词元 |
输出 |
根据输入生成的文本 |
训练周期 |
2024年10月 – 2024年11月 |
状态 |
基于离线数据集训练的静态模型,公开数据的截止日期为2024年6月及之前 |
发布日期 |
2024年12月12日 |
许可证 |
MIT |
预期用途
|
|
主要用例 |
本模型旨在加速语言模型研究,作为生成式AI功能的基础组件。它适用于需要以下条件的通用AI系统和应用(主要为英语):
1. 内存/计算受限环境。 2. 延迟敏感场景。 3. 推理与逻辑。 |
非适用场景 |
本模型并非专为所有下游用途设计或评估,因此:
1. 开发者在选择用例时应考虑语言模型的常见限制,并在用于特定下游用例前评估和缓解准确性、安全性和公平性问题,特别是高风险场景。 2. 开发者应知晓并遵守适用于其用例的法律法规(包括隐私、贸易合规法律等),包括模型对英语的专注。 3. 本模型卡片内容不应被解释为对模型发布许可证的限制或修改。 |
数据概览
训练数据集
我们的训练数据是对Phi-3所用数据的扩展,包含多种来源:
-
经过严格质量筛选的公开文档、精选高质量教育数据和代码。
-
新创建的合成"教科书式"数据,用于教授数学、编程、常识推理、世界常识(科学、日常活动、心理理论等)。
-
获取的学术书籍和问答数据集。
-
涵盖各类主题的高质量聊天格式监督数据,反映人类在指令遵循、真实性、诚实度和帮助性等方面的偏好。
多语言数据约占总体数据的8%。我们专注于可能提升模型推理能力的数据质量,并对公开文档进行筛选以确保知识水平适当。
基准数据集
我们使用OpenAI的SimpleEval和内部基准评估phi-4
,具体包括:
- MMLU: 多任务语言理解的流行综合数据集。
- MATH: 具有挑战性的竞赛数学题。
- GPQA: 复杂的研究生级科学问题。
- DROP: 复杂理解和推理。
- MGSM: 多语言小学数学。
- HumanEval: 功能性代码生成。
- SimpleQA: 事实性回答。
安全性
方法
phi-4
采用了强大的安全后训练方法,结合开源和内部生成的合成数据集。安全对齐技术包括监督微调(SFT)和迭代直接偏好优化(DPO),涵盖针对帮助性和无害性的公开数据集以及多类安全问题问答。
安全评估与红队测试
发布前,phi-4
经过多层面评估:使用开源安全基准和对抗对话模拟的内部工具进行量化评估;与微软独立AI红队(AIRT)合作进行定性评估,测试典型和对抗场景下的安全风险,包括越狱、编码攻击、多轮攻击等。
详情请参阅技术报告。
模型质量
通过OpenAI SimpleEval基准对比phi-4
与其他模型表现(数值越高越好):
类别 |
基准 |
phi-4 (14B) |
phi-3 (14B) |
Qwen 2.5 (14B指导版) |
GPT-4o迷你 |
Llama-3.3 (70B指导版) |
Qwen 2.5 (72B指导版) |
GPT-4o |
流行综合基准 |
MMLU |
84.8 |
77.9 |
79.9 |
81.8 |
86.3 |
85.3 |
88.1 |
科学 |
GPQA |
56.1 |
31.2 |
42.9 |
40.9 |
49.1 |
49.0 |
50.6 |
数学 |
MGSM MATH |
80.6 80.4 |
53.5 44.6 |
79.6 75.6 |
86.5 73.0 |
89.1 66.3* |
87.3 80.0 |
90.4 74.6 |
代码生成 |
HumanEval |
82.6 |
67.8 |
72.1 |
86.2 |
78.9* |
80.4 |
90.6 |
事实知识 |
SimpleQA |
3.0 |
7.6 |
5.4 |
9.9 |
20.9 |
10.2 |
39.4 |
推理 |
DROP |
75.5 |
68.3 |
85.5 |
79.3 |
90.2 |
76.7 |
80.9 |
*注:Meta报告的Llama-3.3-70B在MATH和HumanEval上分数更高(分别为77和88),可能因simple-evals严格的格式要求导致分数差异。
使用方式
输入格式
建议使用以下聊天格式:
<|im_start|>system<|im_sep|>
你是一位中世纪骑士,需要向现代人解释事物。<|im_end|>
<|im_start|>user<|im_sep|>
我该如何解释互联网?<|im_end|>
<|im_start|>assistant<|im_sep|>
使用llama.cpp
按文档安装后,通过以下命令与4位量化版phi-4
交互:
~/llama.cpp/build/bin/llama-cli -m phi-4-q4.gguf -cnv -c 16384 -p "你是一位中世纪骑士,需要向现代人解释事物。"
负责任AI考量
需注意的潜在限制行为包括:
- 服务质量: 主要基于英语训练,其他语言性能较差。
- 偏见与刻板印象: 可能过度代表或强化负面刻板印象。
- 不当内容: 可能生成不适当内容。
- 信息可靠性: 可能生成不准确内容。
- 代码局限性: 主要基于Python常见包,建议人工验证生成的代码。
建议开发者:
- 应用负责任AI最佳实践
- 使用Azure AI内容安全等服务
- 对高风险场景进行额外评估
- 建立透明机制和反馈渠道
- 防范滥用风险
开发者需确保应用符合相关法律法规。