使用 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 開發者部落格

輕鬆下載並執行您的模型!

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 裝置的一些關鍵基準測試資料。

模型 精度 執行提供者 裝置 令牌生成吞吐量 相對於 PyTorch 的加速比
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B fp16 CUDA RTX 4090 197.195 4X
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B Int4 CUDA RTX 4090 313.32 6.3X
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B fp16 CUDA RTX 4090 57.316 1.3X
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B Int4 CUDA RTX 4090 161.00 3.7X
deepseek-ai_DeepSeek-R1-Distill-Qwen-7B Int4 CPU 13th Gen Intel i9 3.184 20X
deepseek-ai_DeepSeek-R1-Distill-Qwen-1.5B Int4 CPU 13th Gen Intel i9 11.749 1.4X

CUDA BUILD SPECS: onnxruntime-genai-cuda==0.6.0, transformers==4.46.2, onnxruntime-gpu==1.20.1
CPU BUILD SPECS: onnxruntime-genai==0.6.0, transformers==4.46.2, onnxruntime==1.20.01

使用 Olive 輕鬆微調您的模型。

筆記本提供了使用 Olive 框架微調 DeepSeek 模型的逐步指南。它涵蓋了設定環境、準備資料以及利用 Azure AI Foundry 最佳化和部署模型的過程。此筆記本旨在幫助您快速高效地開始使用 DeepSeek 和 Olive,使您的 AI 開發過程更順暢、更高效。

總結

使用 ONNX Runtime 最佳化 DeepSeek R1 蒸餾模型可以顯著提升效能。這些最佳化後的模型將很快透過 Azure AI Foundry 提供,並且可以透過命令列或 VS Code AI Toolkit 輕鬆訪問。

透過結合使用 Azure Foundry、AI Toolkit、Olive 和 ONNX Runtime 的 AI 框架解決方案,您將獲得端到端的模型開發體驗。請繼續關注更多關於提升 AI 模型效能的更新和最佳實踐。