ツール: create_tool
指定されたアプリに新しいツールを作成します。
次のサンプルは、curl を使用して create_tool MCP ツールを呼び出す方法を示しています。
| Curl リクエスト |
|---|
curl --location 'https://ces.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_tool", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
入力スキーマ
AgentService.CreateTool のリクエスト メッセージです。
CreateToolRequest
| JSON 表現 |
|---|
{
"parent": string,
"toolId": string,
"tool": {
object ( |
| フィールド | |
|---|---|
parent |
必須。ツールを作成するアプリのリソース名。 |
toolId |
省略可。ツールに使用する ID。ツールのリソース名の最終的なコンポーネントになります。指定しない場合、ツールに一意の ID が自動的に割り当てられます。 |
tool |
必須。作成するツール。 |
ツール
| JSON 表現 |
|---|
{ "name": string, "displayName": string, "executionType": enum ( |
| フィールド | |
|---|---|
name |
ID。ツールのリソース名。形式:
これらのツールは動的で出力専用です。ツールが想定される場所で直接参照することはできません。 |
displayName |
出力専用。ツールのタイプに基づいて導出されたツールの表示名。たとえば、[ClientFunction][Tool.ClientFunction] の表示名は、その |
executionType |
省略可。ツールの実行タイプ。 |
timeout |
省略可。ツールの実行のタイムアウト。設定しない場合、デフォルトのタイムアウトは
|
createTime |
出力専用。ツールが作成されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
updateTime |
出力専用。ツールが最後に更新されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
etag |
読み取り、変更、書き込みオペレーション中にオブジェクトが変更されていないことを確認するために使用される ETag。etag が空の場合、更新によって同時変更が上書きされます。 |
generatedSummary |
出力専用。ツールが LLM アシスタントによって生成された場合、このフィールドには生成の概要が記述されます。 |
toolFakeConfig |
省略可。フェイクモードでのツールの動作の構成。 |
共用体フィールド tool_type。ツールのタイプ。tool_type は次のいずれかになります。 |
|
clientFunction |
省略可。クライアント関数。 |
openApiTool |
省略可。オープン API ツール。 |
googleSearchTool |
省略可。Google 検索ツール。 |
connectorTool |
省略可。Integration Connector ツール。 |
dataStoreTool |
省略可。データストア ツール。 |
pythonFunction |
省略可。Python 関数ツール。 |
mcpTool |
省略可。MCP ツール。MCP ツールは直接作成または更新できず、MCP ツールセットによって管理されます。 |
fileSearchTool |
省略可。ファイル検索ツール。 |
systemTool |
省略可。システムツール。 |
agentTool |
省略可。エージェント ツール。 |
widgetTool |
省略可。ウィジェット ツール。 |
remoteAgentTool |
省略可。リモート エージェント ツール。 |
ClientFunction
| JSON 表現 |
|---|
{ "name": string, "description": string, "parameters": { object ( |
| フィールド | |
|---|---|
name |
必須。関数名。 |
description |
省略可。関数の説明。 |
parameters |
省略可。関数パラメータのスキーマ。 |
response |
省略可。関数レスポンスのスキーマ。 |
スキーマ
| JSON 表現 |
|---|
{ "type": enum ( |
| フィールド | |
|---|---|
type |
必須。データの型。 |
properties |
省略可。Type.OBJECT のプロパティ。
|
required[] |
省略可。Type.OBJECT の必須プロパティ。 |
description |
省略可。データの説明。 |
items |
省略可。Type.ARRAY の要素のスキーマ。 |
nullable |
省略可。値が null の可能性があるかどうかを示します。 |
uniqueItems |
省略可。配列内の項目が一意であることを示します。TYPE.ARRAY にのみ適用されます。 |
prefixItems[] |
省略可。Type.ARRAY の初期要素のスキーマ。 |
additionalProperties |
省略可。ブール値またはオブジェクトのいずれか。追加のプロパティの存在を制御します。 |
anyOf[] |
省略可。値は、リスト内のサブスキーマのいずれか(1 つ以上)に対して検証される必要があります。 |
enum[] |
省略可。プリミティブ型の要素の可能な値(列挙型形式)。例: 1. 方向は {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. アパートの部屋番号は {type:INTEGER, format:enum, enum:["101", "201", "301"]} と定義できます。 |
default |
省略可。データのデフォルト値。 |
ref |
省略可。スキーマノード間の間接参照を許可します。値は、ルート たとえば、次のスキーマは「Pet」という名前のスキーマノードへの参照を定義します。 「pet」プロパティの値は、「Pet」という名前のスキーマノードへの参照です。詳しくは、https://json-schema.org/understanding-json-schema/structuring をご覧ください。 |
defs |
省略可。
|
title |
省略可。スキーマのタイトル。 |
minItems |
省略可。Type.ARRAY の要素の最小数。 |
maxItems |
省略可。Type.ARRAY の要素の最大数。 |
共用体フィールド
|
|
minimum |
省略可。Type.INTEGER と Type.NUMBER の最小値。 |
共用体フィールド
|
|
maximum |
省略可。Type.INTEGER と Type.NUMBER の最大値。 |
PropertiesEntry
| JSON 表現 |
|---|
{
"key": string,
"value": {
object ( |
| フィールド | |
|---|---|
key |
|
value |
|
値
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド kind。値の種類。kind は次のいずれかになります。 |
|
nullValue |
JSON |
numberValue |
JSON 数値を表します。 |
stringValue |
JSON 文字列を表します。 |
boolValue |
JSON ブール値(JSON の |
structValue |
JSON オブジェクトを表します。 |
listValue |
JSON 配列を表します。 |
構造体
| JSON 表現 |
|---|
{ "fields": { string: value, ... } } |
| フィールド | |
|---|---|
fields |
動的に型指定される値の順序なしのマップ。
|
FieldsEntry
| JSON 表現 |
|---|
{ "key": string, "value": value } |
| フィールド | |
|---|---|
key |
|
value |
|
ListValue
| JSON 表現 |
|---|
{ "values": [ value ] } |
| フィールド | |
|---|---|
values[] |
動的に型指定される値の繰り返しフィールド。 |
DefsEntry
| JSON 表現 |
|---|
{
"key": string,
"value": {
object ( |
| フィールド | |
|---|---|
key |
|
value |
|
OpenApiTool
| JSON 表現 |
|---|
{ "openApiSchema": string, "name": string, "description": string, "apiAuthentication": { object ( |
| フィールド | |
|---|---|
openApiSchema |
必須。JSON または YAML 形式の OpenAPI スキーマ。 |
name |
省略可。ツールの名前。指定しない場合、ツールの名前は OpenAPI スキーマの |
description |
省略可。ツールの説明。指定しない場合、ツールの説明は OpenAPI スキーマ、 |
apiAuthentication |
省略可。API で必要な認証情報。 |
tlsConfig |
省略可。TLS 構成。クライアントが信頼するカスタム サーバー証明書が含まれます。 |
serviceDirectoryConfig |
省略可。Service Directory の構成。 |
ignoreUnknownFields |
省略可。true の場合、エージェントは API レスポンスの不明なフィールドを無視します。 |
url |
省略可。Open API スキーマのサーバー URL。このフィールドは、スキーマにサーバー URL が含まれている場合に、エクスポート プロセス中に環境の依存関係のツールでのみ設定されます。インポート プロセス中に、この URL が環境の依存関係に存在し、スキーマに $env_var プレースホルダがある場合、スキーマ内のプレースホルダが置き換えられます。 |
ApiAuthentication
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド auth_config。認証構成。auth_config は次のいずれかになります。 |
|
apiKeyConfig |
省略可。API キー認証の構成。 |
oauthConfig |
省略可。OAuth の構成。 |
serviceAgentIdTokenAuthConfig |
省略可。CES サービス エージェントから生成された ID トークン認証の構成。 |
serviceAccountAuthConfig |
省略可。サービス アカウント認証の構成。 |
bearerTokenConfig |
省略可。ベアラートークン認証の構成。 |
ApiKeyConfig
| JSON 表現 |
|---|
{
"keyName": string,
"apiKeySecretVersion": string,
"requestLocation": enum ( |
| フィールド | |
|---|---|
keyName |
必須。API キーのパラメータ名またはヘッダー名。例: API リクエストが「https://example.com/act?X-Api-Key= |
apiKeySecretVersion |
必須。API キーを保存する SecretManager シークレット バージョン リソースの名前。形式: 注: CES サービス エージェント |
requestLocation |
必須。リクエスト内の鍵のロケーション。 |
OAuthConfig
| JSON 表現 |
|---|
{
"oauthGrantType": enum ( |
| フィールド | |
|---|---|
oauthGrantType |
必須。OAuth 権限付与タイプ。 |
clientId |
必須。OAuth プロバイダのクライアント ID。 |
clientSecretVersion |
必須。クライアント シークレットを保存する SecretManager シークレット バージョン リソースの名前。形式: 注: CES サービス エージェント |
tokenEndpoint |
必須。アクセス トークンと交換する OAuth プロバイダのトークン エンドポイント。 |
scopes[] |
省略可。付与する OAuth スコープ。 |
ServiceAccountAuthConfig
| JSON 表現 |
|---|
{ "serviceAccount": string, "scopes": [ string ] } |
| フィールド | |
|---|---|
serviceAccount |
必須。認証に使用されるサービス アカウントのメールアドレス。CES はこのサービス アカウントを使用してアクセス トークンを交換し、アクセス トークンはリクエストの サービス アカウントには、CES サービス エージェント |
scopes[] |
省略可。付与する OAuth スコープ。指定しない場合、デフォルトのスコープ |
BearerTokenConfig
| JSON 表現 |
|---|
{ "token": string } |
| フィールド | |
|---|---|
token |
必須。署名なしトークン。 |
TlsConfig
| JSON 表現 |
|---|
{
"caCerts": [
{
object ( |
| フィールド | |
|---|---|
caCerts[] |
必須。HTTPS 検証で許可されるカスタム CA 証明書のリストを指定します。 |
CaCert
| JSON 表現 |
|---|
{ "displayName": string, "cert": string } |
| フィールド | |
|---|---|
displayName |
必須。許可されたカスタム CA 証明書の名前。これは、カスタム CA 証明書を明確にするために使用できます。 |
cert |
必須。HTTPS 検証で許可されるカスタム CA 証明書(DER 形式)。これにより、デフォルトの SSL トラストストアがオーバーライドされます。これが空または未指定の場合、CES は Google のデフォルトのトラストストアを使用して証明書を検証します。注: HTTPS サーバー証明書が「サブジェクト代替名」で署名されていることを確認してください。たとえば、次のコマンドで証明書に自己署名できます。 Base64 でエンコードされた文字列。 |
ServiceDirectoryConfig
| JSON 表現 |
|---|
{ "service": string } |
| フィールド | |
|---|---|
service |
必須。Service Directory サービスの名前。形式: |
GoogleSearchTool
| JSON 表現 |
|---|
{
"name": string,
"description": string,
"contextUrls": [
string
],
"preferredDomains": [
string
],
"excludeDomains": [
string
],
"promptConfig": {
object ( |
| フィールド | |
|---|---|
name |
必須。ツールの名前。 |
description |
省略可。ツールの目的の説明。 |
contextUrls[] |
省略可。コンテンツは、コンテキストとグラウンディングのためにこれらの URL から直接取得されます。例: "https://example.com/path.html"。URL は 20 個まで指定できます。 |
preferredDomains[] |
省略可。検索結果を制限するドメインを指定します。例: "example.com"、"another.site"。指定できるドメインは最大 20 個です。 |
excludeDomains[] |
省略可。検索結果から除外するドメインのリスト。例: "example.com"。除外できるドメインは最大 2,000 個です。 |
promptConfig |
省略可。テキストと音声の検索結果を処理する方法について、プランナーに渡されるプロンプトの指示。 |
PromptConfig
| JSON 表現 |
|---|
{ "textPrompt": string, "voicePrompt": string } |
| フィールド | |
|---|---|
textPrompt |
省略可。チャット会話でエージェントとやり取りする際に、システム指示に使用されるプロンプトを定義します。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
voicePrompt |
省略可。音声会話でエージェントとやり取りする際に、システム指示に使用されるプロンプトを定義します。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
ConnectorTool
| JSON 表現 |
|---|
{ "connection": string, "action": { object ( |
| フィールド | |
|---|---|
connection |
必須。参照される Integration Connectors Connection の完全なリソース名。形式: |
action |
必須。ツールが使用するアクション。 |
authConfig |
省略可。Integration Connectors で認証を処理する方法を構成します。デフォルトでは、管理者の認証は Integration Connectors API リクエストで渡されます。別のエンドユーザー認証構成でオーバーライドできます。注: ここで EUC 構成を指定するには、Connection で認証オーバーライドが有効になっている必要があります。有効になっていない場合、ConnectorTool の作成は失敗します。詳細については、https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override をご覧ください。 |
name |
省略可。エージェントがこの ConnectorTool を呼び出すかどうかを判断するために使用できるツールの名前。 |
description |
省略可。この ConnectorTool を呼び出すかどうかをエージェントが判断するために使用できるツールの説明。 |
アクション
| JSON 表現 |
|---|
{ "inputFields": [ string ], "outputFields": [ string ], // Union field |
| フィールド | |
|---|---|
inputFields[] |
省略可。オペレーションの入力として使用するエンティティ フィールド。フィールドが指定されていない場合は、Entity のすべてのフィールドが使用されます。 |
outputFields[] |
省略可。オペレーションから返すエンティティ フィールド。フィールドが指定されていない場合は、Entity のすべてのフィールドが返されます。 |
共用体フィールド action_spec。ツールで使用するアクションを構成するための仕様。action_spec は次のいずれかになります。 |
|
connectionActionId |
ツールが使用する接続アクションの ID。 |
entityOperation |
ツールで使用するエンティティ オペレーション構成。 |
EntityOperation
| JSON 表現 |
|---|
{
"entityId": string,
"operation": enum ( |
| フィールド | |
|---|---|
entityId |
必須。エンティティの ID。 |
operation |
必須。エンティティに対して実行するオペレーション。 |
EndUserAuthConfig
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド auth_config。認証構成。auth_config は次のいずれかになります。 |
|
oauth2AuthCodeConfig |
OAuth 2.0 認証コード認証。 |
oauth2JwtBearerConfig |
JWT プロファイル OAuth 2.0 認可権限付与認証。 |
Oauth2AuthCodeConfig
| JSON 表現 |
|---|
{ "oauthToken": string } |
| フィールド | |
|---|---|
oauthToken |
必須。渡す OAuth トークン パラメータ名。 |
Oauth2JwtBearerConfig
| JSON 表現 |
|---|
{ "issuer": string, "subject": string, "clientKey": string } |
| フィールド | |
|---|---|
issuer |
必須。渡す発行者パラメータ名。 |
subject |
必須。渡すサブジェクト パラメータ名。 |
clientKey |
必須。渡すクライアント パラメータ名。 |
DataStoreTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "boostSpecs": [ { object ( |
| フィールド | |
|---|---|
name |
必須。データストア ツールの名前。 |
description |
省略可。ツールの説明。 |
boostSpecs[] |
省略可。特定のドキュメントをブーストするブースト仕様。 |
modalityConfigs[] |
省略可。データストアのモダリティ構成。 |
filterParameterBehavior |
省略可。フィルタ パラメータの動作。 |
共用体フィールド search_source。検索ソース(単一のデータストアまたはエンジン)を定義します。search_source は次のいずれかになります。 |
|
dataStoreSource |
省略可。特定の 1 つの DataStore 内を検索します。 |
engineSource |
省略可。エンジン内を検索します(複数のデータストアにまたがる可能性があります)。 |
DataStoreSource
| JSON 表現 |
|---|
{
"filter": string,
"dataStore": {
object ( |
| フィールド | |
|---|---|
filter |
省略可。DataStore のフィルタ仕様。参照: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata |
dataStore |
省略可。データストア。 |
DataStore
| JSON 表現 |
|---|
{ "name": string, "type": enum ( |
| フィールド | |
|---|---|
name |
必須。DataStore の完全なリソース名。形式: |
type |
出力専用。データストアのタイプ。このフィールドは読み取り専用で、サーバーによって入力されます。 |
documentProcessingMode |
出力専用。データストア接続のドキュメント処理モード。PUBLIC_WEB データストアと UNSTRUCTURED データストアでのみ設定されます。 |
displayName |
出力専用。データストアの表示名。 |
createTime |
出力専用。データストアが作成されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
connectorConfig |
出力専用。データストア接続のコネクタ構成。 |
タイムスタンプ
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。 |
nanos |
ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。 |
ConnectorConfig
| JSON 表現 |
|---|
{ "collection": string, "collectionDisplayName": string, "dataSource": string } |
| フィールド | |
|---|---|
collection |
データストアが属するコレクションのリソース名。 |
collectionDisplayName |
データストアが属するコレクションの表示名。 |
dataSource |
データソース名。例: |
EngineSource
| JSON 表現 |
|---|
{
"engine": string,
"dataStoreSources": [
{
object ( |
| フィールド | |
|---|---|
engine |
必須。Engine の完全なリソース名。形式: |
dataStoreSources[] |
省略可。Engine 内の特定の DataStore をターゲットにするために使用します。空の場合、検索は Engine に関連付けられているすべての DataStore に適用されます。 |
filter |
省略可。エンジン全体で検索に適用されるフィルタ。data_store_sources が指定されている場合は、関連性がなく、使用されません。参照: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata |
BoostSpecs
| JSON 表現 |
|---|
{
"dataStores": [
string
],
"spec": [
{
object ( |
| フィールド | |
|---|---|
dataStores[] |
必須。ブースト構成が適用されるデータストア。DataStore の完全なリソース名(例: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore})。 |
spec[] |
必須。ブースト仕様のリスト。 |
BoostSpec
| JSON 表現 |
|---|
{
"conditionBoostSpecs": [
{
object ( |
| フィールド | |
|---|---|
conditionBoostSpecs[] |
必須。ブースト仕様のリスト。 |
ConditionBoostSpec
| JSON 表現 |
|---|
{
"condition": string,
"boost": number,
"boostControlSpec": {
object ( |
| フィールド | |
|---|---|
condition |
必須。ブースト条件を指定する式。構文は、フィルタ式の構文と同じです。現在、サポートされている条件は BCP-47 言語コードのリストのみです。例: 言語 en または fr の候補をブーストするには: (lang_code: ANY("en", "fr")) |
boost |
省略可。ブーストの強さ。[-1, 1] の範囲で指定します。ブーストが負の値である場合は順位を下げることを意味します。デフォルトは 0.0 です。 1.0 に設定すると、候補に強力なプロモーションが与えられます。ただし、ブーストされた候補が上位の結果になるとは限りません。 -1.0 に設定すると、候補に大きなデモートが与えられます。ただし、関連性の高い他の候補は引き続き表示されることがあります。 0.0 に設定すると、ブーストは適用されません。ブースト条件は無視されます。 |
boostControlSpec |
省略可。顧客定義の属性値に基づくカスタム ランキングの複雑な仕様。 |
BoostControlSpec
| JSON 表現 |
|---|
{ "fieldName": string, "attributeType": enum ( |
| フィールド | |
|---|---|
fieldName |
省略可。ブースト量を決定するために値が使用されるフィールドの名前。 |
attributeType |
省略可。ブースト額の決定に使用する属性のタイプ。属性値は、指定された field_name のフィールド値から導出できます。数値の場合、attribute_value = numerical_field_value となります。ただし、鮮度の場合は、attribute_value = (time.now() - datetime_field_value) となります。 |
interpolationType |
省略可。以下に表示されているコントロール ポイントを接続するために適用される補完タイプ。 |
controlPoints[] |
省略可。曲線の定義に使用されるコントロール ポイント。単調関数(上記の interpolation_type で定義)は、ここに記載されているコントロール ポイントを通過します。 |
ControlPoint
| JSON 表現 |
|---|
{ "attributeValue": string, "boostAmount": number } |
| フィールド | |
|---|---|
attributeValue |
省略可。以下のいずれか: 1. 数値フィールドの値。2. 鮮度の期間仕様: 値は XSD |
boostAmount |
省略可。attribute_value が上記で指定した値と評価された場合にスコアをブーストする値(-1 ~ 1)。 |
ModalityConfig
| JSON 表現 |
|---|
{ "modalityType": enum ( |
| フィールド | |
|---|---|
modalityType |
必須。モダリティ タイプ。 |
rewriterConfig |
省略可。リライタ構成。 |
summarizationConfig |
省略可。要約構成。 |
groundingConfig |
省略可。グラウンディング構成。 |
snippetsConfig |
省略可。スニペットの構成。 |
RewriterConfig
| JSON 表現 |
|---|
{
"modelSettings": {
object ( |
| フィールド | |
|---|---|
modelSettings |
必須。LLM モデルの構成。 |
prompt |
省略可。プロンプトの定義。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
disabled |
省略可。リライターが無効かどうか。 |
ModelSettings
| JSON 表現 |
|---|
{ "model": string, // Union field |
| フィールド | |
|---|---|
model |
省略可。エージェントが使用する LLM モデル。設定されていない場合、エージェントは親エージェントからモデルを継承します。 |
共用体フィールド
|
|
temperature |
省略可。設定すると、この Temperature が LLM モデルに使用されます。Temperature は、モデルのレスポンスのランダム性を制御します。温度が低いほど、予測しやすい回答が生成されます。温度が高いほど、より創造的な回答が生成されます。 |
SummarizationConfig
| JSON 表現 |
|---|
{
"modelSettings": {
object ( |
| フィールド | |
|---|---|
modelSettings |
省略可。LLM モデルの構成。 |
prompt |
省略可。プロンプトの定義。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
disabled |
省略可。要約が無効かどうか。 |
GroundingConfig
| JSON 表現 |
|---|
{ "groundingLevel": number, "disabled": boolean } |
| フィールド | |
|---|---|
groundingLevel |
省略可。取得されたソースに基づく回答のグラウンディングのしきい値。値の構成可能な範囲は [1, 5] です。このレベルは、回答のグラウンディングのしきい値に使用されます。つまり、グラウンディング スコアがしきい値を下回るすべての回答は、関連するスニペットのみを返すようにフォールバックされます。 たとえば、レベル 3 の場合、レスポンスが返されるには、グラウンディング スコアが 3 以上である必要があります。 |
disabled |
省略可。グラウンディングが無効かどうか。 |
SnippetsConfig
| JSON 表現 |
|---|
{ "enableSnippets": boolean } |
| フィールド | |
|---|---|
enableSnippets |
省略可。スニペットが有効かどうか。 |
PythonFunction
| JSON 表現 |
|---|
{
"name": string,
"pythonCode": string,
"description": string,
"serviceDirectoryConfig": {
object ( |
| フィールド | |
|---|---|
name |
省略可。実行する Python 関数の名前。Python コードで定義されている Python 関数名と一致している必要があります。大文字と小文字が区別されます。名前が指定されていない場合は、Python コードで定義されている最初の関数が使用されます。 |
pythonCode |
省略可。ツールで実行する Python コード。 |
description |
出力専用。Python コードの docstring から解析された Python 関数の説明。 |
serviceDirectoryConfig |
省略可。ツールの Service Directory 構成。 |
McpTool
| JSON 表現 |
|---|
{ "name": string, "nameOverride": string, "description": string, "inputSchema": { object ( |
| フィールド | |
|---|---|
name |
必須。MCP ツールの名前。 |
nameOverride |
省略可。MCP ツールの名前のオーバーライド。名前が Toolset のオーバーライドによってオーバーライドされた場合に設定されます。 |
description |
省略可。MCP ツールの説明。 |
inputSchema |
省略可。MCP ツールの入力引数のスキーマ。 |
outputSchema |
省略可。MCP ツールの出力引数のスキーマ。 |
serverAddress |
必須。MCP サーバーのサーバー アドレス(例: https://example.com/mcp/)。サーバーが MCP SDK で構築されている場合、URL の末尾に「/mcp/」を付加する必要があります。ストリーミング可能な HTTP 転送ベースのサーバーのみがサポートされています。これは、McpToolset の server_address と同じです。詳しくは、https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http をご覧ください。 |
apiAuthentication |
省略可。MCP サーバーに対してツールを実行するために必要な認証情報。ベアラー トークン認証の場合、トークンはツールの実行にのみ適用され、ツールのリストには適用されません。そのため、認証なしでツールを一覧表示できる必要があります。 |
tlsConfig |
省略可。TLS 構成。クライアントが信頼すべきカスタム サーバー証明書が含まれます。 |
serviceDirectoryConfig |
省略可。VPC-SC の Service Directory 構成。境界内のサービス名の解決に使用されます。 |
customHeaders |
省略可。MCP サーバーへのリクエストで送信するカスタム ヘッダー。値は
|
state |
出力専用。外部サーバー上のツールの動的な可用性状態。 |
CustomHeadersEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
FileSearchTool
| JSON 表現 |
|---|
{
"corpusType": enum ( |
| フィールド | |
|---|---|
corpusType |
省略可。コーパスのタイプ。デフォルトは FULLY_MANAGED です。 |
name |
必須。ツールの名前。 |
description |
省略可。ツールの説明。 |
fileCorpus |
省略可。ファイルが保存されているコーパス。形式: projects/{project}/locations/{location}/ragCorpora/{rag_corpus} |
SystemTool
| JSON 表現 |
|---|
{ "name": string, "description": string } |
| フィールド | |
|---|---|
name |
必須。システムツールの名前。 |
description |
出力専用。システム ツールの説明。 |
AgentTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "agent": string } |
| フィールド | |
|---|---|
name |
必須。エージェント ツールの名前。 |
description |
省略可。ツールの目的の説明。 |
agent |
省略可。ツールのエントリ ポイントであるエージェントのリソース名。形式: |
WidgetTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "widgetType": enum ( |
| フィールド | |
|---|---|
name |
必須。ウィジェット ツールの表示名。 |
description |
省略可。ウィジェット ツールの説明。 |
widgetType |
省略可。ウィジェット ツールのタイプ。指定しない場合、デフォルトのタイプは CUSTOMIZED になります。 |
uiConfig |
省略可。ウィジェットのレンダリングの構成。 |
dataMapping |
省略可。ソースツールのデータがウィジェットの入力パラメータにどのようにマッピングされるかを定義するマッピング。 |
textResponseConfig |
省略可。常に含まれるテキスト レスポンスの構成。 |
共用体フィールド input。ウィジェット ツールの入力。input は次のいずれかになります。 |
|
parameters |
省略可。ウィジェット ツールの入力パラメータ。 |
DataMapping
| JSON 表現 |
|---|
{ "sourceToolName": string, "fieldMappings": { string: string, ... }, "pythonFunction": { object ( |
| フィールド | |
|---|---|
sourceToolName |
省略可。ウィジェットのデータを提供するツールのリソース名(検索ツールやカスタム関数など)。形式: |
fieldMappings |
省略可。ウィジェットの入力パラメータ フィールドと、ソースツールの対応する出力フィールドのマッピング。
|
pythonFunction |
省略可。ソースツールの出力をウィジェットの入力形式に変換するために使用される Python 関数の構成。 |
mode |
省略可。データ マッピングのモード。 |
pythonScript |
非推奨: 代わりに、 |
FieldMappingsEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
TextResponseConfig
| JSON 表現 |
|---|
{
"type": enum ( |
| フィールド | |
|---|---|
type |
省略可。テキスト レスポンスを提供する戦略。 |
staticText |
省略可。タイプが STATIC の場合に返す静的なテキスト レスポンス。 |
textResponseInstruction |
省略可。テキスト レスポンスを生成する方法に関する LLM への指示。タイプが LLM_GENERATED の場合、テキスト レスポンス パラメータの説明として使用されます。 |
RemoteAgentTool
| JSON 表現 |
|---|
{
"name": string,
"description": string,
"agentCard": {
object ( |
| フィールド | |
|---|---|
name |
必須。ツールの名前。 |
description |
必須。ツールの説明。 |
agentCard |
必須。このツールが呼び出すリモート エージェントのエージェント カード。 |
AgentCard
| JSON 表現 |
|---|
{ "name": string, "description": string, "supportedInterfaces": [ { object ( |
| フィールド | |
|---|---|
name |
必須。人が読める形式のエージェントの名前。 |
description |
必須。エージェントの行動範囲/ソリューション スペースの説明。 |
supportedInterfaces[] |
必須。サポートされているインターフェースの順序付きリスト。最初のエントリが優先されます。 |
version |
必須。エージェントのバージョン。 |
skills[] |
必須。スキルは、エージェントが実行できる能力の単位を表します。これはやや抽象的ですが、エージェントが成功する可能性が高い、より焦点を絞った一連のアクションを表しています。 |
AgentInterface
| JSON 表現 |
|---|
{ "url": string, "protocolBinding": string, "tenant": string, "protocolVersion": string } |
| フィールド | |
|---|---|
url |
必須。このインターフェースが利用可能な URL。本番環境では、有効な絶対 HTTPS URL である必要があります。例: 「https://api.example.com/a2a/v1」、「https://grpc.example.com/a2a」 |
protocolBinding |
必須。この URL でサポートされているプロトコル バインディング。これはオープン フォーム文字列であり、他のプロトコル バインディングに簡単に拡張できます。正式にサポートされているコアは、 |
tenant |
エージェントを呼び出すときにリクエストで使用されるテナント ID。 |
protocolVersion |
必須。このインターフェースが公開する A2A プロトコルのバージョン。メジャー バージョンごとにサポートされている最新のマイナー バージョンを使用します。例: 「0.3」、「1.0」 |
AgentSkill
| JSON 表現 |
|---|
{ "id": string, "name": string, "description": string, "tags": [ string ], "examples": [ string ], "inputModes": [ string ], "outputModes": [ string ] } |
| フィールド | |
|---|---|
id |
必須。エージェントのスキルの一意の識別子。 |
name |
必須。人が読める形式のスキルの名前。 |
description |
必須。スキルの詳細な説明。 |
tags[] |
必須。スキルの機能を説明するキーワードのセット。 |
examples[] |
このスキルで処理できるプロンプトやシナリオの例。 |
inputModes[] |
このスキルでサポートされている入力メディア タイプのセット。エージェントのデフォルトをオーバーライドします。 |
outputModes[] |
このスキルでサポートされている出力メディア タイプのセット。エージェントのデフォルトをオーバーライドします。 |
所要時間
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
期間の符号付き秒数。-315,576,000,000 ~+315,576,000,000 の範囲(両端を含む)にする必要があります。注: これらの境界は、60 秒/分 * 60 分/時間 * 24 時間/日 * 365.25 日/年 * 10,000 年から計算されます。 |
nanos |
期間のナノ秒分解能による、秒の符号付き小数以下部分。1 秒未満の期間は、0 の |
ToolFakeConfig
| JSON 表現 |
|---|
{ "enableFakeMode": boolean, // Union field |
| フィールド | |
|---|---|
enableFakeMode |
省略可。ツールがフェイクモードを使用しているかどうか。 |
共用体フィールド tool_response。レスポンスは静的であるか、Python 関数によって提供されます。tool_response は次のいずれかになります。 |
|
codeBlock |
省略可。実際のツール呼び出しの代わりに実行されるコードブロック。 |
CodeBlock
| JSON 表現 |
|---|
{ "pythonCode": string } |
| フィールド | |
|---|---|
pythonCode |
必須。ツール フェイクモードで呼び出される Python コード。想定される Python 関数のシグネチャ - すべてのツール呼び出しをキャッチする場合: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: 特定のツール呼び出しをキャッチする場合: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: 関数が None を返すと、代わりに実際のツールが呼び出されます。 |
タイプ
OpenAPI のデータ型。
| 列挙型 | |
|---|---|
TYPE_UNSPECIFIED |
未指定 |
STRING |
文字列型。 |
INTEGER |
整数型。 |
NUMBER |
数値型。 |
BOOLEAN |
ブール型。 |
OBJECT |
オブジェクトのタイプ。 |
ARRAY |
配列型。 |
NullValue
JSON null を表します。
NullValue はセンチネルです。値が 1 つしかない列挙型を使用して、Value 型共用体の null 値を表します。
0 以外の値を持つ NullValue 型のフィールドは無効と見なされます。ほとんどの ProtoJSON シリアライザーは、整数値に関係なく、null_value を JSON null として設定した Value を出力するため、0 値に往復します。
| 列挙型 | |
|---|---|
NULL_VALUE |
Null 値。 |
RequestLocation
リクエスト内の API キーの場所。
| 列挙型 | |
|---|---|
REQUEST_LOCATION_UNSPECIFIED |
指定なし。この値は使用されるべきではありません。 |
HEADER |
HTTP ヘッダーのキーを表します。 |
QUERY_STRING |
クエリ文字列のキーを表します。 |
OauthGrantType
OAuth 権限付与タイプ。クライアント認証情報の権限付与のみがサポートされています。
| 列挙型 | |
|---|---|
OAUTH_GRANT_TYPE_UNSPECIFIED |
指定なし。デフォルトは CLIENT_CREDENTIAL です。 |
CLIENT_CREDENTIAL |
クライアント認証情報フローを表します。 |
OperationType
エンティティに対して実行するオペレーション。
| 列挙型 | |
|---|---|
OPERATION_TYPE_UNSPECIFIED |
オペレーション タイプが指定されていません。無効。ConnectorTool の作成/更新は失敗します。 |
LIST |
リスト オペレーション。 |
GET |
オペレーションを取得します。 |
CREATE |
作成オペレーション。 |
UPDATE |
更新オペレーション。 |
DELETE |
削除オペレーション。 |
DataStoreType
データストアのタイプ。
| 列挙型 | |
|---|---|
DATA_STORE_TYPE_UNSPECIFIED |
指定なし。この値は、データストア タイプが指定されていないことを示します。そのため、検索時に使用されません。 |
PUBLIC_WEB |
一般公開されているウェブ コンテンツを含むデータストア。 |
UNSTRUCTURED |
構造化されていない非公開データを含むデータストア。 |
FAQ |
FAQ として使用される構造化データを含むデータストア。 |
CONNECTOR |
ファーストパーティまたはサードパーティ サービスへのコネクタであるデータストア。 |
DocumentProcessingMode
データストアのドキュメント処理モード。
| 列挙型 | |
|---|---|
DOCUMENT_PROCESSING_MODE_UNSPECIFIED |
指定されていません。 |
DOCUMENTS |
ドキュメントはドキュメントとして処理されます。 |
CHUNKS |
ドキュメントはチャンクに変換されます。 |
AttributeType
カスタム ランキングを適用する属性(または関数)。
| 列挙型 | |
|---|---|
ATTRIBUTE_TYPE_UNSPECIFIED |
AttributeType が指定されていません。 |
NUMERICAL |
数値フィールドの値は、ブースト額を動的に更新するために使用されます。この場合、コントロール ポイントの attribute_value(x 値)は、boost_amount が指定されている数値フィールドの実際の値になります。 |
FRESHNESS |
鮮度のユースケースでは、属性値は現在時刻と指定された datetime フィールドの日付の間の期間になります。値は、XSD dayTimeDuration 値(ISO 8601 期間値の制限付きサブセット)としてフォーマットする必要があります。このパターンは [nD][T[nH][nM][nS]] です。例: 5D、3DT12H30M、T24H。 |
InterpolationType
適用する補完タイプ。デフォルトは線形(区分線形)です。
| 列挙型 | |
|---|---|
INTERPOLATION_TYPE_UNSPECIFIED |
補完タイプが指定されていません。この場合、デフォルトは Linear になります。 |
LINEAR |
区分線形補完タイプが適用されます。 |
ModalityType
モダリティ タイプ。
| 列挙型 | |
|---|---|
MODALITY_TYPE_UNSPECIFIED |
モダリティ タイプが指定されていません。 |
TEXT |
テキスト モダリティ。 |
AUDIO |
音声モダリティ。 |
FilterParameterBehavior
フィルタ パラメータの動作。
| 列挙型 | |
|---|---|
FILTER_PARAMETER_BEHAVIOR_UNSPECIFIED |
デフォルトのフィルタ動作。コネクタ データストアの一致フィルタを含めます。他のデータストア タイプでは、フィルタ入力パラメータは省略されます。 |
ALWAYS_INCLUDE |
すべてのデータストア タイプでフィルタ パラメータを常に含めます。 |
NEVER_INCLUDE |
フィルタ パラメータは、データストアのタイプに関係なく、ツール パラメータのリストに含まれることはありません。 |
状態
ツールの動的な可用性状態を表します。
| 列挙型 | |
|---|---|
STATE_UNSPECIFIED |
デフォルトの状態。 |
ACTIVE |
ツールは利用可能で、サーバーによって積極的に提供されています。 |
INACTIVE |
ツールは構成または固定されていますが、現在サーバーで提供されていません。 |
STALE |
ツールはサーバーに存在しますが、サーバーのバージョンと一致していません。 |
CorpusType
Vertex RAG コーパスのタイプ。
| 列挙型 | |
|---|---|
CORPUS_TYPE_UNSPECIFIED |
コーパスタイプが指定されていません。 |
USER_OWNED |
コーパスはユーザーが作成して所有します。 |
FULLY_MANAGED |
コーパスはエージェントによって作成されます。 |
WidgetType
利用可能なすべてのウィジェット タイプ。今後、この列挙型に新しい値が追加される可能性があります。
| 列挙型 | |
|---|---|
WIDGET_TYPE_UNSPECIFIED |
ウィジェット タイプが指定されていません。 |
CUSTOM |
カスタム ウィジェット タイプ。 |
PRODUCT_CAROUSEL |
商品カルーセル ウィジェット。 |
PRODUCT_DETAILS |
商品詳細ウィジェット。 |
QUICK_ACTIONS |
クイック操作ウィジェット。 |
PRODUCT_COMPARISON |
商品比較ウィジェット。 |
ADVANCED_PRODUCT_DETAILS |
商品詳細ウィジェット。 |
SHORT_FORM |
ショート フォーム ウィジェット。 |
OVERALL_SATISFACTION |
全体的な満足度ウィジェット。 |
ORDER_SUMMARY |
注文概要ウィジェット。 |
APPOINTMENT_DETAILS |
予約の詳細ウィジェット。 |
APPOINTMENT_SCHEDULER |
予約スケジューラ ウィジェット。 |
CONTACT_FORM |
お問い合わせフォーム ウィジェット。 |
モード
ソースツールのデータをウィジェットにマッピングするために使用される戦略。
| 列挙型 | |
|---|---|
MODE_UNSPECIFIED |
モードが指定されていません。 |
FIELD_MAPPING |
データ変換には field_mappings マップを使用します。 |
PYTHON_SCRIPT |
データ変換には python_script を使用します。 |
タイプ
テキスト レスポンスの生成方法を定義します。
| 列挙型 | |
|---|---|
TYPE_UNSPECIFIED |
未指定のタイプ。 |
NONE |
LLM は、会話のコンテキストに基づいて、ウィジェットとともにテキスト レスポンスを生成するかどうかを動的に決定します。 |
LLM_GENERATED |
LLM がテキスト レスポンスを生成することが明示的に求められています。 |
STATIC |
事前定義済みの静的テキスト レスポンスが常に使用されます。 |
ExecutionType
ツールまたはツールセットの実行タイプ。
| 列挙型 | |
|---|---|
EXECUTION_TYPE_UNSPECIFIED |
実行タイプが指定されていません。指定しない場合のデフォルトは SYNCHRONOUS です。 |
SYNCHRONOUS |
ツールは同期的に実行されます。ツールが戻るまでセッションはブロックされます。 |
ASYNCHRONOUS |
ツールは非同期で実行されます。ツールが実行されている間、セッションは継続します。 |
出力スキーマ
ツールは、CES エージェントが特定の目標を達成するために実行できるアクションを表します。
ツール
| JSON 表現 |
|---|
{ "name": string, "displayName": string, "executionType": enum ( |
| フィールド | |
|---|---|
name |
ID。ツールのリソース名。形式:
これらのツールは動的で出力専用です。ツールが想定される場所で直接参照することはできません。 |
displayName |
出力専用。ツールのタイプに基づいて導出されたツールの表示名。たとえば、[ClientFunction][Tool.ClientFunction] の表示名は、その |
executionType |
省略可。ツールの実行タイプ。 |
timeout |
省略可。ツールの実行のタイムアウト。設定しない場合、デフォルトのタイムアウトは
|
createTime |
出力専用。ツールが作成されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
updateTime |
出力専用。ツールが最後に更新されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
etag |
読み取り、変更、書き込みオペレーション中にオブジェクトが変更されていないことを確認するために使用される ETag。etag が空の場合、更新によって同時変更が上書きされます。 |
generatedSummary |
出力専用。ツールが LLM アシスタントによって生成された場合、このフィールドには生成の概要が記述されます。 |
toolFakeConfig |
省略可。フェイクモードでのツールの動作の構成。 |
共用体フィールド tool_type。ツールのタイプ。tool_type は次のいずれかになります。 |
|
clientFunction |
省略可。クライアント関数。 |
openApiTool |
省略可。オープン API ツール。 |
googleSearchTool |
省略可。Google 検索ツール。 |
connectorTool |
省略可。Integration Connector ツール。 |
dataStoreTool |
省略可。データストア ツール。 |
pythonFunction |
省略可。Python 関数ツール。 |
mcpTool |
省略可。MCP ツール。MCP ツールは直接作成または更新できず、MCP ツールセットによって管理されます。 |
fileSearchTool |
省略可。ファイル検索ツール。 |
systemTool |
省略可。システムツール。 |
agentTool |
省略可。エージェント ツール。 |
widgetTool |
省略可。ウィジェット ツール。 |
remoteAgentTool |
省略可。リモート エージェント ツール。 |
ClientFunction
| JSON 表現 |
|---|
{ "name": string, "description": string, "parameters": { object ( |
| フィールド | |
|---|---|
name |
必須。関数名。 |
description |
省略可。関数の説明。 |
parameters |
省略可。関数パラメータのスキーマ。 |
response |
省略可。関数レスポンスのスキーマ。 |
スキーマ
| JSON 表現 |
|---|
{ "type": enum ( |
| フィールド | |
|---|---|
type |
必須。データの型。 |
properties |
省略可。Type.OBJECT のプロパティ。
|
required[] |
省略可。Type.OBJECT の必須プロパティ。 |
description |
省略可。データの説明。 |
items |
省略可。Type.ARRAY の要素のスキーマ。 |
nullable |
省略可。値が null の可能性があるかどうかを示します。 |
uniqueItems |
省略可。配列内の項目が一意であることを示します。TYPE.ARRAY にのみ適用されます。 |
prefixItems[] |
省略可。Type.ARRAY の初期要素のスキーマ。 |
additionalProperties |
省略可。ブール値またはオブジェクトのいずれか。追加のプロパティの存在を制御します。 |
anyOf[] |
省略可。値は、リスト内のサブスキーマのいずれか(1 つ以上)に対して検証される必要があります。 |
enum[] |
省略可。プリミティブ型の要素の可能な値(列挙型形式)。例: 1. 方向は {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. アパートの部屋番号は {type:INTEGER, format:enum, enum:["101", "201", "301"]} と定義できます。 |
default |
省略可。データのデフォルト値。 |
ref |
省略可。スキーマノード間の間接参照を許可します。値は、ルート たとえば、次のスキーマは「Pet」という名前のスキーマノードへの参照を定義します。 「pet」プロパティの値は、「Pet」という名前のスキーマノードへの参照です。詳しくは、https://json-schema.org/understanding-json-schema/structuring をご覧ください。 |
defs |
省略可。
|
title |
省略可。スキーマのタイトル。 |
minItems |
省略可。Type.ARRAY の要素の最小数。 |
maxItems |
省略可。Type.ARRAY の要素の最大数。 |
共用体フィールド
|
|
minimum |
省略可。Type.INTEGER と Type.NUMBER の最小値。 |
共用体フィールド
|
|
maximum |
省略可。Type.INTEGER と Type.NUMBER の最大値。 |
PropertiesEntry
| JSON 表現 |
|---|
{
"key": string,
"value": {
object ( |
| フィールド | |
|---|---|
key |
|
value |
|
値
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド kind。値の種類。kind は次のいずれかになります。 |
|
nullValue |
JSON |
numberValue |
JSON 数値を表します。 |
stringValue |
JSON 文字列を表します。 |
boolValue |
JSON ブール値(JSON の |
structValue |
JSON オブジェクトを表します。 |
listValue |
JSON 配列を表します。 |
構造体
| JSON 表現 |
|---|
{ "fields": { string: value, ... } } |
| フィールド | |
|---|---|
fields |
動的に型指定される値の順序なしのマップ。
|
FieldsEntry
| JSON 表現 |
|---|
{ "key": string, "value": value } |
| フィールド | |
|---|---|
key |
|
value |
|
ListValue
| JSON 表現 |
|---|
{ "values": [ value ] } |
| フィールド | |
|---|---|
values[] |
動的に型指定される値の繰り返しフィールド。 |
DefsEntry
| JSON 表現 |
|---|
{
"key": string,
"value": {
object ( |
| フィールド | |
|---|---|
key |
|
value |
|
OpenApiTool
| JSON 表現 |
|---|
{ "openApiSchema": string, "name": string, "description": string, "apiAuthentication": { object ( |
| フィールド | |
|---|---|
openApiSchema |
必須。JSON または YAML 形式の OpenAPI スキーマ。 |
name |
省略可。ツールの名前。指定しない場合、ツールの名前は OpenAPI スキーマの |
description |
省略可。ツールの説明。指定しない場合、ツールの説明は OpenAPI スキーマ、 |
apiAuthentication |
省略可。API で必要な認証情報。 |
tlsConfig |
省略可。TLS 構成。クライアントが信頼するカスタム サーバー証明書が含まれます。 |
serviceDirectoryConfig |
省略可。Service Directory の構成。 |
ignoreUnknownFields |
省略可。true の場合、エージェントは API レスポンスの不明なフィールドを無視します。 |
url |
省略可。Open API スキーマのサーバー URL。このフィールドは、スキーマにサーバー URL が含まれている場合に、エクスポート プロセス中に環境の依存関係のツールでのみ設定されます。インポート プロセス中に、この URL が環境の依存関係に存在し、スキーマに $env_var プレースホルダがある場合、スキーマ内のプレースホルダが置き換えられます。 |
ApiAuthentication
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド auth_config。認証構成。auth_config は次のいずれかになります。 |
|
apiKeyConfig |
省略可。API キー認証の構成。 |
oauthConfig |
省略可。OAuth の構成。 |
serviceAgentIdTokenAuthConfig |
省略可。CES サービス エージェントから生成された ID トークン認証の構成。 |
serviceAccountAuthConfig |
省略可。サービス アカウント認証の構成。 |
bearerTokenConfig |
省略可。ベアラートークン認証の構成。 |
ApiKeyConfig
| JSON 表現 |
|---|
{
"keyName": string,
"apiKeySecretVersion": string,
"requestLocation": enum ( |
| フィールド | |
|---|---|
keyName |
必須。API キーのパラメータ名またはヘッダー名。例: API リクエストが「https://example.com/act?X-Api-Key= |
apiKeySecretVersion |
必須。API キーを保存する SecretManager シークレット バージョン リソースの名前。形式: 注: CES サービス エージェント |
requestLocation |
必須。リクエスト内の鍵のロケーション。 |
OAuthConfig
| JSON 表現 |
|---|
{
"oauthGrantType": enum ( |
| フィールド | |
|---|---|
oauthGrantType |
必須。OAuth 権限付与タイプ。 |
clientId |
必須。OAuth プロバイダのクライアント ID。 |
clientSecretVersion |
必須。クライアント シークレットを保存する SecretManager シークレット バージョン リソースの名前。形式: 注: CES サービス エージェント |
tokenEndpoint |
必須。アクセス トークンと交換する OAuth プロバイダのトークン エンドポイント。 |
scopes[] |
省略可。付与する OAuth スコープ。 |
ServiceAccountAuthConfig
| JSON 表現 |
|---|
{ "serviceAccount": string, "scopes": [ string ] } |
| フィールド | |
|---|---|
serviceAccount |
必須。認証に使用されるサービス アカウントのメールアドレス。CES はこのサービス アカウントを使用してアクセス トークンを交換し、アクセス トークンはリクエストの サービス アカウントには、CES サービス エージェント |
scopes[] |
省略可。付与する OAuth スコープ。指定しない場合、デフォルトのスコープ |
BearerTokenConfig
| JSON 表現 |
|---|
{ "token": string } |
| フィールド | |
|---|---|
token |
必須。署名なしトークン。 |
TlsConfig
| JSON 表現 |
|---|
{
"caCerts": [
{
object ( |
| フィールド | |
|---|---|
caCerts[] |
必須。HTTPS 検証で許可されるカスタム CA 証明書のリストを指定します。 |
CaCert
| JSON 表現 |
|---|
{ "displayName": string, "cert": string } |
| フィールド | |
|---|---|
displayName |
必須。許可されたカスタム CA 証明書の名前。これは、カスタム CA 証明書を明確にするために使用できます。 |
cert |
必須。HTTPS 検証で許可されるカスタム CA 証明書(DER 形式)。これにより、デフォルトの SSL トラストストアがオーバーライドされます。これが空または未指定の場合、CES は Google のデフォルトのトラストストアを使用して証明書を検証します。注: HTTPS サーバー証明書が「サブジェクト代替名」で署名されていることを確認してください。たとえば、次のコマンドで証明書に自己署名できます。 Base64 でエンコードされた文字列。 |
ServiceDirectoryConfig
| JSON 表現 |
|---|
{ "service": string } |
| フィールド | |
|---|---|
service |
必須。Service Directory サービスの名前。形式: |
GoogleSearchTool
| JSON 表現 |
|---|
{
"name": string,
"description": string,
"contextUrls": [
string
],
"preferredDomains": [
string
],
"excludeDomains": [
string
],
"promptConfig": {
object ( |
| フィールド | |
|---|---|
name |
必須。ツールの名前。 |
description |
省略可。ツールの目的の説明。 |
contextUrls[] |
省略可。コンテンツは、コンテキストとグラウンディングのためにこれらの URL から直接取得されます。例: "https://example.com/path.html"。URL は 20 個まで指定できます。 |
preferredDomains[] |
省略可。検索結果を制限するドメインを指定します。例: "example.com"、"another.site"。指定できるドメインは最大 20 個です。 |
excludeDomains[] |
省略可。検索結果から除外するドメインのリスト。例: "example.com"。除外できるドメインは最大 2,000 個です。 |
promptConfig |
省略可。テキストと音声の検索結果を処理する方法について、プランナーに渡されるプロンプトの指示。 |
PromptConfig
| JSON 表現 |
|---|
{ "textPrompt": string, "voicePrompt": string } |
| フィールド | |
|---|---|
textPrompt |
省略可。チャット会話でエージェントとやり取りする際に、システム指示に使用されるプロンプトを定義します。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
voicePrompt |
省略可。音声会話でエージェントとやり取りする際に、システム指示に使用されるプロンプトを定義します。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
ConnectorTool
| JSON 表現 |
|---|
{ "connection": string, "action": { object ( |
| フィールド | |
|---|---|
connection |
必須。参照される Integration Connectors Connection の完全なリソース名。形式: |
action |
必須。ツールが使用するアクション。 |
authConfig |
省略可。Integration Connectors で認証を処理する方法を構成します。デフォルトでは、管理者の認証は Integration Connectors API リクエストで渡されます。別のエンドユーザー認証構成でオーバーライドできます。注: ここで EUC 構成を指定するには、Connection で認証オーバーライドが有効になっている必要があります。有効になっていない場合、ConnectorTool の作成は失敗します。詳細については、https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override をご覧ください。 |
name |
省略可。エージェントがこの ConnectorTool を呼び出すかどうかを判断するために使用できるツールの名前。 |
description |
省略可。この ConnectorTool を呼び出すかどうかをエージェントが判断するために使用できるツールの説明。 |
アクション
| JSON 表現 |
|---|
{ "inputFields": [ string ], "outputFields": [ string ], // Union field |
| フィールド | |
|---|---|
inputFields[] |
省略可。オペレーションの入力として使用するエンティティ フィールド。フィールドが指定されていない場合は、Entity のすべてのフィールドが使用されます。 |
outputFields[] |
省略可。オペレーションから返すエンティティ フィールド。フィールドが指定されていない場合は、Entity のすべてのフィールドが返されます。 |
共用体フィールド action_spec。ツールで使用するアクションを構成するための仕様。action_spec は次のいずれかになります。 |
|
connectionActionId |
ツールが使用する接続アクションの ID。 |
entityOperation |
ツールで使用するエンティティ オペレーション構成。 |
EntityOperation
| JSON 表現 |
|---|
{
"entityId": string,
"operation": enum ( |
| フィールド | |
|---|---|
entityId |
必須。エンティティの ID。 |
operation |
必須。エンティティに対して実行するオペレーション。 |
EndUserAuthConfig
| JSON 表現 |
|---|
{ // Union field |
| フィールド | |
|---|---|
共用体フィールド auth_config。認証構成。auth_config は次のいずれかになります。 |
|
oauth2AuthCodeConfig |
OAuth 2.0 認証コード認証。 |
oauth2JwtBearerConfig |
JWT プロファイル OAuth 2.0 認可権限付与認証。 |
Oauth2AuthCodeConfig
| JSON 表現 |
|---|
{ "oauthToken": string } |
| フィールド | |
|---|---|
oauthToken |
必須。渡す OAuth トークン パラメータ名。 |
Oauth2JwtBearerConfig
| JSON 表現 |
|---|
{ "issuer": string, "subject": string, "clientKey": string } |
| フィールド | |
|---|---|
issuer |
必須。渡す発行者パラメータ名。 |
subject |
必須。渡すサブジェクト パラメータ名。 |
clientKey |
必須。渡すクライアント パラメータ名。 |
DataStoreTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "boostSpecs": [ { object ( |
| フィールド | |
|---|---|
name |
必須。データストア ツールの名前。 |
description |
省略可。ツールの説明。 |
boostSpecs[] |
省略可。特定のドキュメントをブーストするブースト仕様。 |
modalityConfigs[] |
省略可。データストアのモダリティ構成。 |
filterParameterBehavior |
省略可。フィルタ パラメータの動作。 |
共用体フィールド search_source。検索ソース(単一のデータストアまたはエンジン)を定義します。search_source は次のいずれかになります。 |
|
dataStoreSource |
省略可。特定の 1 つの DataStore 内を検索します。 |
engineSource |
省略可。エンジン内を検索します(複数のデータストアにまたがる可能性があります)。 |
DataStoreSource
| JSON 表現 |
|---|
{
"filter": string,
"dataStore": {
object ( |
| フィールド | |
|---|---|
filter |
省略可。DataStore のフィルタ仕様。参照: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata |
dataStore |
省略可。データストア。 |
DataStore
| JSON 表現 |
|---|
{ "name": string, "type": enum ( |
| フィールド | |
|---|---|
name |
必須。DataStore の完全なリソース名。形式: |
type |
出力専用。データストアのタイプ。このフィールドは読み取り専用で、サーバーによって入力されます。 |
documentProcessingMode |
出力専用。データストア接続のドキュメント処理モード。PUBLIC_WEB データストアと UNSTRUCTURED データストアでのみ設定されます。 |
displayName |
出力専用。データストアの表示名。 |
createTime |
出力専用。データストアが作成されたときのタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: |
connectorConfig |
出力専用。データストア接続のコネクタ構成。 |
タイムスタンプ
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
UNIX エポック 1970-01-01T00:00:00Z からの UTC 時刻の秒数を表します。-62135596800~253402300799 の範囲(両端を含む)にする必要があります(これは 0001-01-01T00:00:00Z~9999-12-31T23:59:59Z に対応します)。 |
nanos |
ナノ秒分解能による、秒の負ではない小数以下部分。このフィールドは、秒の代替ではなく、期間のナノ秒部分です。小数以下を含む負の秒の値は、時間を前方にカウントする負ではない nanos 値を持つ必要があります。0~999,999,999 にする必要があります(両端を含む)。 |
ConnectorConfig
| JSON 表現 |
|---|
{ "collection": string, "collectionDisplayName": string, "dataSource": string } |
| フィールド | |
|---|---|
collection |
データストアが属するコレクションのリソース名。 |
collectionDisplayName |
データストアが属するコレクションの表示名。 |
dataSource |
データソース名。例: |
EngineSource
| JSON 表現 |
|---|
{
"engine": string,
"dataStoreSources": [
{
object ( |
| フィールド | |
|---|---|
engine |
必須。Engine の完全なリソース名。形式: |
dataStoreSources[] |
省略可。Engine 内の特定の DataStore をターゲットにするために使用します。空の場合、検索は Engine に関連付けられているすべての DataStore に適用されます。 |
filter |
省略可。エンジン全体で検索に適用されるフィルタ。data_store_sources が指定されている場合は、関連性がなく、使用されません。参照: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata |
BoostSpecs
| JSON 表現 |
|---|
{
"dataStores": [
string
],
"spec": [
{
object ( |
| フィールド | |
|---|---|
dataStores[] |
必須。ブースト構成が適用されるデータストア。DataStore の完全なリソース名(例: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore})。 |
spec[] |
必須。ブースト仕様のリスト。 |
BoostSpec
| JSON 表現 |
|---|
{
"conditionBoostSpecs": [
{
object ( |
| フィールド | |
|---|---|
conditionBoostSpecs[] |
必須。ブースト仕様のリスト。 |
ConditionBoostSpec
| JSON 表現 |
|---|
{
"condition": string,
"boost": number,
"boostControlSpec": {
object ( |
| フィールド | |
|---|---|
condition |
必須。ブースト条件を指定する式。構文は、フィルタ式の構文と同じです。現在、サポートされている条件は BCP-47 言語コードのリストのみです。例: 言語 en または fr の候補をブーストするには: (lang_code: ANY("en", "fr")) |
boost |
省略可。ブーストの強さ。[-1, 1] の範囲で指定します。ブーストが負の値である場合は順位を下げることを意味します。デフォルトは 0.0 です。 1.0 に設定すると、候補に強力なプロモーションが与えられます。ただし、ブーストされた候補が上位の結果になるとは限りません。 -1.0 に設定すると、候補に大きなデモートが与えられます。ただし、関連性の高い他の候補は引き続き表示されることがあります。 0.0 に設定すると、ブーストは適用されません。ブースト条件は無視されます。 |
boostControlSpec |
省略可。顧客定義の属性値に基づくカスタム ランキングの複雑な仕様。 |
BoostControlSpec
| JSON 表現 |
|---|
{ "fieldName": string, "attributeType": enum ( |
| フィールド | |
|---|---|
fieldName |
省略可。ブースト量を決定するために値が使用されるフィールドの名前。 |
attributeType |
省略可。ブースト額の決定に使用する属性のタイプ。属性値は、指定された field_name のフィールド値から導出できます。数値の場合、attribute_value = numerical_field_value となります。ただし、鮮度の場合は、attribute_value = (time.now() - datetime_field_value) となります。 |
interpolationType |
省略可。以下に表示されているコントロール ポイントを接続するために適用される補完タイプ。 |
controlPoints[] |
省略可。曲線の定義に使用されるコントロール ポイント。単調関数(上記の interpolation_type で定義)は、ここに記載されているコントロール ポイントを通過します。 |
ControlPoint
| JSON 表現 |
|---|
{ "attributeValue": string, "boostAmount": number } |
| フィールド | |
|---|---|
attributeValue |
省略可。以下のいずれか: 1. 数値フィールドの値。2. 鮮度の期間仕様: 値は XSD |
boostAmount |
省略可。attribute_value が上記で指定した値と評価された場合にスコアをブーストする値(-1 ~ 1)。 |
ModalityConfig
| JSON 表現 |
|---|
{ "modalityType": enum ( |
| フィールド | |
|---|---|
modalityType |
必須。モダリティ タイプ。 |
rewriterConfig |
省略可。リライタ構成。 |
summarizationConfig |
省略可。要約構成。 |
groundingConfig |
省略可。グラウンディング構成。 |
snippetsConfig |
省略可。スニペットの構成。 |
RewriterConfig
| JSON 表現 |
|---|
{
"modelSettings": {
object ( |
| フィールド | |
|---|---|
modelSettings |
必須。LLM モデルの構成。 |
prompt |
省略可。プロンプトの定義。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
disabled |
省略可。リライターが無効かどうか。 |
ModelSettings
| JSON 表現 |
|---|
{ "model": string, // Union field |
| フィールド | |
|---|---|
model |
省略可。エージェントが使用する LLM モデル。設定されていない場合、エージェントは親エージェントからモデルを継承します。 |
共用体フィールド
|
|
temperature |
省略可。設定すると、この Temperature が LLM モデルに使用されます。Temperature は、モデルのレスポンスのランダム性を制御します。温度が低いほど、予測しやすい回答が生成されます。温度が高いほど、より創造的な回答が生成されます。 |
SummarizationConfig
| JSON 表現 |
|---|
{
"modelSettings": {
object ( |
| フィールド | |
|---|---|
modelSettings |
省略可。LLM モデルの構成。 |
prompt |
省略可。プロンプトの定義。設定されていない場合は、デフォルトのプロンプトが使用されます。 |
disabled |
省略可。要約が無効かどうか。 |
GroundingConfig
| JSON 表現 |
|---|
{ "groundingLevel": number, "disabled": boolean } |
| フィールド | |
|---|---|
groundingLevel |
省略可。取得されたソースに基づく回答のグラウンディングのしきい値。値の構成可能な範囲は [1, 5] です。このレベルは、回答のグラウンディングのしきい値に使用されます。つまり、グラウンディング スコアがしきい値を下回るすべての回答は、関連するスニペットのみを返すようにフォールバックされます。 たとえば、レベル 3 の場合、レスポンスが返されるには、グラウンディング スコアが 3 以上である必要があります。 |
disabled |
省略可。グラウンディングが無効かどうか。 |
SnippetsConfig
| JSON 表現 |
|---|
{ "enableSnippets": boolean } |
| フィールド | |
|---|---|
enableSnippets |
省略可。スニペットが有効かどうか。 |
PythonFunction
| JSON 表現 |
|---|
{
"name": string,
"pythonCode": string,
"description": string,
"serviceDirectoryConfig": {
object ( |
| フィールド | |
|---|---|
name |
省略可。実行する Python 関数の名前。Python コードで定義されている Python 関数名と一致している必要があります。大文字と小文字が区別されます。名前が指定されていない場合は、Python コードで定義されている最初の関数が使用されます。 |
pythonCode |
省略可。ツールで実行する Python コード。 |
description |
出力専用。Python コードの docstring から解析された Python 関数の説明。 |
serviceDirectoryConfig |
省略可。ツールの Service Directory 構成。 |
McpTool
| JSON 表現 |
|---|
{ "name": string, "nameOverride": string, "description": string, "inputSchema": { object ( |
| フィールド | |
|---|---|
name |
必須。MCP ツールの名前。 |
nameOverride |
省略可。MCP ツールの名前のオーバーライド。名前が Toolset のオーバーライドによってオーバーライドされた場合に設定されます。 |
description |
省略可。MCP ツールの説明。 |
inputSchema |
省略可。MCP ツールの入力引数のスキーマ。 |
outputSchema |
省略可。MCP ツールの出力引数のスキーマ。 |
serverAddress |
必須。MCP サーバーのサーバー アドレス(例: https://example.com/mcp/)。サーバーが MCP SDK で構築されている場合、URL の末尾に「/mcp/」を付加する必要があります。ストリーミング可能な HTTP 転送ベースのサーバーのみがサポートされています。これは、McpToolset の server_address と同じです。詳しくは、https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http をご覧ください。 |
apiAuthentication |
省略可。MCP サーバーに対してツールを実行するために必要な認証情報。ベアラー トークン認証の場合、トークンはツールの実行にのみ適用され、ツールのリストには適用されません。そのため、認証なしでツールを一覧表示できる必要があります。 |
tlsConfig |
省略可。TLS 構成。クライアントが信頼すべきカスタム サーバー証明書が含まれます。 |
serviceDirectoryConfig |
省略可。VPC-SC の Service Directory 構成。境界内のサービス名の解決に使用されます。 |
customHeaders |
省略可。MCP サーバーへのリクエストで送信するカスタム ヘッダー。値は
|
state |
出力専用。外部サーバー上のツールの動的な可用性状態。 |
CustomHeadersEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
FileSearchTool
| JSON 表現 |
|---|
{
"corpusType": enum ( |
| フィールド | |
|---|---|
corpusType |
省略可。コーパスのタイプ。デフォルトは FULLY_MANAGED です。 |
name |
必須。ツールの名前。 |
description |
省略可。ツールの説明。 |
fileCorpus |
省略可。ファイルが保存されているコーパス。形式: projects/{project}/locations/{location}/ragCorpora/{rag_corpus} |
SystemTool
| JSON 表現 |
|---|
{ "name": string, "description": string } |
| フィールド | |
|---|---|
name |
必須。システムツールの名前。 |
description |
出力専用。システム ツールの説明。 |
AgentTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "agent": string } |
| フィールド | |
|---|---|
name |
必須。エージェント ツールの名前。 |
description |
省略可。ツールの目的の説明。 |
agent |
省略可。ツールのエントリ ポイントであるエージェントのリソース名。形式: |
WidgetTool
| JSON 表現 |
|---|
{ "name": string, "description": string, "widgetType": enum ( |
| フィールド | |
|---|---|
name |
必須。ウィジェット ツールの表示名。 |
description |
省略可。ウィジェット ツールの説明。 |
widgetType |
省略可。ウィジェット ツールのタイプ。指定しない場合、デフォルトのタイプは CUSTOMIZED になります。 |
uiConfig |
省略可。ウィジェットのレンダリングの構成。 |
dataMapping |
省略可。ソースツールのデータがウィジェットの入力パラメータにどのようにマッピングされるかを定義するマッピング。 |
textResponseConfig |
省略可。常に含まれるテキスト レスポンスの構成。 |
共用体フィールド input。ウィジェット ツールの入力。input は次のいずれかになります。 |
|
parameters |
省略可。ウィジェット ツールの入力パラメータ。 |
DataMapping
| JSON 表現 |
|---|
{ "sourceToolName": string, "fieldMappings": { string: string, ... }, "pythonFunction": { object ( |
| フィールド | |
|---|---|
sourceToolName |
省略可。ウィジェットのデータを提供するツールのリソース名(検索ツールやカスタム関数など)。形式: |
fieldMappings |
省略可。ウィジェットの入力パラメータ フィールドと、ソースツールの対応する出力フィールドのマッピング。
|
pythonFunction |
省略可。ソースツールの出力をウィジェットの入力形式に変換するために使用される Python 関数の構成。 |
mode |
省略可。データ マッピングのモード。 |
pythonScript |
非推奨: 代わりに、 |
FieldMappingsEntry
| JSON 表現 |
|---|
{ "key": string, "value": string } |
| フィールド | |
|---|---|
key |
|
value |
|
TextResponseConfig
| JSON 表現 |
|---|
{
"type": enum ( |
| フィールド | |
|---|---|
type |
省略可。テキスト レスポンスを提供する戦略。 |
staticText |
省略可。タイプが STATIC の場合に返す静的なテキスト レスポンス。 |
textResponseInstruction |
省略可。テキスト レスポンスを生成する方法に関する LLM への指示。タイプが LLM_GENERATED の場合、テキスト レスポンス パラメータの説明として使用されます。 |
RemoteAgentTool
| JSON 表現 |
|---|
{
"name": string,
"description": string,
"agentCard": {
object ( |
| フィールド | |
|---|---|
name |
必須。ツールの名前。 |
description |
必須。ツールの説明。 |
agentCard |
必須。このツールが呼び出すリモート エージェントのエージェント カード。 |
AgentCard
| JSON 表現 |
|---|
{ "name": string, "description": string, "supportedInterfaces": [ { object ( |
| フィールド | |
|---|---|
name |
必須。人が読める形式のエージェントの名前。 |
description |
必須。エージェントの行動範囲/ソリューション スペースの説明。 |
supportedInterfaces[] |
必須。サポートされているインターフェースの順序付きリスト。最初のエントリが優先されます。 |
version |
必須。エージェントのバージョン。 |
skills[] |
必須。スキルは、エージェントが実行できる能力の単位を表します。これはやや抽象的ですが、エージェントが成功する可能性が高い、より焦点を絞った一連のアクションを表しています。 |
AgentInterface
| JSON 表現 |
|---|
{ "url": string, "protocolBinding": string, "tenant": string, "protocolVersion": string } |
| フィールド | |
|---|---|
url |
必須。このインターフェースが利用可能な URL。本番環境では、有効な絶対 HTTPS URL である必要があります。例: 「https://api.example.com/a2a/v1」、「https://grpc.example.com/a2a」 |
protocolBinding |
必須。この URL でサポートされているプロトコル バインディング。これはオープン フォーム文字列であり、他のプロトコル バインディングに簡単に拡張できます。正式にサポートされているコアは、 |
tenant |
エージェントを呼び出すときにリクエストで使用されるテナント ID。 |
protocolVersion |
必須。このインターフェースが公開する A2A プロトコルのバージョン。メジャー バージョンごとにサポートされている最新のマイナー バージョンを使用します。例: 「0.3」、「1.0」 |
AgentSkill
| JSON 表現 |
|---|
{ "id": string, "name": string, "description": string, "tags": [ string ], "examples": [ string ], "inputModes": [ string ], "outputModes": [ string ] } |
| フィールド | |
|---|---|
id |
必須。エージェントのスキルの一意の識別子。 |
name |
必須。人が読める形式のスキルの名前。 |
description |
必須。スキルの詳細な説明。 |
tags[] |
必須。スキルの機能を説明するキーワードのセット。 |
examples[] |
このスキルで処理できるプロンプトやシナリオの例。 |
inputModes[] |
このスキルでサポートされている入力メディア タイプのセット。エージェントのデフォルトをオーバーライドします。 |
outputModes[] |
このスキルでサポートされている出力メディア タイプのセット。エージェントのデフォルトをオーバーライドします。 |
所要時間
| JSON 表現 |
|---|
{ "seconds": string, "nanos": integer } |
| フィールド | |
|---|---|
seconds |
期間の符号付き秒数。-315,576,000,000 ~+315,576,000,000 の範囲(両端を含む)にする必要があります。注: これらの境界は、60 秒/分 * 60 分/時間 * 24 時間/日 * 365.25 日/年 * 10,000 年から計算されます。 |
nanos |
期間のナノ秒分解能による、秒の符号付き小数以下部分。1 秒未満の期間は、0 の |
ToolFakeConfig
| JSON 表現 |
|---|
{ "enableFakeMode": boolean, // Union field |
| フィールド | |
|---|---|
enableFakeMode |
省略可。ツールがフェイクモードを使用しているかどうか。 |
共用体フィールド tool_response。レスポンスは静的であるか、Python 関数によって提供されます。tool_response は次のいずれかになります。 |
|
codeBlock |
省略可。実際のツール呼び出しの代わりに実行されるコードブロック。 |
CodeBlock
| JSON 表現 |
|---|
{ "pythonCode": string } |
| フィールド | |
|---|---|
pythonCode |
必須。ツール フェイクモードで呼び出される Python コード。想定される Python 関数のシグネチャ - すべてのツール呼び出しをキャッチする場合: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: 特定のツール呼び出しをキャッチする場合: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: 関数が None を返すと、代わりに実際のツールが呼び出されます。 |
タイプ
OpenAPI のデータ型。
| 列挙型 | |
|---|---|
TYPE_UNSPECIFIED |
未指定 |
STRING |
文字列型。 |
INTEGER |
整数型。 |
NUMBER |
数値型。 |
BOOLEAN |
ブール型。 |
OBJECT |
オブジェクトのタイプ。 |
ARRAY |
配列型。 |
NullValue
JSON null を表します。
NullValue はセンチネルです。値が 1 つしかない列挙型を使用して、Value 型共用体の null 値を表します。
0 以外の値を持つ NullValue 型のフィールドは無効と見なされます。ほとんどの ProtoJSON シリアライザーは、整数値に関係なく、null_value を JSON null として設定した Value を出力するため、0 値に往復します。
| 列挙型 | |
|---|---|
NULL_VALUE |
Null 値。 |
RequestLocation
リクエスト内の API キーの場所。
| 列挙型 | |
|---|---|
REQUEST_LOCATION_UNSPECIFIED |
指定なし。この値は使用されるべきではありません。 |
HEADER |
HTTP ヘッダーのキーを表します。 |
QUERY_STRING |
クエリ文字列のキーを表します。 |
OauthGrantType
OAuth 権限付与タイプ。クライアント認証情報の権限付与のみがサポートされています。
| 列挙型 | |
|---|---|
OAUTH_GRANT_TYPE_UNSPECIFIED |
指定なし。デフォルトは CLIENT_CREDENTIAL です。 |
CLIENT_CREDENTIAL |
クライアント認証情報フローを表します。 |
OperationType
エンティティに対して実行するオペレーション。
| 列挙型 | |
|---|---|
OPERATION_TYPE_UNSPECIFIED |
オペレーション タイプが指定されていません。無効。ConnectorTool の作成/更新は失敗します。 |
LIST |
リスト オペレーション。 |
GET |
オペレーションを取得します。 |
CREATE |
作成オペレーション。 |
UPDATE |
更新オペレーション。 |
DELETE |
削除オペレーション。 |
DataStoreType
データストアのタイプ。
| 列挙型 | |
|---|---|
DATA_STORE_TYPE_UNSPECIFIED |
指定なし。この値は、データストア タイプが指定されていないことを示します。そのため、検索時に使用されません。 |
PUBLIC_WEB |
一般公開されているウェブ コンテンツを含むデータストア。 |
UNSTRUCTURED |
構造化されていない非公開データを含むデータストア。 |
FAQ |
FAQ として使用される構造化データを含むデータストア。 |
CONNECTOR |
ファーストパーティまたはサードパーティ サービスへのコネクタであるデータストア。 |
DocumentProcessingMode
データストアのドキュメント処理モード。
| 列挙型 | |
|---|---|
DOCUMENT_PROCESSING_MODE_UNSPECIFIED |
指定されていません。 |
DOCUMENTS |
ドキュメントはドキュメントとして処理されます。 |
CHUNKS |
ドキュメントはチャンクに変換されます。 |
AttributeType
カスタム ランキングを適用する属性(または関数)。
| 列挙型 | |
|---|---|
ATTRIBUTE_TYPE_UNSPECIFIED |
AttributeType が指定されていません。 |
NUMERICAL |
数値フィールドの値は、ブースト額を動的に更新するために使用されます。この場合、コントロール ポイントの attribute_value(x 値)は、boost_amount が指定されている数値フィールドの実際の値になります。 |
FRESHNESS |
鮮度のユースケースでは、属性値は現在時刻と指定された datetime フィールドの日付の間の期間になります。値は、XSD dayTimeDuration 値(ISO 8601 期間値の制限付きサブセット)としてフォーマットする必要があります。このパターンは [nD][T[nH][nM][nS]] です。例: 5D、3DT12H30M、T24H。 |
InterpolationType
適用する補完タイプ。デフォルトは線形(区分線形)です。
| 列挙型 | |
|---|---|
INTERPOLATION_TYPE_UNSPECIFIED |
補完タイプが指定されていません。この場合、デフォルトは Linear になります。 |
LINEAR |
区分線形補完タイプが適用されます。 |
ModalityType
モダリティ タイプ。
| 列挙型 | |
|---|---|
MODALITY_TYPE_UNSPECIFIED |
モダリティ タイプが指定されていません。 |
TEXT |
テキスト モダリティ。 |
AUDIO |
音声モダリティ。 |
FilterParameterBehavior
フィルタ パラメータの動作。
| 列挙型 | |
|---|---|
FILTER_PARAMETER_BEHAVIOR_UNSPECIFIED |
デフォルトのフィルタ動作。コネクタ データストアの一致フィルタを含めます。他のデータストア タイプでは、フィルタ入力パラメータは省略されます。 |
ALWAYS_INCLUDE |
すべてのデータストア タイプでフィルタ パラメータを常に含めます。 |
NEVER_INCLUDE |
フィルタ パラメータは、データストアのタイプに関係なく、ツール パラメータのリストに含まれることはありません。 |
状態
ツールの動的な可用性状態を表します。
| 列挙型 | |
|---|---|
STATE_UNSPECIFIED |
デフォルトの状態。 |
ACTIVE |
ツールは利用可能で、サーバーによって積極的に提供されています。 |
INACTIVE |
ツールは構成または固定されていますが、現在サーバーで提供されていません。 |
STALE |
ツールはサーバーに存在しますが、サーバーのバージョンと一致していません。 |
CorpusType
Vertex RAG コーパスのタイプ。
| 列挙型 | |
|---|---|
CORPUS_TYPE_UNSPECIFIED |
コーパスタイプが指定されていません。 |
USER_OWNED |
コーパスはユーザーが作成して所有します。 |
FULLY_MANAGED |
コーパスはエージェントによって作成されます。 |
WidgetType
利用可能なすべてのウィジェット タイプ。今後、この列挙型に新しい値が追加される可能性があります。
| 列挙型 | |
|---|---|
WIDGET_TYPE_UNSPECIFIED |
ウィジェット タイプが指定されていません。 |
CUSTOM |
カスタム ウィジェット タイプ。 |
PRODUCT_CAROUSEL |
商品カルーセル ウィジェット。 |
PRODUCT_DETAILS |
商品詳細ウィジェット。 |
QUICK_ACTIONS |
クイック操作ウィジェット。 |
PRODUCT_COMPARISON |
商品比較ウィジェット。 |
ADVANCED_PRODUCT_DETAILS |
商品詳細ウィジェット。 |
SHORT_FORM |
ショート フォーム ウィジェット。 |
OVERALL_SATISFACTION |
全体的な満足度ウィジェット。 |
ORDER_SUMMARY |
注文概要ウィジェット。 |
APPOINTMENT_DETAILS |
予約の詳細ウィジェット。 |
APPOINTMENT_SCHEDULER |
予約スケジューラ ウィジェット。 |
CONTACT_FORM |
お問い合わせフォーム ウィジェット。 |
モード
ソースツールのデータをウィジェットにマッピングするために使用される戦略。
| 列挙型 | |
|---|---|
MODE_UNSPECIFIED |
モードが指定されていません。 |
FIELD_MAPPING |
データ変換には field_mappings マップを使用します。 |
PYTHON_SCRIPT |
データ変換には python_script を使用します。 |
タイプ
テキスト レスポンスの生成方法を定義します。
| 列挙型 | |
|---|---|
TYPE_UNSPECIFIED |
未指定のタイプ。 |
NONE |
LLM は、会話のコンテキストに基づいて、ウィジェットとともにテキスト レスポンスを生成するかどうかを動的に決定します。 |
LLM_GENERATED |
LLM がテキスト レスポンスを生成することが明示的に求められています。 |
STATIC |
事前定義済みの静的テキスト レスポンスが常に使用されます。 |
ExecutionType
ツールまたはツールセットの実行タイプ。
| 列挙型 | |
|---|---|
EXECUTION_TYPE_UNSPECIFIED |
実行タイプが指定されていません。指定しない場合のデフォルトは SYNCHRONOUS です。 |
SYNCHRONOUS |
ツールは同期的に実行されます。ツールが戻るまでセッションはブロックされます。 |
ASYNCHRONOUS |
ツールは非同期で実行されます。ツールが実行されている間、セッションは継続します。 |
ツールのアノテーション
破壊的ヒント: ✅ | べき等ヒント: ❌ | 読み取り専用ヒント: ❌ | オープン ワールド ヒント: ❌