- nvidia-container-toolkitをインストールすることは、Dockerとグラフィックハードウェア間の通信を可能にするために不可欠です。
- システムにインストールされているバージョンに応じて、cublasまたはcudaラベルが付いた特定のコンテナイメージを使用します。
- モデルレイヤーをVRAMにオフロードするためのYAMLファイルの詳細な設定。
自宅で独自のAIサーバーをセットアップする場合、プロセッサのみを使用してモデルを実行すると、処理速度が遅いため非常に厄介な問題になることに気づくでしょう。これを回避するには、 LocalAI で NVIDIA GPU を有効にするこれは非常に汎用性の高いツールで、OpenAIと互換性のあるエコシステムを完全に制御でき、外部クラウドへのデータ送信を回避し、トークンコストを節約できます。
このソフトウェアは特別なハードウェアを必要とせずにどのコーヒーメーカーでも実行できますが、 NVIDIA グラフィックス カード 体験は完全に変わります。反応が遅い状態から ほぼ瞬時の推論 これは、コンテナとCUDAコアを接続するソフトウェア層を正しく構成し、VRAMに重い処理を任せることで可能になります。
前提条件と環境準備
LocalAIでNVIDIA GPUをアクティブ化する際にすべてがスムーズに動作するために、単にカードをマザーボードに接続するだけでは不十分です。最初の最も重要なステップは、 nvidia-container-toolkit 正しくインストールする必要があります。このコンポーネントがないと、Dockerは基本的にGPUが利用可能かどうかを検出できず、結果としてLocalAIはデフォルトでCPUを使用するようになります。
お使いのオペレーティングシステムにインストールされているCUDAのバージョンを確認することが重要です。以下のコマンドを実行することで確認できます。 nvidia-smi または nvcc –version ターミナルで実行してください。OpenSUSE Tumbleweedなどのディストリビューションを使用している場合は、安定性を確保するために、公式のNVIDIAリポジトリを追加し、対応する独自のドライバパッケージとコンピューティングユーティリティをインストールする必要があります。
ドライバーがインストールされたら、Docker ランタイムを構成することを強くお勧めします。ツールキット構成を実行する必要があります。 Dockerデーモン.json GPUを認識します。Linux環境によっては、使用しているカーネルのバージョンに応じて、NVIDIAランタイム構成ファイルを調整してcgroupsの使用を無効または有効にする必要がある場合があります。
CUDAアクセラレーションを使用したLocalAIの展開
LocalAI で NVIDIA GPU を正常に有効化するための鍵は、適切なコンテナイメージを選択することです。すべてのイメージが LocalAI それらは同じです。NVIDIAのメリットを享受するには、ラベルが付いているものを探してください。 cublas または gpu-nvidia-cudaお使いのハードウェアによっては、CUDA 11、12、あるいは13に対応したバージョンが必要になる場合があります。
Docker Compose を使用している場合、YAML ファイルには次のセクションを含める必要があります。 資源埋蔵量ドライバーがNVIDIA製であること、および機能にGPUが含まれていることを明記することが不可欠です。シンプルなコマンドラインを使用してコンテナを起動する場合は、フラグを追加することを忘れないでください。 –すべてのGPUそうしないと、グラフィックカードがインストールされていても、システムはそれを無視します。
よりシンプルな体験を求める方には、画像も用意されています。 オールインワン(AIO)これらのバージョンには既にCUDAサポートがプリインストールされており、一部のモデルはテスト可能な状態になっているため、初期設定の手間が大幅に軽減され、nvtopなどのツールでメモリ使用量を確認することで、アクセラレーションが有効になっているかどうかを迅速に確認できます。
高度なモデルとVRAM構成
サーバーが起動したら、LocalAI で NVIDIA GPU を有効にする次のステップは、モデルにどれだけの GPU 使用率を使用するかを正確に伝えることです。これは YAML 設定ファイルで行います。llama.cpp ベースのモデルの場合、キー パラメータは GPUレイヤー大きな数値(例えば999)を入力すると、システムはカードのメモリに可能な限りすべてのレイヤーを読み込むように強制されます。
ディフューザーによる画像生成を行う場合、設定が若干変更されます。オプションを有効にする必要があります。 cuda: true また、複数のグラフィックカードをお持ちの場合は、tensor_parallel_size を調整して、異なるデバイス間でワークロードを分散させることができます。
パフォーマンスを最大限に引き出すには、以下のオプションを有効にすることをお勧めします。 f16: 真 YAMLファイルでは、中精度を使用できるように設定することで、画質を大きく損なうことなくVRAMの消費量を削減できます。さらに、モデルが完全にGPUに依存している場合は、CPUスレッド数を1に設定することで、応答時間を遅くする可能性のあるプロセス管理の競合を防ぐことができます。
一般的な問題の解決と最適化
手順を実行した後でも、システムが初期状態でCPUを使い続けることはよくあります。このような場合は、まず環境変数を有効にしてください。 DEBUG=true ログを分析してください。GPUが検出されない場合は、基本的なUbuntuテストコンテナを使用してnvidia-container-toolkitが正しく応答しているかどうかを確認してください。
LocalAIでNVIDIA GPUをアクティブ化する際によくある問題は、 メモリ不足 (OOM)VRAMがいっぱいになると、推論が停止したり、極端に遅くなったりします。これを解決するには、モデルのコンテキストサイズ(context_size)を小さくするか、量子化バージョン(Q4_K_Mなど)を使用することで、インテリジェンスを大きく損なうことなく、はるかに少ない容量で推論を実行できます。
パフォーマンスが不安定な場合は、 VRAM管理この機能により、LocalAIは非アクティブなモデルをグラフィックメモリからアンロードして他のモデルのための領域を確保できるため、テキストモデルと画像生成モデルを頻繁に切り替える際のワークフローを最適化できます。
要するに、LocalAIでNVIDIA GPUを有効にするには、ホスト上でのドライバのインストール、Dockerツールキットの設定、各モデルのYAMLファイルにおける読み込みパラメータの微調整が必要です。このワークフローに従うことで、従来のマシンを、複雑なLLMから高解像度画像の生成まで、あらゆる処理を驚くほど効率的に行える強力なローカル推論ワークステーションへと変貌させることができます。