使用 ONNX Runtime 增强 DeepSeek R1 在设备端推理的性能。

作者

Parinita Rahi, Sunghoon Choi, Kunal Vaishnavi, Maanav Dalal

2025年2月19日

您是否是一位开发者,希望利用用户本地计算能力在配备 NPU、GPU 和 CPU 的 PC 上进行 AI 推理?那么就不要再犹豫了!

在新版本中,您现在可以在 CPU 和 GPU 上运行这些模型。您现在可以从 Hugging Face 下载并运行这些模型的 ONNX 优化变体。此外,您还可以在 NPU 上运行这些模型:Windows Developer Blog

轻松下载并运行您的模型!

DeepSeek ONNX 模型使您能够在任何 GPU 或 CPU 上运行 DeepSeek,性能速度比原生 PyTorch 快 1.3 到 6.3 倍。为了轻松开始使用该模型,您可以使用我们的 ONNX Runtime Generate() API。

CPU 快速入门

在虚拟环境中为 CPU 安装 onnxruntime-genai 及其依赖项

python -m venv .venv && source .venv/bin/activate
pip install requests numpy --pre onnxruntime-genai

使用 huggingface cli 直接下载模型

huggingface-cli download onnxruntime/DeepSeek-R1-Distill-ONNX --include "deepseek-r1-distill-qwen-1.5B/*" --local-dir ./

CPU 聊天推理。如果您从 huggingface 拉取了模型,请相应地调整模型目录 (-m)

wget https://raw.githubusercontent.com/microsoft/onnxruntime-genai/refs/heads/main/examples/python/model-chat.py
python model-chat.py -m deepseek-r1-distill-qwen-1.5B/cpu_and_mobile/cpu-int4-rtn-block-32-acc-level-4 -e cpu

有关 GPU (CUDA, DML) 的说明,请参阅此处

ONNX 模型性能提升

ONNX 使您能够在 CPU、GPU、NPU 等设备上运行模型。借助 ONNX,您可以在所有硅芯片(Qualcomm、AMD、Intel、Nvidia)的任何机器上运行模型。有关 Windows GPU 和 CPU 设备的一些关键基准,请参见下表。

模型 精度 执行提供程序 设备 Token 生成吞吐量 相对 PyTorch 的加速
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B fp16 CUDA RTX 4090 197.195 4倍
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B Int4 CUDA RTX 4090 313.32 6.3倍
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B fp16 CUDA RTX 4090 57.316 1.3倍
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B Int4 CUDA RTX 4090 161.00 3.7倍
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B Int4 CPU 第13代 Intel i9 3.184 20倍
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B Int4 CPU 第13代 Intel i9 11.749 1.4倍

CUDA 构建规范:onnxruntime-genai-cuda==0.6.0, transformers==4.46.2, onnxruntime-gpu==1.20.1
CPU 构建规范:onnxruntime-genai==0.6.0, transformers==4.46.2, onnxruntime==1.20.01

使用 Olive 轻松微调您的模型。

notebook 提供了使用 Olive 框架微调 DeepSeek 模型的逐步指南。它涵盖了设置环境、准备数据以及利用 Azure AI Foundry 优化和部署模型的过程。该 notebook 旨在帮助您快速有效地开始使用 DeepSeek 和 Olive,使您的 AI 开发过程更加顺畅和高效。

结论

使用 ONNX Runtime 优化 DeepSeek R1 蒸馏模型可以显著提升性能。这些优化后的模型即将通过 Azure AI Foundry 发布,并且可以通过命令行或 VS Code AI Toolkit 轻松访问。

通过利用我们的 AI 框架解决方案,结合 Azure Foundry、AI Toolkit、Olive 和 ONNX Runtime,您可以获得端到端的模型开发体验解决方案。请继续关注更多关于增强 AI 模型性能的更新和最佳实践。