会話ターンごとに、操作が行われます。インタラクション中に、エンドユーザーがエージェント アプリに入力を送信し、エージェント アプリがレスポンスを送信します。 Vertex AI Agents API を使用すると、実行時にエージェント アプリで操作できます。
始める前に
このガイドを読む前に、次の手順を行ってください。
- 新しいエージェント アプリを作成するか、エージェント アプリを作成するで作成したエージェント アプリを引き続き使用します。
ID を収集する
次のサンプルでは、入力として複数の ID が必要です。プロジェクト ID、リージョン ID、アプリ ID は次の手順で確認できます。
Agent Builder コンソールに移動します。
プロジェクト ID はコンソールの上部に表示されます。
[Location] 列には、リージョン ID が表示されます。
アプリを選択します。
agents/
の後のブラウザ URL パスセグメントには、エージェント アプリ ID が含まれます。
セッション ID も必要です。セッションは、エージェント アプリとエンドユーザー間の会話を表します。会話の開始時に一意のセッション ID を作成し、会話のターンごとにそれを使用します。API を試す場合、test-session-123
のように、最大 36 バイトの任意の文字列 ID を使用できます。
detectIntent を呼び出す
次のサンプルでは、Sessions.detectIntent
メソッドを呼び出します。
セッション リファレンスのプロトコルとバージョンを選択:
プロトコル | V3 | V3beta1 |
---|---|---|
REST | セッション リソース | セッション リソース |
RPC | セッション インターフェース | セッション インターフェース |
C++ | SessionsClient | 利用できません |
C# | SessionsClient | 利用できません |
Go | SessionsClient | 利用できません |
Java | SessionsClient | SessionsClient |
Node.js | SessionsClient | SessionsClient |
PHP | 利用不可 | 利用できません |
Python | SessionsClient | SessionsClient |
Ruby | 利用不可 | 利用できません |
REST
リクエストのデータを使用する前に、次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID
- AGENT_ID: ハンドブック エージェント ID(Dialogflow エージェント ID に対応)
- REGION_ID: リージョン ID
- SUBDOMAIN_REGION: リージョン ID が
us
の場合、サブドメインのリージョンはusa
です。それ以外の場合は、サブドメインのリージョンはリージョン ID と同じです。 - SESSION_ID: セッション ID
- END_USER_INPUT: エンドユーザーの入力(例: シャツを買いたいのですが)
HTTP メソッドと URL:
POST https://SUBDOMAIN_REGION-dialogflow.googleapis.com/v3/projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID/sessions/SESSION_ID:detectIntent
リクエストの本文(JSON):
{ "queryInput": { "text": { "text": "END_USER_INPUT" }, "languageCode": "en" }, "queryParams": { "timeZone": "America/Los_Angeles" } }
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "responseId": "a6cd27b0-5eaa-4f93-aa6e-11faf97dbb63", "queryResult": { "text": "I want to buy a shirt", "languageCode": "en", "responseMessages": [ { "text": { "text": [ "Great! I can help you with that. We have a wide variety of shirts to choose from. What size and color would you like?" ] } } ], "intentDetectionConfidence": 1, "diagnosticInfo": { "Session Id": "123", "Response Id": "a6cd27b0-5eaa-4f93-aa6e-11faf97dbb63" }, "match": { "confidence": 1 }, "advancedSettings": { "loggingSettings": {} } }, "responseType": "FINAL" }