広告枠を募集中 ご相談ください

企業管理者が JetBrains AI Enterprise を設定して Chat リクエストをオンプレミスの OpenAI 互換モデルにルーティングする方法

365Finds Editorial
Wiki 記事 11,430 本収録

あなたの AI で 365 Wiki を使う

下のプロンプトをコピーして、普段使っている AI に貼り付け、そのまま質問してください。

完全版 Skill をダウンロード

まずはプロンプトでお試しください。よく使う場合は完全版 365Wiki Skill をインストールすると、毎回貼り付ける必要がありません。普段使う AI がなければ、Gemini や Microsoft Copilot のウェブ版でも使えます。

金融、防衛、医療、重要インフラなどの厳格なコンプライアンスが求められる業界では、AI 開発支援ツールの導入において重大なデータガバナンスの壁が存在します。GDPR、PCI-DSS、各種情報漏洩防止(DLP)規制により、企業の独自ソースコードや機密ロジックをパブリックなマルチテナントクラウド AI(OpenAI や Anthropic など)へ送信することは固く禁じられています。

この課題を解決するため、JetBrains は集中管理プラットフォーム JetBrains IDE Services を通じて機能を提供する JetBrains AI Enterprise を展開しています。隔離環境やエアギャップ(物理的閉域網)ネットワーク内に IDE Services を構築することで、管理者は自社内で運用する OpenAI 互換エンドポイント(vLLM、llama.cpp、LM Studio、自社製 API ゲートウェイなど)を一元登録し、開発者の JetBrains AI Assistant によるチャットリクエストを完全に社内インフラ内へルーティングできます。

本ガイドでは、JetBrains IDE Services 上でのオンプレミス OpenAI 互換エンドポイントの登録手順、プロファイル(Profiles)を通じた設定配布、およびソースコードの社外流出を確実に防ぐセキュアな運用設計を詳しく解説します。


アーキテクチャの分離:AI Chat とコード補完の役割分担

エンドポイントの設定を始める前に、管理者は JetBrains AI が備える機能の分流構造を理解しておく必要があります。

  1. 対話型 AI Chat およびコンテキストアクション:コードの解説、リファクタリング提案、単体テスト生成、コミットメッセージ作成などの対話型タスクです。これらは標準の OpenAI 互換 HTTP プロトコル(/v1/chat/completions)経由で LLM と通信します。管理者はこれらを社内の推論基盤(Qwen 2.5 Coder、Llama 3.3、DeepSeek Coder などを実行する GPU クラスタ)に自由にルーティングできます。
  2. ネイティブコード補完:インラインの単行および複数行コード補完には極めて低いレイテンシが要求されます。エアギャップ環境において、JetBrains AI Enterprise は社内設置の JetBrains Mellum エンジンを用いてローカル完結型のコード補完を提供します。Mellum は社内の専用 NVIDIA GPU サーバ(L40、H100、H200 等)にデプロイされます。

Chat 処理用の自社 OpenAI 互換モデルと、コード補完用の Mellum を組み合わせることで、完全な閉域網内であっても開発体験を損なうことなく、ソースコードの外部漏洩リスクをゼロに抑えることができます。


前提条件と環境準備

JetBrains IDE Services の管理画面で設定を行う前に、以下のインフラストラクチャが稼働していることを確認してください。


ステップ 1:オンプレミスの OpenAI 互換サーバの検証

社内の推論クラスタが IDE Services サーバから疎通可能であることを確認します。例えば、vLLM を用いてコーディング向けモデルを提供する構成例です。

vllm serve Qwen/Qwen2.5-Coder-32B-Instruct \
  --host 0.0.0.0 \
  --port 8000 \
  --dtype auto \
  --tensor-parallel-size 2 \
  --api-key corp-internal-secret-token \
  --chat-template /path/to/chat_template.jinja

IDE Services のホスト環境または同等の内部ネットワークから、疎通確認とテストリクエストを実行します。

curl -X POST https://ai-gateway.corp.internal/v1/chat/completions \
  -H "Authorization: Bearer corp-internal-secret-token" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "Qwen/Qwen2.5-Coder-32B-Instruct",
    "messages": [{"role": "user", "content": "Ping"}]
  }'

正常な JSON 応答が得られれば、推論エンドポイントの準備は完了です。


ステップ 2:IDE Services で OpenAI Compatible プロバイダーを追加

