株式会社ネットワールドのエンジニアがお届けする技術情報ブログです。
各製品のエキスパートたちが旬なトピックをご紹介します。

世界一簡単かもしれないGitLab Duo Self-hostedの概要と構成例と採用ケース

皆様こんにちは。SEの小池と申します。

2025年2月20日にリリースされたGitLab 17.9で、GitLab Duo Self-Hosted がGAされました。

今回のブログではこの GitLab Duo Self-hosted の概要と構成例と採用ケース をザックリ説明いたします。 (既にGAされてから一か月以上経っていますけれども、筆者はそんなことは気にしないで本記事を書いております。)

特に、コンプライアンス的な理由などで開発環境の構成に制限がある企業様にマッチする機能だと筆者は思います。

本記事の対象の方

  • オンプレミス版であるSelf-managed版GitLabをお使いで、AI支援機能についてご興味がおありの方。
  • GitLab Duo Self-hostedの構成について情報収集なさっている方。
  • Git開発、DevSecOps、CI/CDにおいてAIを活用したいとお考えの方。

今回のブログのゴール

このブログのゴールはこちらです。

今回のゴール
  • GitLab Duo Self-hostedの構成概要を把握する。
  • GitLab Duo Self-hostedを採用するケースを把握する。

事前ご連絡事項

  • 本記事はSelf-managed版のGitLab Enterprise Edition 17.10.0 の仕様に基づき、GitLab Duo Self-hostedの概要とその構成例について記載しております。
  • 本記事は 2025年3月25日 時点の情報をもとに記載しております。この日より後に発生した機能の更新や利用可能なプランの変更については言及しておりません。ご了承ください。
  • 本記事はGitLab Duo Self-hostedの構成にフォーカスしており、本構成をとるために必要なライセンスについてはほとんど言及しておりません。本記事に記載されている構成をとるために必要なライセンスについては、GItLab Duoの公式サイトをご参照いただけますようお願い申し上げます。
  • 本記事に掲載されている情報は正確性・安全性を保証するものではありません。本記事の情報を利用することによって発生した損失や損害については、一切の責任を負いかねます。

GitLab Duo Self-hosted を一言で言うと?

GitLab Duo Self-hostedとは、オンプレミス版Self-managed GitLabのDuoにおいて、GitLab社が用意している共用LLMとは異なる独自のLLMを利用できる構成 です。

SaaS版であるGitLab.comではDuo Self-hosted構成は利用できません。

また、Duo Self-hosted構成を実装するには、Self-managed GitLabは Ultimateティア、GitLabアドオンライセンスとしてGitLab Duo Enterpriseが必須となります。GitLab Duo ProではDuo Self-hosted構成は実装できません。
参考 : GitLab Duo - Pricing | GitLab

なお、もしGitLab Duoをご存じない方は、過去の記事に概要を記しておりますのでご参照ください。

blogs.networld.co.jp

オンプレミス版GitLabにおけるDuo利用時の構成

そもそもの話として、オンプレミス版である Self-managed版GitLabにてDuoを使う場合は、GitLab社が用意しているLLM を使うか、それ以外のLLM を使うかの二択になります。

少なくとも2025年3月25日現在、GitLab社が用意しているLLMと自前のLLMを併用することはできません。
参考 : Configure GitLab Duo on a GitLab Self-Managed instance | GitLab Docs

GitLab社が用意しているLLM を使う場合、雑な構成概念図は以下の通りとなります。
下図の点線で囲われた部分はGitLab社が用意しているリソース (LLMとAI Gateway) を使うので、利用者が何かリソースを用意する必要はありません。必要なのはただ一つ、ネットワーク要件だけです。
なお、余談ではありますが2025年3月25日現在、GitLab社はGoogle Vertex AIを通じてAnthropicのモデルをGitLab Duo用共用LLMとして提供しています。
参考 : GitLab Duo Self-Hosted configuration and authentication - GitLab.com AI gateway | GitLab Docs

