ONNX 模型库
返回模型

说明文档

Phi-3-small-128k-instruct ONNX

本仓库托管了 microsoft/Phi-3-small-128k-instruct 的优化版本,用于通过 DirectML 和 ONNX Runtime 加速推理。 Phi-3-Small-128K-Instruct 是由 Microsoft 开发的最先进的轻量级开源模型,拥有 7B 参数。

主要特性:

  • 参数量:7B
  • 分词器:使用 tiktoken 分词器以改进多语言分词效果,词表大小为 100,352 个 token。
  • 上下文长度:默认上下文长度为 128k token。

注意力机制:

  • 实现了分组查询注意力以最小化 KV 缓存占用,采用 4 个查询共享 1 个键的设计。
  • 使用交替的稠密注意力层和新型块稀疏注意力,在保持长上下文检索性能的同时进一步优化 KV 缓存节省。
  • 多语言能力:额外包含 10% 的多语言数据以增强其在不同语言下的表现。

ONNX 模型

以下是我们添加的一些优化配置:

  • int4 DirectML 的 ONNX 模型: 适用于 Windows 上 AMD、Intel 和 NVIDIA GPU 的 ONNX 模型,使用 AWQ 量化为 int4。
  • int4 CPU 和移动端的 ONNX 模型: 通过 RTN 进行 int4 量化的 CPU 和移动端 ONNX 模型。我们上传了两个版本以平衡延迟与精度。Acc=1 针对更高的精度,而 Acc=4 针对更好的性能。对于移动设备,我们建议使用 acc-level-4 的模型。

使用方法

安装与设置

要在 Windows 上通过 DirectML 使用 Phi-3-small-128k-instruct ONNX 模型,请按照以下步骤操作:

  1. 创建并激活 Conda 环境:
conda create -n onnx python=3.10
conda activate onnx
  1. 安装 Git LFS:
winget install -e --id GitHub.GitLFS
  1. 安装 Hugging Face CLI:
pip install huggingface-hub[cli]
  1. 下载模型:
huggingface-cli download EmbeddedLLM/Phi-3-small-128k-instruct-onnx --include=\"onnx/directml/*\" --local-dir .\Phi-3-small-128k-instruct
  1. 安装必要的 Python 包:
pip install numpy==1.26.4
pip install onnxruntime-directml
pip install --pre onnxruntime-genai-directml
  1. 安装 Visual Studio 2015 运行时:
conda install conda-forge::vs2015_runtime
  1. 下载示例脚本:
Invoke-WebRequest -Uri \"https://raw.githubusercontent.com/microsoft/onnxruntime-genai/main/examples/python/phi3-qa.py\" -OutFile \"phi3-qa.py\"
  1. 运行示例脚本:
python phi3-qa.py -m .\Phi-3-small-128k-instruct

硬件要求

最低配置:

  • Windows: 支持 DirectX 12 的 GPU(AMD/Nvidia/Intel)
  • CPU: x86_64 / ARM64

已测试配置:

  • GPU: AMD Ryzen 8000 系列集成显卡(DirectML)
  • CPU: AMD Ryzen CPU

支持的硬件

该模型已在以下硬件上测试:

  • GPU 型号:RTX 4090(DirectML)

所需最低配置:

  • Windows:支持 DirectX 12 的 GPU,以及至少 10GB 的总 RAM

模型描述

  • 开发者: Microsoft
  • 模型类型: ONNX
  • 编程语言: Python, C, C++
  • 许可证: MIT
  • 模型描述: 这是 Phi-3 Small 128K Instruct 模型的 ONNX Runtime 推理转换版本。

更多详情

许可证

该模型采用 MIT 许可证 授权。

商标

本项目可能包含项目、产品或服务的商标或徽标。经授权使用 Microsoft 商标或徽标须遵守并遵循 Microsoft 商标与品牌指南。在本项目的修改版本中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 的赞助。任何第三方商标或徽标的使用均受该第三方政策的约束。

EmbeddedLLM/Phi-3-small-128k-instruct-onnx

作者 EmbeddedLLM

text-generation
↓ 0 ♥ 0

创建时间: 2024-06-18 11:22:57+00:00

更新时间: 2024-06-18 13:59:22+00:00

在 Hugging Face 上查看

文件 (10)

.gitattributes
README.md
onnx/directml/phi-3-small-128k-instruct-int4/cl100k_base.tiktoken
onnx/directml/phi-3-small-128k-instruct-int4/config.json
onnx/directml/phi-3-small-128k-instruct-int4/genai_config.json
onnx/directml/phi-3-small-128k-instruct-int4/model.onnx ONNX
onnx/directml/phi-3-small-128k-instruct-int4/model.onnx.data
onnx/directml/phi-3-small-128k-instruct-int4/special_tokens_map.json
onnx/directml/phi-3-small-128k-instruct-int4/tokenization_phi3_small.py
onnx/directml/phi-3-small-128k-instruct-int4/tokenizer_config.json