TensorFold TP2エンジンを使い、2台のNVIDIA DGX Spark(GB10)ノードにまたがるテンソル並列でDeepSeek-V4.1-Flash-1017を提供するためのレシピです。
microsoft/onnxruntime-genai
ONNX Runtime上で生成AIモデルを実行し、LLMの生成処理全体を担う、Python、C#、Javaバインディング付きのC/C++ライブラリ。
- スター
- 1,153
- フォーク
- 383
- 未解決の Issue
- 276
- 最終コミット
- 2 時間前
これは何?
ONNX Runtime GenAIは、ONNX Runtimeで生成AIモデルを実行するためのライブラリです。ONNXモデルの生成ループを実装し、前処理・後処理、推論、logits処理、探索とサンプリング、KVキャッシュ管理、ツール呼び出し用の文法定義をカバーします。
Llama、Phi、Qwen、Gemma、Mistral、DeepSeek、Whisperなど幅広いモデルファミリーに対応し、Python、C#、C/C++向けのAPIを提供します。Javaはソースからビルドした場合に利用できます。Linux、Windows、Mac、Androidで動作し、CPU、CUDA、DirectML、OpenVINO、QNN、WebGPUなどのアクセラレーターを利用できます。
マルチLoRAアダプター、連続デコーディング、制約付きデコーディングも提供します。READMEによると、Foundry Local、Windows ML、Visual Studio Code AI Toolkitで採用されています。
主な機能
- 01サンプリングやKVキャッシュ管理を含め、ONNX LLMの生成ループ全体を実装します。
- 02Python、C#、C/C++向けAPIを提供し、ソースからビルドすればJavaも利用できます。
- 03x86、x64、arm64上でLinux、Windows、Mac、Androidに対応します。
- 04CUDA、DirectML、OpenVINO、QNN、WebGPUなどを通じたハードウェアアクセラレーションに対応します。
- 05マルチLoRA、連続デコーディング、制約付きデコーディングを提供します。
ユースケース
- PhiやLlamaなどの小規模言語モデルを、ノートPCやデバイス上でローカル実行する。
- ONNX Runtimeを使って、C#アプリケーションやWindowsアプリケーションにLLM推論を組み込む。
- 単一のコードベースで、異なるベンダーのNPUやGPU上に量子化モデルをデプロイする。
- 生成時に構造化出力やツール呼び出しの文法を適用する。
クイックスタート
- 1
Hugging FaceからPhi-3モデルをダウンロードする
huggingface-cli download microsoft/Phi-3-mini-4k-instruct-onnx --include cpu_and_mobile/cpu-int4-rtn-block-32-acc-level-4/* --local-dir . - 2
numpyをインストールする
pip install numpy - 3
onnxruntime-genai Pythonパッケージをインストールする
pip install --pre onnxruntime-genai - 4
READMEにあるPythonサンプルをスクリプトとして保存し、実行してテキストを生成する
使う前に知っておきたいこと
- Javaバインディングを使用するには、ソースからビルドする必要があります。
- mainブランチのサンプルは、最新の安定版リリースと一致しない場合があります。
トピック
よくある質問
- onnxruntime-genai とは?
- ONNX Runtime上で生成AIモデルを実行し、LLMの生成処理全体を担う、Python、C#、Javaバインディング付きのC/C++ライブラリ。 ONNX Runtime GenAIは、ONNX Runtimeで生成AIモデルを実行するためのライブラリです。ONNXモデルの生成ループを実装し、前処理・後処理、推論、logits処理、探索とサンプリング、KVキャッシュ管理、ツール呼び出し用の文法定義をカバーします。
- onnxruntime-genai は無料で使えますか?ライセンスは?
- onnxruntime-genai は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- onnxruntime-genai は今もメンテナンスされていますか?
- 活発にメンテナンス中。onnxruntime-genai の最終コミットは 2026年11月7日 です。
- onnxruntime-genai は何に使えますか?
- PhiやLlamaなどの小規模言語モデルを、ノートPCやデバイス上でローカル実行する。 ONNX Runtimeを使って、C#アプリケーションやWindowsアプリケーションにLLM推論を組み込む。 単一のコードベースで、異なるベンダーのNPUやGPU上に量子化モデルをデプロイする。 生成時に構造化出力やツール呼び出しの文法を適用する。
- onnxruntime-genai のインストール方法は?
- Hugging FaceからPhi-3モデルをダウンロードする: huggingface-cli download microsoft/Phi-3-mini-4k-instruct-onnx --include cpu_and_mobile/cpu-int4-rtn-block-32-acc-level-4/* --local-dir . numpyをインストールする: pip install numpy onnxruntime-genai Pythonパッケージをインストールする: pip install --pre onnxruntime-genai READMEにあるPythonサンプルをスクリプトとして保存し、実行してテキストを生成する
- onnxruntime-genai はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/microsoft/onnxruntime-genai
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
AIモデルの推論API、マルチモデルパイプライン、LLMアプリの構築・提供に使えるPythonライブラリ。DockerやKubernetesへのデプロイにも対応。
モデルのファインチューニング、変換、量子化を組み合わせ、CPU、GPU、NPU向けに最適化されたONNXモデルを生成するPythonツールキット。
量子化、プルーニング、スパース化でニューラルネットワークを圧縮し、OpenVINO、PyTorch、ONNXでの推論を高速化するPythonフレームワーク。
TensorRT、PyTorch、ONNX、OpenVINOなどのAIモデルをHTTP/RESTとgRPCでデプロイできるオープンソース推論サーバー。
PyTorch、TensorFlow、ONNXなどの深層学習モデルをHTTPエンドポイント経由で提供する、Javaベースのスタンドアロンモデルサービングソリューション。