OWN NEWS GATHER
← 戻る
NVIDIA Technical Blog

NVIDIA技術ブログが解説、安全にセルフホストできるAIコーディングアシスタントの構築手法と設計思想

要点

  • NVIDIAが自社GPUで動作するAIコーディングアシスタントのセルフホスト手順を解説した。

  • 開発データの保護、嘘の依存パッケージ検知、不具合の追跡という3つの課題を外部システム連携で解決する。

  • 「StarCoder2-7B NIM」や「NeMo Guardrails」などを組み合わせた3層のアーキテクチャを採用している。

  • AIモデルそのものではなく、実績のある既存の外部システムを制御盤とする設計が特徴。

  • 米NVIDIAは2026年7月29日、同社の技術ブログにおいて、自社インフラを活用して安全かつ検証可能なAIコーディングアシスタントをローカル環境にセルフホスト(自社や手元のサーバーでシステムを構築・運用すること)する具体的な構築手順を公開した。この記事では、機密性の高いソースコードを取り扱う組織がAIを導入する際に直面する課題と、それを解決するアーキテクチャの設計思想が紹介されている。

AIコーディングアシスタント導入における3つの障壁

多くの開発現場でAIコーディングアシスタントが導入されているが、セキュリティや規制が厳しい環境ではいくつかの大きな障害が存在する。元記事では、特に解決すべき課題として以下の3つを挙げている。

  1. ソースコードが社外のネットワークに出ていってしまう問題(データの主権)。
  2. AIが存在しない嘘のパッケージ名(ライブラリなどの依存関係)をでっち上げてしまうサプライチェーンのリスク(パッケージのハルシネーション)。
  3. 生成されたコードが原因で不具合が発生した際に、その履歴を監査・追跡できない問題(トレーサビリティの欠如)。

NVIDIAが提案するシステムは、これらの課題を個々の機能や外部システムとの連携によってクリアしていく。

安全性を担保する「3層のアーキテクチャ」

提案されている検証済みコーディングアシスタントは、大きく分けて3つの階層から構成されている。

まず最上流のユーザー環境では、開発者が統合開発環境(IDE)から「NVIDIA NeMo Guardrails」と呼ばれる安全対策のためのプロキシ(通信を代理で中継するサーバー)に向けてリクエストを送る。このプロキシはポート8100で待機しており、送信されたリクエストを検査した上で、問題がなければポート8000で動作する「StarCoder2-7B NIM」というコード生成モデルに転送する仕組みだ。

「NVIDIA NeMo Guardrails」は、AIモデルの入力や出力を監視し、事前に設定したルールに基づいて動作を制限するツールである。例えば、人間だけが編集すべきだと指定した機密ファイルをAIに読み込ませないよう遮断するポリシーを設定できる。これにより、モデル自体のパラメータを書き換えることなく、安全なアクセス制御を実現できる。

CIゲートと監視ループによる二重の防壁

開発者がコードをコミットしてリポジトリにプッシュすると、次にCI(継続的インテグレーション:ソフトウェア開発でビルドやテストを自動化する手法)の検証ゲートへと流れる。

この検証ゲートでは、一般的なテストやSAST(静的アプリケーションセキュリティテスト:プログラムを実行せずに脆弱性を検出する技術)、シークレット情報のスキャンに加え、AIが嘘の依存関係を出力していないかを調べる「ハルシネーション・デペンデンシー・スキャン」やライセンススキャンが実行される。この自動検証を通過した変更だけが、人間のレビュアーによる確認を経てメインコードにマージ(統合)されるため、偽パッケージの混入を未然に防ぐことができる。

さらに、マージされたプルリクエストの情報は、時系列データベースの「Prometheus」とダッシュボードツールの「Grafana」を用いた監視ループへと送られる。ここでは、AIが作成したコードによってバグ(欠陥)がどれだけ本番環境へ流出してしまったかを示す「脱出率(escape-rate)」などが集計・可視化される。もしこの数値が悪化している場合は、そのフィードバックをもとに「NeMo Guardrails」のポリシー設定を厳しく見直すという、継続的な自動改善サイクルが構築される。

外部システムに主権を持たせる設計思想

元記事が強調している重要な設計ポイントは、「AIモデル自体をシステムの制御盤(コントロールプレーン)にしない」というアプローチである。AIモデルはあくまでコードの「提案者」に留め、ポリシーの適用や依存関係の検証、ソースの追跡、結果の測定といったすべての制御・監査は、エンジニアチームがすでに信頼している外部システムで実行する。これにより、何らかのエラーやブロックが発生した際にも原因の特定が容易になり、システム全体の不透明さを排除できるというメリットがある。

構築に必要なハードウェアとシステム要件

このシステムをパイロット運用(お試し導入)するために必要な前提条件も公開されている。

ハードウェアとしては、少なくとも24GBのメモリを搭載したサポート対象のNVIDIAのGPU(A10、L4、L40S、A100など)が必要となる。なお、最も処理性能が高い認定プロファイルはH100やH200だが、初期検証の段階では必須ではないという。

ソフトウェア環境には、NVIDIAのAPIキーである「NGC APIキー」、コンテナ仮想化ツール「Docker」と「NVIDIA Container Toolkit」、さらにPython 3.10以上とテスト用のGitリポジトリが必要とされる。StarCoder2-7Bモデルは、高精度な浮動小数点形式であるBF16(AI分野で広く使われる16ビットの脳浮動小数点データフォーマット)で動作する。

各コンポーネントは独立して導入できるため、既存の開発環境へスモールステップで取り込める点も魅力的なポイントだ。

元URL