LLMs之phi系列:phi-4的简介、安装和使用方法、案例应用之详细攻略
目录
Phi-4 简介
2024年12月12日,Phi-4 是一个最先进的开源模型,它结合了合成数据集、经过严格过滤的公共领域网站数据以及获取的学术书籍和问答数据集进行训练。这种方法旨在确保小型高效的模型能够利用高质量数据进行训练,并具备高级推理能力。Phi-4 经过严格的增强和校准流程,结合了监督微调和直接偏好优化,以确保精确遵循指令和强大的安全措施。
huggingface:https://huggingface.co/microsoft/phi-4
论文:[2412.08905] Phi-4 Technical Report
1、模型架构
参数量:140 亿
架构:密集解码器型 Transformer 模型
输入:文本,最适合聊天格式的提示
上下文长度:16K 个标记
训练数据:9.8 万亿个标记
训练时间:21 天
训练GPU:1920 个 H100-80G
2、预期用途
Phi-4 主要用于加速语言模型的研究,作为生成式 AI 功能的构建块。它适用于需要以下条件的通用 AI 系统和应用程序(主要为英语):
>> 内存/计算受限的环境
>> 延迟敏感的场景
>> 推理和逻辑能力
>> 不适用场景:
3、Phi-4的特点
Phi-4 未针对所有下游用途进行专门设计或评估,因此:
开发者在选择用例时应考虑语言模型的常见局限性,并在使用前评估和减轻准确性、安全性和公平性问题,尤其是在高风险场景中。
开发者应了解并遵守与其用例相关的适用法律法规(包括隐私、贸易合规法律等),包括模型对英语的关注。
模型卡中任何内容都不应被解释为或被视为对模型发布所依据的许可证的限制或修改。
4、训练数据集
Phi-4 的训练数据是 Phi-3 数据的扩展,包括各种来源的数据:
>> 经过严格质量过滤的公共文档
>> 精选的高质量教育数据和代码
>> 新创建的合成“教科书式”数据,用于教授数学、编码、常识推理以及对世界的一般知识(科学、日常活动、心智理论等)
>> 获取的学术书籍和问答数据集
>> 高质量的聊天格式监督数据,涵盖各种主题,以反映人们对指令遵循、真实性、诚实性和帮助性等不同方面的偏好
>> 多语言数据约占总数据的 8%。
5、安全措施
Phi-4 采用了强大的安全后训练方法,结合了监督微调 (SFT) 和迭代直接偏好优化 (DPO),并使用了公开可用的数据集以及针对多个安全类别的各种问题和答案。 发布前,Phi-4 进行了多方面的评估,包括定量评估(使用多个开源安全基准和内部工具)和定性评估(与微软的独立 AI 红队 (AIRT) 合作)。
6、模型质量
通过 OpenAI 的 SimpleEval 基准测试和其他基准测试(MMLU、MATH、GPQA、DROP、MGSM、HumanEval、SimpleQA)与其他模型进行了比较,在多个类别中展现了强大的性能。
Phi-4 安装和使用方法
1、安装
Hugging Face 提供了通过 transformers 库使用 Phi-4 的方法:
import transformers
pipeline = transformers.pipeline(
"text-generation",
model="microsoft/phi-4",
model_kwargs={"torch_dtype": "auto"},
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a medieval knight and must provide explanations to modern people."},
{"role": "user", "content": "How should I explain the Internet?"},
]
outputs = pipeline(messages, max_new_tokens=128)
print(outputs[0]["generated_text"][-1])z
这段代码展示了如何使用 transformers 库创建一个文本生成管道,并使用聊天格式的提示与 Phi-4 进行交互。 device_map="auto" 将自动选择合适的设备(CPU 或 GPU)。
Phi-4 案例应用
原始文档中没有提供具体的案例应用,但根据模型的特性,其潜在应用场景非常广泛,例如:
构建需要推理和逻辑能力的聊天机器人
开发需要处理长文本的应用程序
创建需要在资源受限环境中运行的 AI 系统
需要注意的是,Phi-4 主要针对英语进行了优化,其他语言的性能可能较差。 此外,开发者需要谨慎处理模型可能产生的不公平、不可靠或冒犯性内容,并采取相应的安全措施。