OWN NEWS GATHER
← 戻る
NVIDIA Technical Blog

NVIDIA、C++とTensorRT RTXによるローカルAIアプリ開発サンプル「DIN Deploy」を公開

要点

  • 米NVIDIAは2026年10月1日、WindowsおよびLinux環境でローカルAI推論を高速化するC++オープンソースサンプル集「Do Inference Now(DIN)Deploy」を公開した。

  • PythonによるONNXエクスポートとC++ネイティブCLIによる推論実行を分離し、モデルごとの独自ランタイムを不要にする構成を採用している。

  • 音声認識(Whisper、Parakeet、Nemotron)、セグメンテーション(SAM 2.1)、画像生成(FLUX.2-klein-4B)の主要AIタスクに対応する。

  • DGX Spark環境での性能検証では、音声認識で実時間の最大206倍、画像セグメンテーションで38.3 FPS(CPU比約76倍)の処理速度を記録した。

  • FLUX.2のサンプルではDirectXやVulkanとのグラフィックス連携に加え、コード改修なしで差し替え可能な量子化モデルの適用例が示された。

  • 米NVIDIAは2026年10月1日、WindowsおよびLinux環境においてローカルAIアプリケーションをC++で構築するためのオープンソースサンプル集「Do Inference Now(DIN)Deploy」を技術ブログで公開した。

  • 同プロジェクトは、機械学習モデルの標準フォーマットであるONNXと推論エンジン「ONNX Runtime」、およびRTX GPU向け高速化バックエンド「NVIDIA TensorRT RTX Execution Provider」を組み合わせ、ハードウェアアクセラレーションを活用したネイティブアプリケーションの実装手順を示すものである。開発者が既存のモデルチェックポイントから、OSネイティブで動作する実用的なローカルAIアプリへ移行する際の橋渡しを担うとしている。

モデルエクスポートとC++推論実行を分離する設計

DIN Deployの各サンプルは、モデルのエクスポート工程とデプロイ工程を明確に分離した設計を採用している。

まず、Python製のエクスポーターがHugging Faceからモデルのチェックポイントをダウンロードし、汎用的なONNXファイルへと変換する。アプリケーション本体側は、ONNX Runtime(機械学習モデルの推論を高速に実行するクロスプラットフォームエンジン)のセッションAPIおよびテンソルAPIを活用したネイティブC++のCLI(コマンドラインインターフェース)として実装されている。この構成により、モデル専用の個別ランタイムを組み込むことなく、エクスポートされたモデルをローカルアプリへ統合できるという。

サンプルコードの大半は標準的なONNX RuntimeのC++ APIで記述されており、CUDA APIや独自カーネルなどの特定ベンダーに依存するコードは、任意の高速化パスにのみ限定されている。また、ONNX Runtimeの「copy tensor API」を利用することで、ベンダー固有のAPIを共有コード内に持ち込むことなく、データの局所性(データ配置の効率化)を管理できる仕組みとなっている。

ビルド環境としては、WindowsおよびLinux(Arm64環境を含む)向けのCMakeプリセットが用意されている。なお、同様のONNX Runtime APIはWindows App SDKの「WinML 2.0」経由でも利用可能とされている(DirectX関連機能はWindowsのみ対応)。

音声認識・画像切り抜き・画像生成の3分野をサポート

リポジトリ内では、実用的な3つのAIタスクに対する実装サンプルが提供されている。

第1に自動音声認識(ASR)では、バッチ処理型のオフライン処理とリアルタイムのストリーミング処理の双方がサポートされている。オフライン文字起こしにはモデルサイズに応じたOpenAIの「Whisper」が用いられ、ストリーミング向けには「NVIDIA Parakeet TDT」および「NVIDIA Nemotron ASR Streaming」のパイプラインが用意された。ネイティブアプリ内で音声データを処理し、GPUアクセラレーションを適用して文字起こし結果を出力する流れが示されている。

第2にコンピュータビジョン分野として、Metaの「SAM 2.1(Segment Anything Model 2.1)」を用いた画像および動画のインタラクティブなマスキング処理に対応する。モデルの出力結果をセグメンテーションマスクへ変換し、ネイティブアプリ側でオブジェクトの選択や追跡といった後続処理に利用できる。

第3に画像生成タスクとして、「FLUX.2-klein-4B」によるプロンプト駆動型の画像生成サンプルが収録されている。このサンプルでは、ONNX Runtime 1.25で導入されたグラフィックス相互運用(graphics interop)機能を活用し、VulkanやDirectXと連携してGPU上のリソースをクロスベンダーのシェーダーインターフェースと統合する手法が実演されている。

さらに、最適化ツール「NVIDIA Model Optimizer」による学習後量子化(PTQ:モデルの精度を維持しながら計算負荷を軽減する技術)の適用例も示された。量子化処理自体はハードウェア依存となるものの、ONNXとしてのインターフェース仕様が変わらないため、アプリケーション側のソースコードに手を加えることなく、量子化済みモデルをそのままドロップインで差し替えて利用できると説明している。

DGX Sparkにおけるベンチマーク性能

NVIDIAは、DIN Deployに含まれる各ワークロードをDGX Sparkシステム上で実行した際のGPUとCPUの性能比較データを公開した。

公開された測定結果によると、音声認識タスク(実時間に対する処理速度倍率)において、オフラインモデルの「Whisper large-v3-turbo」はCPUの3.8倍速に対してGPUで58.5倍速を達成した。ストリーミングモデルでは、「Nemotron-3.5-ASR Streaming(0.6B)」がCPUの3.24倍速に対しGPUで39.01倍速、「Parakeet TDT(0.6B-v3)」ではCPUの14.44倍速に対しGPUで206.41倍速に達したという。

また、画像セグメンテーションモデル「SAM 2.1(Hiera-Base-Plus)」の処理速度については、CPU環境が0.5 FPSにとどまったのに対し、GPU環境では38.3 FPSを記録した。

補足

本サンプル群はGitHubリポジトリ(NVIDIA/din-deploy)にてオープンソースとして提供されており、CMakeプリセットを利用してビルドおよび動作確認を行える。

元URL