GitLab社が用意しているLLM以外のLLM を使う場合、これがGitLab Duo Self-hostedを使った構成となります。雑な概念図は以下の通りとなります。
先ほどの構成とは違い、AI Gateway (これをSelf-hosted AI Gatewayといいます) とLLMを自前で用意する必要があります。
参考 : GitLab Duo Self-Hosted configuration and authentication - Self-hosted AI gateway | GitLab Docs

この場合のLLM部分については、自前でvLLMから用意する場合と、パブリッククラウドサービスの生成AI関連サービスを利用する場合の二択となります。
また2025年3月25日現在、図のSelf-hosted AI Gatewayはコンテナイメージでしか提供されていないため、DockerエンジンやKubernetesを使う必要があります。Self-hosted AI Gatewayがコンテナイメージでしか提供されていない件については、GitLab社に「なんでパッケージ版がないんですか!?」と文句を言ってよいと個人的に思っております。

GitLab Duo Self-hosted 構成例

この章では、GitLab Duo Self-hostedの具体的な構成例を3つ紹介いたします。

なお、ここで紹介した構成例を組み合わせたりすることも可能です。
もしここで紹介されていない構成案で、GitLab Duo Self-hostedで実装可能か否かをお悩みであれば、弊社のフォームからお問合せいただければと存じます。

例) フルオンプレミス構成

贅沢なフルオンプレミス構成です。

ご用意いただく最低限のコンポーネントやサーバーは以下の通りです。

  • GitLab本体 (物理 or 仮想マシン)
  • Self-hosted AI gateway (コンテナとして起動)
  • GitLabでサポートしているLLM (GPU搭載物理マシン)

潤沢な資金が前提となる贅沢な構成です。
開発工程においてすべての通信を社内ネットワーク内に完結させる必要がある 等、特殊な事情がある場合に検討すべき構成の一つです。

例) パブリッククラウド上でフルオンプレミス構成

前述したフルオンプレミス構成の例 を、パブリッククラウド上で実現した場合の構成です。

ご用意いただく最低限のコンポーネントやリソースは以下の通りです。

  • GitLab本体 (パブリッククラウド上の仮想マシン)
  • Self-hosted AI gateway (パブリッククラウド上でなんらかの方法でコンテナとして起動)
  • GitLabでサポートしているLLM (パブリッククラウド上のGPU搭載仮想マシン)

パブリッククラウド上のGPU搭載仮想マシンを使うことができるため、完全オンプレミス構成にするより調達が容易です。 また、業務時間外はGPU搭載仮想マシンの電源を落としたり、利用状況を考慮してマシンサイズを変更したりすることで、コストを最適化することも可能です。

例) パブリッククラウドのAIサービスを利用する構成

AWS Bedrock や Azure OpenAI 等の生成AIサービスでデプロイしたLLMを使う構成です。
GitLab Duo Self-hostedを使った構成の中では簡易的であり、お試しとしても良い構成です。

ご用意いただく最低限のコンポーネントやサーバーは以下の通りです。

  • GitLab本体 (オンプレミス or パブリッククラウド上を問わず)
  • Self-hosted AI gateway (オンプレミス or パブリッククラウド上を問わず)
  • AWS Bedrock や Azure OpenAI等のパブリッククラウドの生成AIサービスでデプロイしたLLM

利用できる生成AIサービスと対応しているモデルはGitLab Docsのこちらをご参照ください。
参考 : Supported GitLab Duo Self-Hosted models and hardware requirements - Supported models | GitLab Docs

前に紹介した二つの構成例と比較すると、LLMに詳しい人材がいなくても気軽に構成することができ、且つ、GPUを搭載したマシンを用意する必要がないためイニシャルコスト および ランニングコストの両面でメリットがあります。

また、パブリッククラウドの仕様によってはLLMのデプロイ先のリージョンを選択できるため、開発に伴う通信を全て国内で完結させるなどのご要件がある場合は、この構成が最も有力な候補となります。

GitLab Duo Self-hosted を採用するケース

この章では、GitLab Duo Self-hosted による構成が採用候補となり得るケースを3つ紹介いたします。

ここで紹介されていないケースで、GitLab Duo Self-hostedの採用についてお悩みであれば、弊社のフォームからお問合せいただければと存じます。

ケース) 全部オンプレミスに用意しなければならない場合

