自己管理GitLabでのコード提案(PREMIUM SELF BETA)

開発中にコードを提案するジェネレーティブAIを使用することで、より効率的にコードを書くことができます。

コードサジェストはGitLab Enterprise Editionでご利用いただけます。Premium と Ultimate サブスクリプション層ではクラウドライセンスが必要です。

Code SuggestionsはGitLab Community Editionではご利用いただけません。

caution
GitLab 16.3以降では、PremiumとUltimateのお客様のみ、セルフマネージメントのGitLabでCode Suggestionsの無料トライアルに参加できます。

Code Suggestionsの使用にはGitLab Testing Agreementが適用されます。Code Suggestionsを使用する際のデータ使用についてはこちらをご覧ください。

セルフマネジメントのGitLabでCode Suggestionsを有効にします。

GitLab 16.1ベータ版で導入されました

セルフマネージドインスタンスでコードサジェスチョンを有効にすると、次のことができるようになります:

  • GitLab テスト規約に同意します。
  • GitLabがインスタンスから個人データを含むデータをGitLab.comインフラストラクチャに送信することを認めます。

Code Suggestionsを有効にする方法は、GitLabのバージョンによって異なります。

GitLab 16.3 以降

前提条件:

  • GitLab 16.3以降にCode Suggestionsを導入された方。
  • あなたのインスタンスのすべてのユーザーは、IDE 拡張機能の最新バージョンを持っています。
  • 管理者であること。

自分で管理する GitLab インスタンスで Code Suggestions を有効にするには:

  1. 左のサイドバーで、Search を選択するか、次のページに進んでください。
  2. Admin Areaを選択します。
  3. 左サイドバーで、設定 > 一般を選択します。
  4. Code Suggestions]を展開し、[Turn on Code Suggestions for this instance]を選択します。個人アクセストークン]フィールドには何も入力する必要はありません。
  5. 変更を保存を選択します。

この設定は、セルフマネージド GitLab インスタンスでのみ表示されます。

caution
GitLab 16.2以前では、Turn on code suggestions for this instanceのチェックボックスをオフにすると、インスタンスのユーザーは発行されたJSONウェブトークン(JWT) の有効期限が切れるまで、最大1時間までCode Suggestionsを使用することができます。

Code Suggestionsがすぐに機能するようにするには、手動でサブスクリプションを同期する必要があります。

これでインスタンスのユーザーがCode Suggestionsを使用できるようになります。

GitLab 16.2 以前

前提条件:

  • 管理者であること。
  • GitLab SaaSアカウントをお持ちです。GitLab SaaSサブスクリプションを持っている必要はありません。

そうすると

  1. SaaSアカウントのコードサジェストを有効にします。
  2. インスタンスのコードサジェストを有効にします。
  3. Code Suggestionsベータ版への早期アクセスをリクエストします。

SaaSアカウントでCode Suggestionsを有効にします。

GitLab SaaSアカウントでCode Suggestionsを有効にします:

  1. api スコープで個人アクセストークンを作成します。
  2. 左のサイドバーで、自分のアバターを選択してください。
  3. 環境設定を選択します。
  4. コードサジェスト] セクションで、[コードサジェストを有効にする] を選択します。
  5. 変更を保存を選択します。

インスタンスのコードサジェストを有効にします。

自分で管理する GitLab インスタンスで Code Suggestions を有効にするには:

  1. 左のサイドバーで、Search を選択するか、次のページに進んでください。
  2. Admin Areaを選択します。
  3. 左サイドバーで、設定 > 一般を選択します。
  4. コード・サジェスチョンを展開し
    • このインスタンスのコード・サジェスチョンをオンにする]を選択します。
    • Personal access tokenに、GitLab SaaSのパーソナルアクセストークンを入力します。
  5. 変更を保存を選択します。

この設定は、セルフマネージド GitLab インスタンスでのみ表示されます。

caution
Turn on code suggestions for this instance(このインスタンスのコード提案をオンにする)]チェックボックスをオフにした場合でも、インスタンスのユーザーは、発行されたJSONウェブトークン(JWT) の有効期限が切れるまで、最大1時間までコード提案を使用できます。

コードサジェストへのアクセスリクエスト

GitLab では、セルフマネージドインスタンス上の Code Suggestions へのアクセスをお客様ごとに提供しています。アクセスをリクエストするには

  1. GitLab SaaSアカウントにサインインしてください。
  2. イシュー415393にコメントし、カスタマーサクセスマネージャーをタグ付けしてください。

GitLab がインスタンスに対して Code Suggestions へのアクセスをプロビジョニングした後、インスタンスのユーザーは Code Suggestions を有効にすることができます。

GitLabのアップデート

GitLab 16.3以降では、GitLabはCode Suggestionsのクラウドライセンス要件を実施しています:

  • Premium と Ultimate サブスクリプション層はクラウドライセンスをサポートしています。
  • GitLab Freeはクラウドライセンスをサポートしていません。

GitLab Freeのサブスクリプションをお持ちで、GitLab 16.3以降にアップデートされた場合、Code Suggestionsへの早期アクセスを継続するには、次のことが必要です:

  1. クラウドライセンスをサポートするサブスクリプションを持っていること。
  2. IDE エクステンションが最新バージョンであることを確認してください。
  3. サブスクリプションを手動で同期します。

手動で購読を同期

以下の場合は、手動で購読を同期する必要があります:

  • GitLab 16.3にアップデート済みで、PremiumまたはUltimateレベルのサブスクリプションを購入したばかりの場合。
  • すでにPremiumまたはUltimateのサブスクリプションをお持ちで、GitLab 16.3にアップデートしたばかりです。

手動同期を行わないと、インスタンスで Code Suggestions が有効になるまで最大 24 時間かかる場合があります。

コードサジェストを使用

前提条件:

コードサジェスチョンを使用するには

  1. コードを作成します。入力すると、サジェストが表示されます。カーソルの位置に応じて、拡張子は次のいずれかになります:

    • 関数の生成など、コード全体のスニペットを提供します。
    • 現在の行を補完します。
  2. 提案を受け入れるには、Tabを押します。

提案は新しいコードを書くときに最適です。既存の関数を編集したり、関数の’途中を埋める’ことは、期待通りに動作しないかもしれません。

GitLabはコードサジェストの品質を向上させるために改善を進めています。AIは非決定的なので、同じ入力で毎回同じサジェストが出るとは限りません。

この機能は現在ベータ版です。Code SuggestionsはGoogle Vertex AI Codey APIとGitLab Code Suggestionsサービスの両方に依存しています。GitLabは、この機能を優雅に劣化するように構築し、悪用や誤用を軽減できるように制御しています。GitLabは、当社の判断により、いつでもこの機能をすべてのお客様に対して無効にすることができます。

データのプライバシー

セルフマネージドGitLabインスタンスはコードサジェストを生成しません。セルフマネージドインスタンスへの認証に成功すると、トークンが生成されます。

IDE/エディタはこのトークンを使って、GitLab.comのコードサジェストサービスにデータを安全に直接送信し、処理します。

コードサジェストサービスは、AIが生成したコードサジェストを安全に返します。

GitLabもGoogle Vertex AI Codey APIも、コードサジェストを生成するために送信されたもの以外に、自己管理されている顧客のコードを可視化することはできません。