GitLab Duo Agentic Chat
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
GitLab Duo Agentic Chatは、GitLab Duo Chat(非エージェント型)の強化バージョンです。この新しいChatは、複雑な質問に対しより包括的に回答できるよう、ユーザーに代わって自律的にアクションを実行できます。
非エージェント型のチャットは単一のコンテキストに基づいて質問に答えますが、エージェント型チャットはGitLabプロジェクト全体の複数のソースから情報を検索、取得、組み合わせて、より詳細で関連性の高い回答を提供します。
Agentic Chatでできること:
- (セマンティック検索ではなく)キーワードに基づく検索を使用して、プロジェクト内の関連するイシュー、マージリクエスト、その他のアーティファクトを検索します。
- ファイルパスを手動で指定せずに、ローカルプロジェクト内のファイルにアクセスします。
- 複数の場所にあるファイルを作成および編集します。
- イシュー、マージリクエスト、CI/CDパイプラインなどのリソースを取得します。
- 複数のソースを分析して、完全な回答を提供します。Model Context Protocolを使用して、外部データソースおよびツールに接続します。
- カスタマイズされたルールを使用して、カスタマイズされた回答を提供します。
- GitLab UIでChatを使用すると、コミットを作成します。
概要については、GitLab Duo Chat(エージェント型)を参照してください。
GitLab Duo Chatを使用する
GitLab Duo Chatは、以下で使用できます:
- GitLab UI。
- VS Code。
- JetBrains IDE。
- Visual Studio for Windows。
GitLab UIでGitLab Duo Chatを使用する
前提条件:
- GitLab Duo Agent Platformの前提条件を満たす必要があります。
- デフォルトのGitLab Duoネームスペースを設定します。
GitLab UIでChatを使用するには:
上部のバーで、検索または移動先を選択して、プロジェクトを見つけます。
GitLab Duoサイドバーで、新しいチャットを追加 ( ) または現在のGitLab Duo Chat ( ) を選択します。
新しいチャットを選択した場合は、ドロップダウンリストからエージェントを選択します。
画面右側のGitLab Duoサイドバーに、Chatの会話が表示されます。
チャットテキストボックスの下で、エージェント切替がオンになっていることを確認します。
チャットテキストボックスに質問を入力し、Enterキーを押すか、送信を選択します。
- チャットにコンテキストを追加できます。
- インタラクティブなAIチャットが回答を生成するまで、数秒かかる場合があります。
オプション。次のことができます:
- フォローアップの質問をします。
- 別の会話を開始します。
Webページをリロードしたり別のWebページに移動したりしても、Chatは最新の会話を記憶し、その会話はChatドロワーでアクティブなままです。
VS CodeでGitLab Duo Chatを使用する
前提条件:
- GitLab for VS Code拡張機能バージョン6.15.1以降をインストールして設定します。
- GitLab Duo Agent Platformの前提条件を満たす必要があります。
- デフォルトのGitLab Duoネームスペースを設定します。
GitLab Duo Chatをオンにする:
- VS Codeで、Settings > Settingsに移動します。
agent platformを検索します。- GitLab > Duo Agent Platform: Enabledで、Enable GitLab Duo Agent Platformチェックボックスを選択します。
その後、GitLab Duo Chatを使用するには:
- 左サイドバーで、GitLab Duo Agent Platform ( ) を選択します。
- Chatタブを選択します。
- プロンプトが表示されたら、Refresh pageを選択します。
- メッセージボックスに質問を入力し、Enterキーを押すか、送信を選択します。
JetBrains IDEでGitLab Duo Chatを使用する
前提条件:
- バージョン3.11.1以降のJetBrains用GitLabプラグインをインストールして設定します。
- GitLab Duo Agent Platformの前提条件を満たす必要があります。
- デフォルトのGitLab Duoネームスペースを設定します。
GitLab Duo Chatをオンにする:
- JetBrains IDEで、Settings > Tools > GitLab Duoに移動します。
- GitLab Duo Agent Platformで、Enable GitLab Duo Agent Platformチェックボックスを選択します。
- プロンプトが表示されたら、IDEを再起動します。
その後、GitLab Duo Chatを使用するには:
- 右側のツールウィンドウバーで、GitLab Duo Agent Platform ( ) を選択します。
- Chatタブを選択します。
- メッセージボックスに質問を入力し、Enterキーを押すか、送信を選択します。
Visual StudioでGitLab Duo Chatを使用する
前提条件:
- Visual Studio用GitLab拡張機能バージョン0.60.0以降をインストールして設定します。
- GitLab Duo Agent Platformの前提条件を満たす必要があります。
- デフォルトのGitLab Duoネームスペースを設定します。
GitLab Duo Chatをオンにする:
- Visual Studioで、Tools > Options > GitLabに移動します。
- GitLabで、Generalを選択します。
- Enable Agentic Duo Chatで、Trueを選択し、OKを選択します。
その後、GitLab Duo Chatを使用するには:
- Extensions > GitLab > Open Agentic Chatを選択します。
- メッセージボックスに質問を入力し、Enterキーを押します。
チャット履歴を表示する
チャット履歴を表示するには:
GitLab UIのGitLab Duoサイドバーで、GitLab Duo Chat履歴( )を選択します。
IDEのメッセージボックスの右上隅で、Chat history( )を選択します。
GitLab UIでは、チャット履歴内のすべての会話が表示されます。
IDEでは、最新の20件の会話が表示されます。イシュー1308では、この仕様の変更が提案されています。
複数の会話を行う
GitLab Duo Chatと無制限の数の同時会話を行うことができます。
会話は、GitLab UIのGitLab Duo ChatとIDE間で同期されます。
GitLab UIまたはIDEでGitLab Duo Chatを開きます。
質問を入力し、Enterキーを押すか、送信を選択します。
新しいチャットの会話を作成します:
GitLab UIでは、次のいずれかを実行できます:
- 特定のエージェントとの新しい会話を作成するには:
- GitLab Duoサイドバーで、新しいチャットを追加 ( ) を選択します。
- ドロップダウンリストからエージェントを選択します。
- 既存の会話と同じエージェントとの新しい会話を作成するには、メッセージボックスに
/newと入力し、Enterを押すか、送信を選択します。
新しいチャットの会話が、既存の会話に置き換わります。
- 特定のエージェントとの新しい会話を作成するには:
Chatテキストボックスの下で、エージェント切替がオンになっていることを確認します。
IDEのメッセージボックスの右上隅で、New chat( )を選択します。
質問を入力し、Enterキーを押すか、送信を選択します。
すべての会話を表示するには、chat historyを確認します。
会話を切り替えるには、チャット履歴で適切な会話を選択します。
チャットの履歴で特定の会話を検索するには:
- GitLab UI: Search for a threadテキストボックスに、検索スレッドを入力します。
- IDE: Search chatsテキストボックスに、検索チャットを入力します。
LLMコンテキストウィンドウの制限により、会話はそれぞれ200,000トークン(約800,000文字)に切り詰められます。
会話を削除する
- GitLab UIまたはIDEで、chat historyを選択します。
- 履歴で、Delete this chat( )を選択します。
個々の会話は、30日間の非アクティブ状態後に有効期限が切れ、自動的に削除されます。
ローカル環境でGitLab Duo Chatをカスタマイズする
ローカル環境でのGitLab Duo Chatの動作は、コーディングスタイル、チームプラクティス、プロジェクト要件を反映する指示を提供することでカスタマイズできます。
GitLab Duo Chatは、次の2つのアプローチをサポートしています:
chat-rules.mdのカスタムルール: GitLab向け。個人の設定やチームの標準に最適。AGENTS.mdの共有ルール:AGENTS.md仕様をサポートするGitLabおよびその他のAIツール向け。プロジェクトのコンテキスト、モノレポ構成、ディレクトリ固有の規則に最適。
両方のファイルを同時に使用できます。GitLab Duo Chatは、利用可能なすべてのルールファイルから指示を適用します。
GitLab Duoをカスタマイズする方法について詳細をご覧ください。
モデルを選択する
- 提供形態: GitLab.com、GitLab Self-Managed
GitLab UI、VS Code、またはJetBrains IDEでChatを使用する場合、会話に使用するモデルを選択できます。
チャット履歴から以前のチャットを開いてその会話を続けると、Chatは以前に選択したモデルを使用します。
既存の会話中に新しいモデルを選択すると、Chatは新しい会話を作成します。
前提条件:
- トップレベルグループのオーナーがGitLab Duo Agent Platformのモデルを選択していません。グループに対してモデルが選択されている場合、Chatのモデルを変更できません。
- トップレベルグループでChatを使用している必要があります。組織内でChatにアクセスする場合、モデルを変更することはできません。
- 管理者がインスタンスのモデルを選択していません。インスタンスのモデルが選択されている場合、Chatのモデルを変更することはできません。
- お使いのインスタンスはGitLab AIゲートウェイに接続されている必要があります。
モデルを選択するには:
- GitLab UIの場合:
- チャットテキストボックスの下で、エージェント切替がオンになっていることを確認します。
- ドロップダウンリストからモデルを選択します。
- IDEの場合:
- サイドバーで、GitLab Duo Agent Platform ( ) を選択します。
- Chatタブを選択します。
- ドロップダウンリストからモデルを選択します。
エージェントを選択する
GitLab UI、VS Code、またはJetBrains IDEのプロジェクトでChatを使用する場合、Chatで使用する特定のエージェントを選択できます。
前提条件:
- プロジェクトでは、AIカタログのエージェントを有効にする必要があります。
- エージェントが有効になっているプロジェクトのメンバーである必要があります。
- VS Codeの場合、GitLab for VS Code拡張機能バージョン6.49.12以降をインストールして設定します。
- JetBrains IDEの場合は、バージョン3.22.0以降のJetBrains用GitLabプラグインをインストールして設定します。
エージェントを選択するには:
- GitLab UIまたはIDEで、GitLab Duo Chatの新しい会話を開きます。
- GitLab UIのChatテキストボックスの下で、エージェント切替がオンになっていることを確認します。
- ドロップダウンリストで、エージェントを選択します。エージェントを設定していない場合、ドロップダウンリストはなく、ChatはデフォルトのGitLab Duoエージェントを使用します。
- 質問を入力し、Enterキーを押すか、送信を選択します。
エージェントとの会話を作成した後:
- 会話は選択したエージェントを記憶します。その会話に別のエージェントを選択することはできません。
- チャット履歴を使用して同じ会話に戻ると、同じエージェントが使用されます。
- 会話に戻り、関連付けられているエージェントが利用できなくなった場合、その会話を続行することはできません。
プロンプトのキャッシュ
プロンプトキャッシュはデフォルトで有効になっており、選択されたAgentic ChatモデルがAnthropic社製であるか、Vertexを通じて提供されるAnthropicモデルである場合にのみ機能します。
プロンプトキャッシュが有効な場合、チャットプロンプトデータはモデルベンダーによって一時的にメモリに保存されます。
プロンプトキャッシュは、キャッシュされたプロンプトと入力データの再処理を回避することで、レイテンシーを大幅に改善します。
プロンプトキャッシュをオフにする
提供されるサービスに応じて、GitLab Duoの設定でプロンプトキャッシュをオフにできます:
- GitLab.comでは、個々のトップレベルグループのキャッシュをオフにできます。
- GitLab Self-Managedでは、インスタンス全体のキャッシュをオフにできます。
これにより、コード提案のプロンプトキャッシュもオフになります。
Chat機能の比較
| 機能 | GitLab Duo Chat(非エージェント型) | GitLab Duo Agentic Chat |
|---|---|---|
| 一般的なプログラミングの質問をする | はい | はい |
| エディタで開いているファイルに関する回答を得る | はい | はい。ただし、質問内でファイルのパスを指定する必要があります。 |
| 指定されたファイルに関するコンテキストを提供する | はい。/includeを使用して会話にファイルを追加します。 | はい。ただし、質問内でファイルのパスを指定する必要があります。 |
| プロジェクトコンテンツを自律的に検索する | いいえ | はい |
| ファイルを自律的に作成および変更する | いいえ | はい。ファイルを変更するように依頼する必要があります。ただし、手動で行ったまだコミットしていない変更は上書きされる可能性があります。 |
| IDを指定せずにイシューとMRを取得する | いいえ | はい。他の条件で検索します。たとえば、MR、イシューのタイトル、担当者などです。 |
| 複数のソースからの情報を統合する | いいえ | はい |
| パイプラインログを分析する | はい。GitLab Duo Enterpriseアドオンが必要です。 | はい |
| 会話を再開する | はい。/newまたは/resetを使用します。 | はい。/newを使用するか、UIの場合は/resetを使用します。 |
| 会話を削除する | はい、チャット履歴から削除できます。 | はい、チャット履歴から削除できます |
| イシューとMRを作成する | いいえ | はい |
| Git読み取り専用コマンドを使用する | いいえ | はい |
| Git書き込みコマンドを使用する | いいえ | はい、UIのみ |
| Shellコマンドを実行する | いいえ | はい、IDEのみ |
| MCPツールを実行する | いいえ | はい、IDEのみ |
トラブルシューティング
GitLab Duo Chatの使用中に、問題が発生する可能性があります。
これらの問題を解決する方法については、トラブルシューティングを参照してください。
フィードバック
皆様からのフィードバックは、この機能の改善に役立ちます。イシュー542198で、ご意見、ご提案、または問題を共有してください。