モデル設定の一元管理は、JetBrains IDE Services の管理 Web UI から行います。

  1. 管理者権限を持つアカウントで JetBrains IDE Services Web UI にログインします。
  2. 左メニューから Configuration(構成)を開き、License & Activation(ライセンスとアクティベーション)タブを選択します。
  3. AI Enterprise セクションまでスクロールし、Settings(設定)をクリックします。
  4. AI Providers(AI プロバイダー)タブを開きます。
  5. Add provider(プロバイダーの追加)をクリックし、一覧から OpenAI Compatible を選択します。
  6. 設定ダイアログで以下の必須項目を入力します。
    • Endpoint:社内モデルゲートウェイまたは推論サーバのベース URL(例: https://ai-gateway.corp.internal/v1 や http://vllm.internal:8000/v1)を入力します。末尾に /chat/completions を付与する必要はありません(クライアント側で自動付加されます)。
    • Authentication / API Key:推論ゲートウェイで設定した Bearer トークンまたは認証キーを入力します。カスタムヘッダー認証を使用している場合は、ヘッダー名と値を指定します。
    • Model Name:推論サーバで提供されているモデル識別子(例: Qwen/Qwen2.5-Coder-32B-Instruct や meta-llama/Llama-3.3-70B-Instruct)を正確に入力します。
    • Tokens:社内 GPU の VRAM 容量やモデル仕様に応じて、Max input tokens(最大入力トークン数)および Max output tokens(最大出力トークン数)を定義します。
  7. Test connection(接続テスト)をクリックし、IDE Services サーバから対象エンドポイントへの到達性と認証の有効性を確認します。
  8. 検証が成功したら Save(保存)をクリックしてプロバイダーを登録します。

ステップ 3:デフォルトプロバイダーの設定と外部アクセスの遮断

組織の開発トラフィックを社内モデルへ強制的に向けるため、デフォルトプロバイダーのポリシーを構成します。

  1. AI Providers タブの一覧で、作成した OpenAI Compatible プロバイダーを確認します。
  2. 対象プロバイダーを Default(デフォルト)に指定します。
  3. パブリッククラウドのプロバイダー(標準の JetBrains AI や OpenAI Platform など)が存在する場合は、デフォルトの指定を外すか無効化します。JetBrains AI がデフォルトに選ばれている場合、システム要件により単一のデフォルトプロバイダーでなければなりません。独自のオンプレミスプロバイダーをデフォルトにする際は、JetBrains AI のデフォルト選択を解除する必要があります。
  4. 社内で JetBrains Mellum を構築している場合は、Code Completion タブを開き、補完エンジンとして Mellum を指定します。
  5. Save をクリックして全体設定を保存します。

ステップ 4:Profiles(プロファイル)の構成とユーザー配布

JetBrains IDE Services は Profiles 機能を介して、IDE のバージョン、導入プラグイン、セキュリティ設定、AI 利用権限を開発者に配信します。

  1. IDE Services Web UI のナビゲーションから Profiles(プロファイル)ページに移動します。
  2. 対象のエンジニアリングチームのプロファイルを選択するか、Create profile から新規作成します。
  3. プロファイル設定内の AI Enterprise セクションを確認します。
  4. 当該プロファイルで AI Enterprise が有効化されていることを確認します。
  5. プロバイダーの選択項目で Default provider(先ほど設定した社内 OpenAI 互換モデル)が適用されていることを確認します。
  6. プロファイルを適切なユーザーグループに関連付けるか、組織全体のデフォルトプロファイルとして設定します。
  7. Save changes(変更を保存)をクリックして配布ポリシーを確定します。

ステップ 5:クライアント IDE での動作確認と設定のロック

ポリシーが公開されると、開発者のローカル環境へ自動的に同期されます。個別の開発者が手動で接続先を入力する必要はありません。

  1. Toolbox App の接続:開発者は自身の端末で JetBrains Toolbox App を起動し、招待リンクまたは社内 SSO で IDE Services サーバにサインインします。
  2. 自動プロビジョニング:Toolbox App が Enterprise モードに移行し、割り当てられたプロファイルを各 IDE(IntelliJ IDEA、PyCharm 等)に適用するとともに、AI Assistant プラグインを自動的に有効化します。
  3. AI Chat ウィンドウでの確認:
    • 開発者が IDE 内で AI Assistant ツールウィンドウを開くと、自動的に社内の推論モデルに接続されます。
    • コードの質問、単体テストの自動生成、リファクタリング提案などのチャット機能が利用可能になります。
    • この際に送受信されるコードスニペットやプロンプトは、すべて社内ネットワーク内のエンドポイントへ直接送信され、社外の通信は一切発生しません。
  4. 設定画面のロック:IDE の Settings | Tools | AI Assistant | Providers & API keys(設定 | ツール | AI Assistant | プロバイダーと API キー)画面において、個別の Bring Your Own Key(BYOK)設定や未承認の外部モデル設定は企業ポリシーによってロックされ、従業員が誤って外部クラウドを利用するリスクが排除されます。

エンタープライズ運用とセキュリティのベストプラクティス

本番環境において安定した運用とコンプライアンスを両立させるために、以下のポイントに留意してください。

プライベート CA 証明書チェーンの配布

エアギャップ環境や厳格な社内 LAN では、内部の認証局(社内プライベート CA)によって署名された TLS 証明書が使用されます。IDE Services のコンテナ基盤および開発者の端末 OS の信頼されたルート証明書ストアに社内 CA ルート証明書を確実にインポートし、SSL/TLS 検証エラーによるストリーミング切断を防いでください。

GPU メモリ管理と同時リクエスト制御

IDE でのチャット対話は、複数ファイルの抜粋や構文ツリーを含むため、プロンプトのコンテキストが長大になりがちです。

監査ログとプロキシの集約

IDE Services と推論クラスタの間に API ゲートウェイ(Envoy、Kong、Nginx など)を配置することを推奨します。API ゲートウェイ側でユーザー ID、タイムスタンプ、トークン消費量を記録することで、金融や防衛の監査要件に準拠した追跡可能性を確保できます。

JetBrains IDE Services を通じて JetBrains AI Enterprise とオンプレミスの OpenAI 互換基盤を連携させることで、組織は機密コードを完全に保護しながら、最新の AI 支援開発による高い開発生産性を安全に享受できます。


参考文献