社内の事情で、すべてのサーバーを自社内に配置しなければならない…そんな場合は、Duo Self-hostedを使って豪華なオンプレミスセットをどうぞ。

この場合の構成例は、本ブログで前述致しましたフルオンプレミス構成をご検討いただければと存じます。

ケース) 海外との通信が禁止されている場合

もし、リポジトリから生成AIのLLMまで開発工程を全て日本国内で完結させることが必須 等、地政学的なコンプライアンスがある場合でも、Duo Self-hostedを使えば問題解決です。

この場合、候補となり得る構成案としては以下が挙げられます

  • パブリッククラウドのAIサービスを使ってLLMを国内にデプロイする構成
  • パブリッククラウド上の国内リージョンでフルオンプレミス構成
  • フルオンプレミス構成
  • 上記の構成の折衷案

なお余談となりますが、2025年3月25日現在GitLab社がDuo用に提供しているLLMは、物理的にはアメリカ合衆国内に存在します。

ケース) 特定のパブリッククラウドのサービスしか使ってはいけない場合

自社ではAWSだけ、あるいは、Azureだけしか使えない…といったように、特定のパブリッククラウドサービスのみ利用可能なケースでも、Duo Self-hosted構成は有用です。

具体的な例としては、前述のようにGitLab社が用意している共用LLMはGoogle Vertex AI つまり GCPを使っていますので、これが社内ルール的に許容できない場合等が考えらます。

この場合、候補となり得る構成案としては以下が挙げられます

  • 自社で利用可能なパブリッククラウドのAIサービスを利用する構成
  • 自社で利用可能なパブリッククラウド上でのフルオンプレミス構成
  • フルオンプレミス構成
  • 上記の構成の折衷案

【番外編】GitLab Duo Self-hosted 使う必要がないケース

ここまでお読みの方の中には、「あれ…?ウチってもしかして、GitLab Duo Self-hostedを使う必要ないのでは?」となった方もいらっしゃるかと存じます。 そんな方向けに、本章ではGitLab Duo Self-hosted構成にしなくていいケース、つまり、GitLab社が用意しているLLMを使う方がいいケースについて言及致します。

ケース) サーバー等のリソースを何も用意したくない場合

これは紛れもなくGitLab社が用意しているLLMを使う方がいいケースです。

前の章で列挙したような開発環境の構成に制限が無いのであれば、まずはGitLab社が用意しているLLMを使うことをご検討いただくのが良いかと存じます。

ケース) 最も安価にDuoを使いたい場合

意外に思われるかもしれませんが、これもGitLab社が用意しているLLMを使う方がいいケースです。
なぜなら2025年3月25日現在、GitLab社が用意しているLLM (と AI Gateway) を使うのは無料だからです。

前の章で列挙したような開発環境の構成に制限が無いのであれば、まずはGitLab社が用意しているLLMを使うことをご検討いただくのが良いかと存じます。

ただし、今後GitLab社が料金体系を変更する可能性はあります。
例えば、GitLab社が用意しているLLMに対してリクエストを投げられる回数/月に上限が設定される、などの可能性が考えられます。
料金体系の変更は必ずアナウンスがあるので、コストを気になさる場合はご留意ください。

最後に

この度は 世界一簡単かもしれないGitLab Duo Self-hostedの概要と構成例と採用ケース お読みいただき、誠にありがとうございます。
このブログの目標は以下のとおりでしたが、皆さまはいかがでしたでしょうか。


今回のゴール
  • GitLab Duo Self-hostedの構成概要を把握する。
  • GitLab Duo Self-hostedを採用するケースを把握する。

GitLab Duo Self-hostedは、開発環境に対して厳格な制限があるお客様でも、生成AIによる開発支援を導入できる可能性がある画期的な機能です。

しかも17.9からGAされたので、今回紹介した構成例は全て正式なメーカーサポートの対象になります。

今まで、会社のコンプライアンスが厳しすぎて生成AIによる開発支援の導入を諦めていたお客様は、是非GitLab Duo Self-hostedをご検討いただければと存じます。

この記事がGitLabを触り始めた方の一助となれば幸いにございます。