MCP Tools Reference: ces.googleapis.com

Strumento: update_tool

Aggiorna lo strumento specificato. Assicurati di passare sempre una maschera di aggiornamento nell'input.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP update_tool.

Curl Request
                  
curl --location 'https://ces.[REGION].rep.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "update_tool",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Schema di input

Messaggio di richiesta per AgentService.UpdateTool.

UpdateToolRequest

Rappresentazione JSON
{
  "tool": {
    object (Tool)
  },
  "updateMask": string
}
Campi
tool

object (Tool)

Obbligatorio. Lo strumento da aggiornare.

updateMask

string (FieldMask format)

Facoltativo. La maschera del campo viene utilizzata per controllare quali campi vengono aggiornati. Se la maschera non è presente, tutti i campi verranno aggiornati.

Si tratta di un elenco separato da virgole di nomi completi dei campi. Esempio: "user.displayName,photo".

Strumento

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "executionType": enum (ExecutionType),
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "generatedSummary": string,
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field tool_type can be only one of the following:
  "clientFunction": {
    object (ClientFunction)
  },
  "openApiTool": {
    object (OpenApiTool)
  },
  "googleSearchTool": {
    object (GoogleSearchTool)
  },
  "connectorTool": {
    object (ConnectorTool)
  },
  "dataStoreTool": {
    object (DataStoreTool)
  },
  "pythonFunction": {
    object (PythonFunction)
  },
  "mcpTool": {
    object (McpTool)
  },
  "fileSearchTool": {
    object (FileSearchTool)
  },
  "systemTool": {
    object (SystemTool)
  },
  "widgetTool": {
    object (WidgetTool)
  }
  // End of list of possible types for union field tool_type.
}
Campi
name

string

Identificatore. L'identificatore univoco dello strumento. Formato: - projects/{project}/locations/{location}/apps/{app}/tools/{tool} per

projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool} per gli strumenti recuperati da un set di strumenti. Questi strumenti sono dinamici e solo di output, non possono essere referenziati direttamente dove è previsto uno strumento.

displayName

string

Solo output. Il nome visualizzato dello strumento, derivato in base al tipo di strumento. Ad esempio, il nome visualizzato di una [ClientFunction][Tool.ClientFunction] deriva dalla relativa proprietà name.

executionType

enum (ExecutionType)

Facoltativo. Il tipo di esecuzione dello strumento.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione dello strumento.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento dello strumento.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

etag

string

Etag utilizzato per garantire che l'oggetto non sia stato modificato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee.

generatedSummary

string

Solo output. Se lo strumento è generato dall'assistente LLM, questo campo contiene un riepilogo descrittivo della generazione.

toolFakeConfig

object (ToolFakeConfig)

Facoltativo. Configurazione del comportamento dello strumento in modalità simulata.

Campo unione tool_type. Il tipo di strumento. tool_type può essere solo uno dei seguenti tipi:
clientFunction

object (ClientFunction)

Facoltativo. La funzione client.

openApiTool

object (OpenApiTool)

Facoltativo. Lo strumento API aperto.

googleSearchTool

object (GoogleSearchTool)

Facoltativo. Lo strumento di ricerca di Google.

connectorTool

object (ConnectorTool)

Facoltativo. Lo strumento Integration Connector.

dataStoreTool

object (DataStoreTool)

Facoltativo. Lo strumento datastore.

pythonFunction

object (PythonFunction)

Facoltativo. Lo strumento per le funzioni Python.

mcpTool

object (McpTool)

Facoltativo. Lo strumento MCP. Uno strumento MCP non può essere creato o aggiornato direttamente ed è gestito dal set di strumenti MCP.

fileSearchTool

object (FileSearchTool)

Facoltativo. Lo strumento di ricerca dei file.

systemTool

object (SystemTool)

Facoltativo. Lo strumento di sistema.

widgetTool

object (WidgetTool)

Facoltativo. Lo strumento widget.

ClientFunction

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  },
  "response": {
    object (Schema)
  }
}
Campi
name

string

Obbligatorio. Il nome della funzione.

description

string

Facoltativo. La descrizione della funzione.

parameters

object (Schema)

Facoltativo. Lo schema dei parametri della funzione.

response

object (Schema)

Facoltativo. Lo schema della risposta della funzione.

Schema

Rappresentazione JSON
{
  "type": enum (Type),
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "description": string,
  "items": {
    object (Schema)
  },
  "nullable": boolean,
  "uniqueItems": boolean,
  "prefixItems": [
    {
      object (Schema)
    }
  ],
  "additionalProperties": {
    object (Schema)
  },
  "anyOf": [
    {
      object (Schema)
    }
  ],
  "enum": [
    string
  ],
  "default": value,
  "ref": string,
  "defs": {
    string: {
      object (Schema)
    },
    ...
  },
  "title": string,
  "minItems": string,
  "maxItems": string,

  // Union field _minimum can be only one of the following:
  "minimum": number
  // End of list of possible types for union field _minimum.

  // Union field _maximum can be only one of the following:
  "maximum": number
  // End of list of possible types for union field _maximum.
}
Campi
type

enum (Type)

Obbligatorio. Il tipo di dati.

properties

map (key: string, value: object (Schema))

Facoltativo. Proprietà di Type.OBJECT.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Facoltativo. Proprietà obbligatorie di Type.OBJECT.

description

string

Facoltativo. La descrizione dei dati.

items

object (Schema)

Facoltativo. Schema degli elementi di Type.ARRAY.

nullable

boolean

Facoltativo. Indica se il valore può essere null.

uniqueItems

boolean

Facoltativo. Indica che gli elementi nell'array devono essere univoci. Si applica solo a TYPE.ARRAY.

prefixItems[]

object (Schema)

Facoltativo. Schemi degli elementi iniziali di Type.ARRAY.

additionalProperties

object (Schema)

Facoltativo. Può essere un valore booleano o un oggetto e controlla la presenza di proprietà aggiuntive.

anyOf[]

object (Schema)

Facoltativo. Il valore deve essere convalidato rispetto a uno o più sottoschema nell'elenco.

enum[]

string

Facoltativo. Valori possibili dell'elemento di tipo primitivo con formato enum. Esempi: 1. Possiamo definire la direzione come : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Possiamo definire il numero di appartamento come : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Facoltativo. Valore predefinito dei dati.

ref

string

Facoltativo. Consente riferimenti indiretti tra i nodi dello schema. Il valore deve essere un riferimento valido a un elemento secondario della radice defs.

Ad esempio, lo schema seguente definisce un riferimento a un nodo dello schema denominato "Pet":

type: object
properties:
  pet:
    ref: #/defs/Pet
defs:
  Pet:
    type: object
    properties:
      name:
        type: string

Il valore della proprietà "pet" è un riferimento al nodo dello schema denominato "Pet". Per maggiori dettagli, visita la pagina https://json-schema.org/understanding-json-schema/structuring.

defs

map (key: string, value: object (Schema))

Facoltativo. Una mappa delle definizioni da utilizzare per ref. Consentito solo nella radice dello schema.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Facoltativo. Il titolo dello schema.

minItems

string (int64 format)

Facoltativo. Numero minimo di elementi per Type.ARRAY.

maxItems

string (int64 format)

Facoltativo. Numero massimo di elementi per Type.ARRAY.

Campo unione _minimum.

_minimum può essere solo uno dei seguenti tipi:

minimum

number

Facoltativo. Valore minimo per Type.INTEGER e Type.NUMBER.

Campo unione _maximum.

_maximum può essere solo uno dei seguenti tipi:

maximum

number

Facoltativo. Valore massimo per Type.INTEGER e Type.NUMBER.

PropertiesEntry

Rappresentazione JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campi
key

string

value

object (Schema)

Valore

Rappresentazione JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Campi
Campo unione kind. Il tipo di valore. kind può essere solo uno dei seguenti tipi:
nullValue

null

Rappresenta un valore null.

numberValue

number

Rappresenta un valore double.

stringValue

string

Rappresenta un valore stringa.

boolValue

boolean

Rappresenta un valore booleano.

structValue

object (Struct format)

Rappresenta un valore strutturato.

listValue

array (ListValue format)

Rappresenta un Value ripetuto.

Struct

Rappresentazione JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campi
fields

map (key: string, value: value (Value format))

Mappa non ordinata di valori con tipo dinamico.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Rappresentazione JSON
{
  "key": string,
  "value": value
}
Campi
key

string

value

value (Value format)

ListValue

Rappresentazione JSON
{
  "values": [
    value
  ]
}
Campi
values[]

value (Value format)

Campo ripetuto di valori con tipo dinamico.

DefsEntry

Rappresentazione JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campi
key

string

value

object (Schema)

OpenApiTool

Rappresentazione JSON
{
  "openApiSchema": string,
  "name": string,
  "description": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campi
openApiSchema

string

Obbligatorio. Lo schema OpenAPI in formato JSON o YAML.

name

string

Facoltativo. Il nome dello strumento. Se non viene fornito, il nome dello strumento verrà derivato dallo schema OpenAPI, da operation.operationId.

description

string

Facoltativo. La descrizione dello strumento. Se non viene fornita, la descrizione dello strumento verrà derivata dallo schema OpenAPI, da operation.description o operation.summary.

apiAuthentication

object (ApiAuthentication)

Facoltativo. Informazioni di autenticazione richieste dall'API.

tlsConfig

object (TlsConfig)

Facoltativo. La configurazione TLS. Include i certificati del server personalizzati di cui il client si fiderà.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facoltativo. Configurazione di Service Directory.

ignoreUnknownFields

boolean

Facoltativo. Se il valore è true, l'agente ignorerà i campi sconosciuti nella risposta dell'API.

url

string

Facoltativo. L'URL del server dello schema Open API. Questo campo viene impostato solo negli strumenti nelle dipendenze dell'ambiente durante il processo di esportazione se lo schema contiene un URL del server. Durante il processo di importazione, se questo URL è presente nelle dipendenze dell'ambiente e lo schema contiene il segnaposto $env_var, quest'ultimo verrà sostituito nello schema.

ApiAuthentication

Rappresentazione JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campi
Campo unione auth_config. La configurazione di autenticazione. auth_config può essere solo uno dei seguenti tipi:
apiKeyConfig

object (ApiKeyConfig)

Facoltativo. Configurazione per l'autenticazione della chiave API.

oauthConfig

object (OAuthConfig)

Facoltativo. Configurazione per OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Facoltativo. Configurazione per l'autenticazione con token ID generato dall'agente di servizio CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Facoltativo. Configurazione per l'autenticazione del account di servizio.

bearerTokenConfig

object (BearerTokenConfig)

Facoltativo. Configurazione per l'autenticazione con token di connessione.

ApiKeyConfig

Rappresentazione JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Campi
keyName

string

Obbligatorio. Il nome del parametro o dell'intestazione della chiave API. Ad esempio, Se la richiesta API è "https://example.com/act?X-Api-Key=", "X-Api-Key" sarà il nome del parametro.

apiKeySecretVersion

string

Obbligatorio. Il nome della risorsa della versione del secret di Secret Manager che archivia la chiave API. Formato: projects/{project}/secrets/{secret}/versions/{version}

Nota: devi concedere il ruolo roles/secretmanager.secretAccessor al service agent CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obbligatorio. Posizione della chiave nella richiesta.

OAuthConfig

Rappresentazione JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Campi
oauthGrantType

enum (OauthGrantType)

Obbligatorio. Tipi di autorizzazione con OAuth.

clientId

string

Obbligatorio. L'ID client del provider OAuth.

clientSecretVersion

string

Obbligatorio. Il nome della risorsa della versione del secret di Secret Manager che archivia il client secret. Formato: projects/{project}/secrets/{secret}/versions/{version}

Nota: devi concedere il ruolo roles/secretmanager.secretAccessor al service agent CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obbligatorio. L'endpoint token nel provider OAuth da scambiare con un token di accesso.

scopes[]

string

Facoltativo. Gli ambiti OAuth da concedere.

ServiceAccountAuthConfig

Rappresentazione JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Campi
serviceAccount

string

Obbligatorio. L'indirizzo email del account di servizio utilizzato per l'autenticazione. CES utilizza questo account di servizio per scambiare un token di accesso, che viene poi inviato nell'intestazione Authorization della richiesta.

All'account di servizio deve essere concesso il ruolo roles/iam.serviceAccountTokenCreator all'agente di servizio CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Facoltativo. Gli ambiti OAuth da concedere. Se non specificato, viene utilizzato l'ambito predefinito https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

Rappresentazione JSON
{
  "token": string
}
Campi
token

string

Obbligatorio. Il token di connessione. Deve essere nel formato $context.variables.<name_of_variable>.

TlsConfig

Rappresentazione JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Campi
caCerts[]

object (CaCert)

Obbligatorio. Specifica un elenco di certificati CA personalizzati consentiti per la verifica HTTPS.

CaCert

Rappresentazione JSON
{
  "displayName": string,
  "cert": string
}
Campi
displayName

string

Obbligatorio. Il nome dei certificati CA personalizzati consentiti. Può essere utilizzato per disambiguare i certificati CA personalizzati.

cert

string (bytes format)

Obbligatorio. I certificati CA personalizzati consentiti (in formato DER) per la verifica HTTPS. Esegue l'override dell'archivio attendibilità SSL predefinito. Se questo campo è vuoto o non specificato, CES utilizzerà l'archivio attendibilità predefinito di Google per verificare i certificati. Nota: assicurati che i certificati del server HTTPS siano firmati con "subject alt name". Ad esempio, un certificato può essere autofirmato utilizzando il seguente comando: openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Una stringa con codifica in base64.

ServiceDirectoryConfig

Rappresentazione JSON
{
  "service": string
}
Campi
service

string

Obbligatorio. Il nome del servizio Service Directory. Formato: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. La posizione della directory dei servizi deve corrispondere a quella dell'app.

GoogleSearchTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "contextUrls": [
    string
  ],
  "preferredDomains": [
    string
  ],
  "excludeDomains": [
    string
  ],
  "promptConfig": {
    object (PromptConfig)
  }
}
Campi
name

string

Obbligatorio. Il nome dello strumento.

description

string

Facoltativo. Descrizione dello scopo dello strumento.

contextUrls[]

string

Facoltativo. I contenuti verranno recuperati direttamente da questi URL per il contesto e la base. Esempio: "https://example.com/path.html". Sono consentiti massimo 20 URL.

preferredDomains[]

string

Facoltativo. Specifica i domini a cui limitare i risultati di ricerca. Esempio: "example.com", "another.site". È possibile specificare un massimo di 20 domini.

excludeDomains[]

string

Facoltativo. Elenco dei domini da escludere dai risultati di ricerca. Esempio: "example.com". È possibile escludere un massimo di 2000 domini.

promptConfig

object (PromptConfig)

Facoltativo. Istruzioni del prompt trasmesse al planner su come devono essere elaborati i risultati di ricerca per il testo e la voce.

PromptConfig

Rappresentazione JSON
{
  "textPrompt": string,
  "voicePrompt": string
}
Campi
textPrompt

string

Facoltativo. Definisce il prompt utilizzato per le istruzioni di sistema quando interagisci con l'agente nelle conversazioni di chat. Se non impostato, verrà utilizzato il prompt predefinito.

voicePrompt

string

Facoltativo. Definisce il prompt utilizzato per le istruzioni di sistema quando interagisci con l'agente nelle conversazioni vocali. Se non impostato, verrà utilizzato il prompt predefinito.

ConnectorTool

Rappresentazione JSON
{
  "connection": string,
  "action": {
    object (Action)
  },
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "name": string,
  "description": string
}
Campi
connection

string

Obbligatorio. Il nome completo della risorsa della connessione Integration Connectors a cui viene fatto riferimento. Formato: projects/{project}/locations/{location}/connections/{connection}

action

object (Action)

Obbligatorio. Azione da utilizzare per lo strumento.

authConfig

object (EndUserAuthConfig)

Facoltativo. Configura la gestione dell'autenticazione in Integration Connectors. Per impostazione predefinita, un'autenticazione amministratore viene trasmessa nelle richieste dell'API Integration Connectors. Puoi ignorarlo con una configurazione di autenticazione dell'utente finale diversa. Nota: per specificare una configurazione EUC qui, l'override dell'autenticazione deve essere abilitato nella connessione. In caso contrario, la creazione di ConnectorTool non riuscirà. Per i dettagli, vedi https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

name

string

Facoltativo. Il nome dello strumento che può essere utilizzato dall'agente per decidere se chiamare questo ConnectorTool.

description

string

Facoltativo. La descrizione dello strumento che può essere utilizzata dall'agente per decidere se chiamare questo ConnectorTool.

Azione

Rappresentazione JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Campi
inputFields[]

string

Facoltativo. Campi dell'entità da utilizzare come input per l'operazione. Se non vengono specificati campi, verranno utilizzati tutti i campi dell'entità.

outputFields[]

string

Facoltativo. Campi dell'entità da restituire dall'operazione. Se non vengono specificati campi, vengono restituiti tutti i campi dell'entità.

Campo unione action_spec. Specifica di un'azione da configurare per l'utilizzo dello strumento. action_spec può essere solo uno dei seguenti tipi:
connectionActionId

string

ID di un'azione di connessione da utilizzare per lo strumento.

entityOperation

object (EntityOperation)

Configurazione dell'operazione dell'entità da utilizzare per lo strumento.

EntityOperation

Rappresentazione JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Campi
entityId

string

Obbligatorio. ID dell'entità.

operation

enum (OperationType)

Obbligatorio. Operazione da eseguire sull'entità.

EndUserAuthConfig

Rappresentazione JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campi
Campo unione auth_config. La configurazione di autenticazione. auth_config può essere solo uno dei seguenti tipi:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autenticazione del codice di autorizzazione OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autenticazione della concessione di autorizzazione OAuth 2.0 del profilo JWT.

Oauth2AuthCodeConfig

Rappresentazione JSON
{
  "oauthToken": string
}
Campi
oauthToken

string

Obbligatorio. Nome del parametro del token OAuth da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Rappresentazione JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Campi
issuer

string

Obbligatorio. Nome del parametro dell'emittente da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

subject

string

Obbligatorio. Nome del parametro oggetto da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

clientKey

string

Obbligatorio. Nome del parametro client da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

DataStoreTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "boostSpecs": [
    {
      object (BoostSpecs)
    }
  ],
  "modalityConfigs": [
    {
      object (ModalityConfig)
    }
  ],
  "filterParameterBehavior": enum (FilterParameterBehavior),

  // Union field search_source can be only one of the following:
  "dataStoreSource": {
    object (DataStoreSource)
  },
  "engineSource": {
    object (EngineSource)
  }
  // End of list of possible types for union field search_source.
}
Campi
name

string

Obbligatorio. Il nome dello strumento datastore.

description

string

Facoltativo. La descrizione dello strumento.

boostSpecs[]

object (BoostSpecs)

Facoltativo. Aumenta la specifica per aumentare la visibilità di determinati documenti.

modalityConfigs[]

object (ModalityConfig)

Facoltativo. Le configurazioni della modalità per il datastore.

filterParameterBehavior

enum (FilterParameterBehavior)

Facoltativo. Il comportamento del parametro di filtro.

Campo unione search_source. Definisce l'origine di ricerca, ovvero un singolo datastore o un motore. search_source può essere solo uno dei seguenti tipi:
dataStoreSource

object (DataStoreSource)

Facoltativo. Eseguire ricerche all'interno di un singolo DataStore specifico.

engineSource

object (EngineSource)

Facoltativo. Cerca all'interno di un motore (potenzialmente in più datastore).

DataStoreSource

Rappresentazione JSON
{
  "filter": string,
  "dataStore": {
    object (DataStore)
  }
}
Campi
filter

string

Facoltativo. Specifica del filtro per il datastore. Consulta: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

dataStore

object (DataStore)

Facoltativo. Il datastore.

DataStore

Rappresentazione JSON
{
  "name": string,
  "type": enum (DataStoreType),
  "documentProcessingMode": enum (DocumentProcessingMode),
  "displayName": string,
  "createTime": string,
  "connectorConfig": {
    object (ConnectorConfig)
  }
}
Campi
name

string

Obbligatorio. Nome completo della risorsa del datastore. Formato: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}

type

enum (DataStoreType)

Solo output. Il tipo di datastore. Questo campo è di sola lettura e viene compilato dal server.

documentProcessingMode

enum (DocumentProcessingMode)

Solo output. La modalità di elaborazione dei documenti per la connessione dell'datastore. Impostato solo per i datastore PUBLIC_WEB e UNSTRUCTURED.

displayName

string

Solo output. Il nome visualizzato del datastore.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione del datastore.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

connectorConfig

object (ConnectorConfig)

Solo output. La configurazione del connettore per la connessione al datastore.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori non negativi dei nanosecondi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

ConnectorConfig

Rappresentazione JSON
{
  "collection": string,
  "collectionDisplayName": string,
  "dataSource": string
}
Campi
collection

string

Il nome della risorsa della raccolta a cui appartiene il datastore.

collectionDisplayName

string

Nome visualizzato della raccolta a cui appartiene il datastore.

dataSource

string

Il nome dell'origine dati. Esempio: salesforce, jira, confluence, bigquery.

EngineSource

Rappresentazione JSON
{
  "engine": string,
  "dataStoreSources": [
    {
      object (DataStoreSource)
    }
  ],
  "filter": string
}
Campi
engine

string

Obbligatorio. Nome completo della risorsa del motore. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

dataStoreSources[]

object (DataStoreSource)

Facoltativo. Utilizza questo campo per scegliere come target DataStore specifici all'interno del motore. Se vuoto, la ricerca viene applicata a tutti i Data Store associati al motore.

filter

string

Facoltativo. Un filtro applicato alla ricerca nel motore. Non pertinente e non utilizzato se viene fornito "data_store_sources". Consulta: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

BoostSpecs

Rappresentazione JSON
{
  "dataStores": [
    string
  ],
  "spec": [
    {
      object (BoostSpec)
    }
  ]
}
Campi
dataStores[]

string

Obbligatorio. Il datastore in cui viene applicata la configurazione del boosting. Nome completo della risorsa DataStore, ad esempio projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}.

spec[]

object (BoostSpec)

Obbligatorio. Un elenco di specifiche di boosting.

BoostSpec

Rappresentazione JSON
{
  "conditionBoostSpecs": [
    {
      object (ConditionBoostSpec)
    }
  ]
}
Campi
conditionBoostSpecs[]

object (ConditionBoostSpec)

Obbligatorio. Un elenco di specifiche di boosting.

ConditionBoostSpec

Rappresentazione JSON
{
  "condition": string,
  "boost": number,
  "boostControlSpec": {
    object (BoostControlSpec)
  }
}
Campi
condition

string

Obbligatorio. Un'espressione che specifica una condizione di aumento. La sintassi è la stessa delle espressioni di filtro. Al momento, l'unica condizione supportata è un elenco di codici lingua BCP-47. Esempio: per aumentare i suggerimenti nelle lingue inglese o francese: (lang_code: ANY("en", "fr"))

boost

number

Facoltativo. L'intensità del boost, che deve essere compresa tra -1 e 1. Un boosting negativo indica una retrocessione. Il valore predefinito è 0.0.

Se il boosting viene impostato su 1.0, i suggerimenti vengono promossi maggiormente. Tuttavia, non significa necessariamente che il risultato in cima alla prima pagina sarà un suggerimento con boosting.

Se il valore viene impostato su -1.0, i suggerimenti vengono declassati in modo significativo. Tuttavia, potrebbero comunque essere mostrati altri suggerimenti pertinenti.

Se il valore è impostato su 0,0, non viene applicato alcun boost. La condizione di incremento viene ignorata.

boostControlSpec

object (BoostControlSpec)

Facoltativo. Specifica complessa per il ranking personalizzato in base al valore dell'attributo definito dal cliente.

BoostControlSpec

Rappresentazione JSON
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Campi
fieldName

string

Facoltativo. Il nome del campo il cui valore verrà utilizzato per determinare l'importo dell'aggiustamento.

attributeType

enum (AttributeType)

Facoltativo. Il tipo di attributo da utilizzare per determinare l'importo del boost. Il valore dell'attributo può essere derivato dal valore del campo field_name specificato. Nel caso di valori numerici, è semplice, ad esempio attribute_value = numerical_field_value. Nel caso della freschezza, attribute_value = (time.now() - datetime_field_value).

interpolationType

enum (InterpolationType)

Facoltativo. Il tipo di interpolazione da applicare per collegare i punti di controllo elencati di seguito.

controlPoints[]

object (ControlPoint)

Facoltativo. I punti di controllo utilizzati per definire la curva. La funzione monotona (definita tramite interpolation_type sopra) passa attraverso i punti di controllo elencati qui.

ControlPoint

Rappresentazione JSON
{
  "attributeValue": string,
  "boostAmount": number
}
Campi
attributeValue

string

Facoltativo. Può essere uno dei seguenti: 1. Il valore del campo numerico. 2. La specifica della durata per l'aggiornamento: il valore deve essere formattato come valore XSD dayTimeDuration (un sottoinsieme limitato di un valore di durata ISO 8601). Il pattern è: [nD][T[nH][nM][nS]].

boostAmount

number

Facoltativo. Il valore compreso tra -1 e 1 in base al quale aumentare il punteggio se attribute_value restituisce il valore specificato sopra.

ModalityConfig

Rappresentazione JSON
{
  "modalityType": enum (ModalityType),
  "rewriterConfig": {
    object (RewriterConfig)
  },
  "summarizationConfig": {
    object (SummarizationConfig)
  },
  "groundingConfig": {
    object (GroundingConfig)
  }
}
Campi
modalityType

enum (ModalityType)

Obbligatorio. Il tipo di modalità.

rewriterConfig

object (RewriterConfig)

Facoltativo. La configurazione dello strumento di riscrittura.

summarizationConfig

object (SummarizationConfig)

Facoltativo. La configurazione del riepilogo.

groundingConfig

object (GroundingConfig)

Facoltativo. La configurazione di messa a terra.

RewriterConfig

Rappresentazione JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campi
modelSettings

object (ModelSettings)

Obbligatorio. Configurazioni per il modello LLM.

prompt

string

Facoltativo. La definizione del prompt. Se non impostato, verrà utilizzato il prompt predefinito.

disabled

boolean

Facoltativo. Indica se il rewriter è disattivato.

ModelSettings

Rappresentazione JSON
{
  "model": string,

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Campi
model

string

Facoltativo. Il modello LLM che l'agente deve utilizzare. Se non è impostato, l'agente erediterà il modello dall'agente principale.

Campo unione _temperature.

_temperature può essere solo uno dei seguenti tipi:

temperature

number

Facoltativo. Se impostata, questa temperatura verrà utilizzata per il modello LLM. La temperatura controlla la casualità delle risposte del modello. Le temperature più basse producono risposte più prevedibili. Le temperature più alte producono risposte più creative.

SummarizationConfig

Rappresentazione JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campi
modelSettings

object (ModelSettings)

Facoltativo. Configurazioni per il modello LLM.

prompt

string

Facoltativo. La definizione del prompt. Se non impostato, verrà utilizzato il prompt predefinito.

disabled

boolean

Facoltativo. Indica se il riepilogo è disattivato.

GroundingConfig

Rappresentazione JSON
{
  "groundingLevel": number,
  "disabled": boolean
}
Campi
groundingLevel

number

Facoltativo. La soglia di fondatezza della risposta in base alle fonti recuperate. Il valore ha un intervallo configurabile di [1, 5]. Il livello viene utilizzato per impostare una soglia per la fondatezza della risposta, il che significa che tutte le risposte con un punteggio di fondatezza inferiore alla soglia torneranno a restituire solo snippet pertinenti.

Ad esempio, un livello 3 significa che il punteggio di fondatezza deve essere pari o superiore a 3 affinché la risposta venga restituita.

disabled

boolean

Facoltativo. Indica se la messa a terra è disattivata.

PythonFunction

Rappresentazione JSON
{
  "name": string,
  "pythonCode": string,
  "description": string
}
Campi
name

string

Facoltativo. Il nome della funzione Python da eseguire. Deve corrispondere al nome di una funzione Python definita nel codice Python. Sensibile alle maiuscole. Se il nome non viene fornito, verrà utilizzata la prima funzione definita nel codice Python.

pythonCode

string

Facoltativo. Il codice Python da eseguire per lo strumento.

description

string

Solo output. La descrizione della funzione Python, analizzata dalla docstring del codice Python.

McpTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  },
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  }
}
Campi
name

string

Obbligatorio. Il nome dello strumento MCP.

description

string

Facoltativo. La descrizione dello strumento MCP.

inputSchema

object (Schema)

Facoltativo. Lo schema degli argomenti di input dello strumento MCP.

outputSchema

object (Schema)

Facoltativo. Lo schema degli argomenti di output dello strumento MCP.

serverAddress

string

Obbligatorio. L'indirizzo del server MCP, ad esempio "https://example.com/mcp/". Se il server è creato con l'SDK MCP, l'URL deve avere il suffisso "/mcp/". Sono supportati solo i server basati sul trasporto HTTP in streaming. È uguale a server_address in McpToolset. Per ulteriori dettagli, consulta la pagina https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Facoltativo. Informazioni di autenticazione necessarie per eseguire lo strumento sul server MCP. Per l'autenticazione con token di autenticazione, il token si applica solo all'esecuzione dello strumento, non agli strumenti di inserzione. Ciò richiede che gli strumenti possano essere elencati senza autenticazione.

tlsConfig

object (TlsConfig)

Facoltativo. La configurazione TLS. Include i certificati del server personalizzati che il client deve considerare attendibili.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facoltativo. Configurazione di Service Directory per VPC-SC, utilizzata per risolvere i nomi dei servizi all'interno di un perimetro.

FileSearchTool

Rappresentazione JSON
{
  "corpusType": enum (CorpusType),
  "name": string,
  "description": string,
  "fileCorpus": string
}
Campi
corpusType

enum (CorpusType)

Facoltativo. Il tipo di corpus. Il valore predefinito è FULLY_MANAGED.

name

string

Obbligatorio. Il nome dello strumento.

description

string

Facoltativo. La descrizione dello strumento.

fileCorpus

string

Facoltativo. Il corpus in cui sono archiviati i file. Formato: projects/{project}/locations/{location}/ragCorpora/{rag_corpus}

SystemTool

Rappresentazione JSON
{
  "name": string,
  "description": string
}
Campi
name

string

Obbligatorio. Il nome dello strumento di sistema.

description

string

Solo output. La descrizione dello strumento di sistema.

WidgetTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "widgetType": enum (WidgetType),

  // Union field input can be only one of the following:
  "parameters": {
    object (Schema)
  }
  // End of list of possible types for union field input.
}
Campi
name

string

Obbligatorio. Il nome visualizzato dello strumento widget.

description

string

Facoltativo. La descrizione dello strumento widget.

widgetType

enum (WidgetType)

Facoltativo. Il tipo di strumento widget. Se non specificato, il tipo predefinito sarà CUSTOMIZED.

Campo unione input. L'input dello strumento widget. input può essere solo uno dei seguenti tipi:
parameters

object (Schema)

Facoltativo. I parametri di input dello strumento widget.

ToolFakeConfig

Rappresentazione JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Campi
enableFakeMode

boolean

Facoltativo. Indica se lo strumento utilizza la modalità Falso.

Campo unione tool_response. La risposta è statica o fornita da una funzione Python. tool_response può essere solo uno dei seguenti tipi:
codeBlock

object (CodeBlock)

Facoltativo. Blocco di codice che verrà eseguito al posto di una chiamata allo strumento reale.

CodeBlock

Rappresentazione JSON
{
  "pythonCode": string
}
Campi
pythonCode

string

Obbligatorio. Codice Python che verrà richiamato in modalità di simulazione dello strumento. Firma della funzione Python prevista: per intercettare tutte le chiamate di strumenti: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: per intercettare una chiamata di strumenti specifica: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: se la funzione restituisce None, verrà richiamato lo strumento reale.

FieldMask

Rappresentazione JSON
{
  "paths": [
    string
  ]
}
Campi
paths[]

string

L'insieme dei percorsi della maschera del campo.

Schema di output

Uno strumento rappresenta un'azione che l'agente CES può intraprendere per raggiungere determinati obiettivi.

Strumento

Rappresentazione JSON
{
  "name": string,
  "displayName": string,
  "executionType": enum (ExecutionType),
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "generatedSummary": string,
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field tool_type can be only one of the following:
  "clientFunction": {
    object (ClientFunction)
  },
  "openApiTool": {
    object (OpenApiTool)
  },
  "googleSearchTool": {
    object (GoogleSearchTool)
  },
  "connectorTool": {
    object (ConnectorTool)
  },
  "dataStoreTool": {
    object (DataStoreTool)
  },
  "pythonFunction": {
    object (PythonFunction)
  },
  "mcpTool": {
    object (McpTool)
  },
  "fileSearchTool": {
    object (FileSearchTool)
  },
  "systemTool": {
    object (SystemTool)
  },
  "widgetTool": {
    object (WidgetTool)
  }
  // End of list of possible types for union field tool_type.
}
Campi
name

string

Identificatore. L'identificatore univoco dello strumento. Formato: - projects/{project}/locations/{location}/apps/{app}/tools/{tool} per

projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool} per gli strumenti recuperati da un set di strumenti. Questi strumenti sono dinamici e solo di output, non possono essere referenziati direttamente dove è previsto uno strumento.

displayName

string

Solo output. Il nome visualizzato dello strumento, derivato in base al tipo di strumento. Ad esempio, il nome visualizzato di una [ClientFunction][Tool.ClientFunction] deriva dalla relativa proprietà name.

executionType

enum (ExecutionType)

Facoltativo. Il tipo di esecuzione dello strumento.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione dello strumento.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Solo output. Timestamp dell'ultimo aggiornamento dello strumento.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

etag

string

Etag utilizzato per garantire che l'oggetto non sia stato modificato durante un'operazione di lettura, modifica e scrittura. Se l'etag è vuoto, l'aggiornamento sovrascriverà eventuali modifiche simultanee.

generatedSummary

string

Solo output. Se lo strumento è generato dall'assistente LLM, questo campo contiene un riepilogo descrittivo della generazione.

toolFakeConfig

object (ToolFakeConfig)

Facoltativo. Configurazione del comportamento dello strumento in modalità simulata.

Campo unione tool_type. Il tipo di strumento. tool_type può essere solo uno dei seguenti tipi:
clientFunction

object (ClientFunction)

Facoltativo. La funzione client.

openApiTool

object (OpenApiTool)

Facoltativo. Lo strumento API aperto.

googleSearchTool

object (GoogleSearchTool)

Facoltativo. Lo strumento di ricerca di Google.

connectorTool

object (ConnectorTool)

Facoltativo. Lo strumento Integration Connector.

dataStoreTool

object (DataStoreTool)

Facoltativo. Lo strumento datastore.

pythonFunction

object (PythonFunction)

Facoltativo. Lo strumento per le funzioni Python.

mcpTool

object (McpTool)

Facoltativo. Lo strumento MCP. Uno strumento MCP non può essere creato o aggiornato direttamente ed è gestito dal set di strumenti MCP.

fileSearchTool

object (FileSearchTool)

Facoltativo. Lo strumento di ricerca dei file.

systemTool

object (SystemTool)

Facoltativo. Lo strumento di sistema.

widgetTool

object (WidgetTool)

Facoltativo. Lo strumento widget.

ClientFunction

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  },
  "response": {
    object (Schema)
  }
}
Campi
name

string

Obbligatorio. Il nome della funzione.

description

string

Facoltativo. La descrizione della funzione.

parameters

object (Schema)

Facoltativo. Lo schema dei parametri della funzione.

response

object (Schema)

Facoltativo. Lo schema della risposta della funzione.

Schema

Rappresentazione JSON
{
  "type": enum (Type),
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "description": string,
  "items": {
    object (Schema)
  },
  "nullable": boolean,
  "uniqueItems": boolean,
  "prefixItems": [
    {
      object (Schema)
    }
  ],
  "additionalProperties": {
    object (Schema)
  },
  "anyOf": [
    {
      object (Schema)
    }
  ],
  "enum": [
    string
  ],
  "default": value,
  "ref": string,
  "defs": {
    string: {
      object (Schema)
    },
    ...
  },
  "title": string,
  "minItems": string,
  "maxItems": string,

  // Union field _minimum can be only one of the following:
  "minimum": number
  // End of list of possible types for union field _minimum.

  // Union field _maximum can be only one of the following:
  "maximum": number
  // End of list of possible types for union field _maximum.
}
Campi
type

enum (Type)

Obbligatorio. Il tipo di dati.

properties

map (key: string, value: object (Schema))

Facoltativo. Proprietà di Type.OBJECT.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Facoltativo. Proprietà obbligatorie di Type.OBJECT.

description

string

Facoltativo. La descrizione dei dati.

items

object (Schema)

Facoltativo. Schema degli elementi di Type.ARRAY.

nullable

boolean

Facoltativo. Indica se il valore può essere null.

uniqueItems

boolean

Facoltativo. Indica che gli elementi nell'array devono essere univoci. Si applica solo a TYPE.ARRAY.

prefixItems[]

object (Schema)

Facoltativo. Schemi degli elementi iniziali di Type.ARRAY.

additionalProperties

object (Schema)

Facoltativo. Può essere un valore booleano o un oggetto e controlla la presenza di proprietà aggiuntive.

anyOf[]

object (Schema)

Facoltativo. Il valore deve essere convalidato rispetto a uno o più sottoschema nell'elenco.

enum[]

string

Facoltativo. Valori possibili dell'elemento di tipo primitivo con formato enum. Esempi: 1. Possiamo definire la direzione come : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Possiamo definire il numero di appartamento come : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Facoltativo. Valore predefinito dei dati.

ref

string

Facoltativo. Consente riferimenti indiretti tra i nodi dello schema. Il valore deve essere un riferimento valido a un elemento secondario della radice defs.

Ad esempio, lo schema seguente definisce un riferimento a un nodo dello schema denominato "Pet":

type: object
properties:
  pet:
    ref: #/defs/Pet
defs:
  Pet:
    type: object
    properties:
      name:
        type: string

Il valore della proprietà "pet" è un riferimento al nodo dello schema denominato "Pet". Per maggiori dettagli, visita la pagina https://json-schema.org/understanding-json-schema/structuring.

defs

map (key: string, value: object (Schema))

Facoltativo. Una mappa delle definizioni da utilizzare per ref. Consentito solo nella radice dello schema.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Facoltativo. Il titolo dello schema.

minItems

string (int64 format)

Facoltativo. Numero minimo di elementi per Type.ARRAY.

maxItems

string (int64 format)

Facoltativo. Numero massimo di elementi per Type.ARRAY.

Campo unione _minimum.

_minimum può essere solo uno dei seguenti tipi:

minimum

number

Facoltativo. Valore minimo per Type.INTEGER e Type.NUMBER.

Campo unione _maximum.

_maximum può essere solo uno dei seguenti tipi:

maximum

number

Facoltativo. Valore massimo per Type.INTEGER e Type.NUMBER.

PropertiesEntry

Rappresentazione JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campi
key

string

value

object (Schema)

Valore

Rappresentazione JSON
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
Campi
Campo unione kind. Il tipo di valore. kind può essere solo uno dei seguenti tipi:
nullValue

null

Rappresenta un valore null.

numberValue

number

Rappresenta un valore double.

stringValue

string

Rappresenta un valore stringa.

boolValue

boolean

Rappresenta un valore booleano.

structValue

object (Struct format)

Rappresenta un valore strutturato.

listValue

array (ListValue format)

Rappresenta un Value ripetuto.

Struct

Rappresentazione JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campi
fields

map (key: string, value: value (Value format))

Mappa non ordinata di valori con tipo dinamico.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Rappresentazione JSON
{
  "key": string,
  "value": value
}
Campi
key

string

value

value (Value format)

ListValue

Rappresentazione JSON
{
  "values": [
    value
  ]
}
Campi
values[]

value (Value format)

Campo ripetuto di valori con tipo dinamico.

DefsEntry

Rappresentazione JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campi
key

string

value

object (Schema)

OpenApiTool

Rappresentazione JSON
{
  "openApiSchema": string,
  "name": string,
  "description": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campi
openApiSchema

string

Obbligatorio. Lo schema OpenAPI in formato JSON o YAML.

name

string

Facoltativo. Il nome dello strumento. Se non viene fornito, il nome dello strumento verrà derivato dallo schema OpenAPI, da operation.operationId.

description

string

Facoltativo. La descrizione dello strumento. Se non viene fornita, la descrizione dello strumento verrà derivata dallo schema OpenAPI, da operation.description o operation.summary.

apiAuthentication

object (ApiAuthentication)

Facoltativo. Informazioni di autenticazione richieste dall'API.

tlsConfig

object (TlsConfig)

Facoltativo. La configurazione TLS. Include i certificati del server personalizzati di cui il client si fiderà.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facoltativo. Configurazione di Service Directory.

ignoreUnknownFields

boolean

Facoltativo. Se il valore è true, l'agente ignorerà i campi sconosciuti nella risposta dell'API.

url

string

Facoltativo. L'URL del server dello schema Open API. Questo campo viene impostato solo negli strumenti nelle dipendenze dell'ambiente durante il processo di esportazione se lo schema contiene un URL del server. Durante il processo di importazione, se questo URL è presente nelle dipendenze dell'ambiente e lo schema contiene il segnaposto $env_var, quest'ultimo verrà sostituito nello schema.

ApiAuthentication

Rappresentazione JSON
{

  // Union field auth_config can be only one of the following:
  "apiKeyConfig": {
    object (ApiKeyConfig)
  },
  "oauthConfig": {
    object (OAuthConfig)
  },
  "serviceAgentIdTokenAuthConfig": {
    object (ServiceAgentIdTokenAuthConfig)
  },
  "serviceAccountAuthConfig": {
    object (ServiceAccountAuthConfig)
  },
  "bearerTokenConfig": {
    object (BearerTokenConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campi
Campo unione auth_config. La configurazione di autenticazione. auth_config può essere solo uno dei seguenti tipi:
apiKeyConfig

object (ApiKeyConfig)

Facoltativo. Configurazione per l'autenticazione della chiave API.

oauthConfig

object (OAuthConfig)

Facoltativo. Configurazione per OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Facoltativo. Configurazione per l'autenticazione con token ID generato dall'agente di servizio CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Facoltativo. Configurazione per l'autenticazione del account di servizio.

bearerTokenConfig

object (BearerTokenConfig)

Facoltativo. Configurazione per l'autenticazione con token di connessione.

ApiKeyConfig

Rappresentazione JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Campi
keyName

string

Obbligatorio. Il nome del parametro o dell'intestazione della chiave API. Ad esempio, Se la richiesta API è "https://example.com/act?X-Api-Key=", "X-Api-Key" sarà il nome del parametro.

apiKeySecretVersion

string

Obbligatorio. Il nome della risorsa della versione del secret di Secret Manager che archivia la chiave API. Formato: projects/{project}/secrets/{secret}/versions/{version}

Nota: devi concedere il ruolo roles/secretmanager.secretAccessor al service agent CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obbligatorio. Posizione della chiave nella richiesta.

OAuthConfig

Rappresentazione JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Campi
oauthGrantType

enum (OauthGrantType)

Obbligatorio. Tipi di autorizzazione con OAuth.

clientId

string

Obbligatorio. L'ID client del provider OAuth.

clientSecretVersion

string

Obbligatorio. Il nome della risorsa della versione del secret di Secret Manager che archivia il client secret. Formato: projects/{project}/secrets/{secret}/versions/{version}

Nota: devi concedere il ruolo roles/secretmanager.secretAccessor al service agent CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obbligatorio. L'endpoint token nel provider OAuth da scambiare con un token di accesso.

scopes[]

string

Facoltativo. Gli ambiti OAuth da concedere.

ServiceAccountAuthConfig

Rappresentazione JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Campi
serviceAccount

string

Obbligatorio. L'indirizzo email del account di servizio utilizzato per l'autenticazione. CES utilizza questo account di servizio per scambiare un token di accesso, che viene poi inviato nell'intestazione Authorization della richiesta.

All'account di servizio deve essere concesso il ruolo roles/iam.serviceAccountTokenCreator all'agente di servizio CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Facoltativo. Gli ambiti OAuth da concedere. Se non specificato, viene utilizzato l'ambito predefinito https://www.googleapis.com/auth/cloud-platform.

BearerTokenConfig

Rappresentazione JSON
{
  "token": string
}
Campi
token

string

Obbligatorio. Il token di connessione. Deve essere nel formato $context.variables.<name_of_variable>.

TlsConfig

Rappresentazione JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Campi
caCerts[]

object (CaCert)

Obbligatorio. Specifica un elenco di certificati CA personalizzati consentiti per la verifica HTTPS.

CaCert

Rappresentazione JSON
{
  "displayName": string,
  "cert": string
}
Campi
displayName

string

Obbligatorio. Il nome dei certificati CA personalizzati consentiti. Può essere utilizzato per disambiguare i certificati CA personalizzati.

cert

string (bytes format)

Obbligatorio. I certificati CA personalizzati consentiti (in formato DER) per la verifica HTTPS. Esegue l'override dell'archivio attendibilità SSL predefinito. Se questo campo è vuoto o non specificato, CES utilizzerà l'archivio attendibilità predefinito di Google per verificare i certificati. Nota: assicurati che i certificati del server HTTPS siano firmati con "subject alt name". Ad esempio, un certificato può essere autofirmato utilizzando il seguente comando: openssl x509 -req -days 200 -in example.com.csr \ -signkey example.com.key \ -out example.com.crt \ -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")

Una stringa con codifica in base64.

ServiceDirectoryConfig

Rappresentazione JSON
{
  "service": string
}
Campi
service

string

Obbligatorio. Il nome del servizio Service Directory. Formato: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. La posizione della directory dei servizi deve corrispondere a quella dell'app.

GoogleSearchTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "contextUrls": [
    string
  ],
  "preferredDomains": [
    string
  ],
  "excludeDomains": [
    string
  ],
  "promptConfig": {
    object (PromptConfig)
  }
}
Campi
name

string

Obbligatorio. Il nome dello strumento.

description

string

Facoltativo. Descrizione dello scopo dello strumento.

contextUrls[]

string

Facoltativo. I contenuti verranno recuperati direttamente da questi URL per il contesto e la base. Esempio: "https://example.com/path.html". Sono consentiti massimo 20 URL.

preferredDomains[]

string

Facoltativo. Specifica i domini a cui limitare i risultati di ricerca. Esempio: "example.com", "another.site". È possibile specificare un massimo di 20 domini.

excludeDomains[]

string

Facoltativo. Elenco dei domini da escludere dai risultati di ricerca. Esempio: "example.com". È possibile escludere un massimo di 2000 domini.

promptConfig

object (PromptConfig)

Facoltativo. Istruzioni del prompt trasmesse al planner su come devono essere elaborati i risultati di ricerca per il testo e la voce.

PromptConfig

Rappresentazione JSON
{
  "textPrompt": string,
  "voicePrompt": string
}
Campi
textPrompt

string

Facoltativo. Definisce il prompt utilizzato per le istruzioni di sistema quando interagisci con l'agente nelle conversazioni di chat. Se non impostato, verrà utilizzato il prompt predefinito.

voicePrompt

string

Facoltativo. Definisce il prompt utilizzato per le istruzioni di sistema quando interagisci con l'agente nelle conversazioni vocali. Se non impostato, verrà utilizzato il prompt predefinito.

ConnectorTool

Rappresentazione JSON
{
  "connection": string,
  "action": {
    object (Action)
  },
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "name": string,
  "description": string
}
Campi
connection

string

Obbligatorio. Il nome completo della risorsa della connessione Integration Connectors a cui viene fatto riferimento. Formato: projects/{project}/locations/{location}/connections/{connection}

action

object (Action)

Obbligatorio. Azione da utilizzare per lo strumento.

authConfig

object (EndUserAuthConfig)

Facoltativo. Configura la gestione dell'autenticazione in Integration Connectors. Per impostazione predefinita, un'autenticazione amministratore viene trasmessa nelle richieste dell'API Integration Connectors. Puoi ignorarlo con una configurazione di autenticazione dell'utente finale diversa. Nota: per specificare una configurazione EUC qui, l'override dell'autenticazione deve essere abilitato nella connessione. In caso contrario, la creazione di ConnectorTool non riuscirà. Per i dettagli, vedi https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override.

name

string

Facoltativo. Il nome dello strumento che può essere utilizzato dall'agente per decidere se chiamare questo ConnectorTool.

description

string

Facoltativo. La descrizione dello strumento che può essere utilizzata dall'agente per decidere se chiamare questo ConnectorTool.

Azione

Rappresentazione JSON
{
  "inputFields": [
    string
  ],
  "outputFields": [
    string
  ],

  // Union field action_spec can be only one of the following:
  "connectionActionId": string,
  "entityOperation": {
    object (EntityOperation)
  }
  // End of list of possible types for union field action_spec.
}
Campi
inputFields[]

string

Facoltativo. Campi dell'entità da utilizzare come input per l'operazione. Se non vengono specificati campi, verranno utilizzati tutti i campi dell'entità.

outputFields[]

string

Facoltativo. Campi dell'entità da restituire dall'operazione. Se non vengono specificati campi, vengono restituiti tutti i campi dell'entità.

Campo unione action_spec. Specifica di un'azione da configurare per l'utilizzo dello strumento. action_spec può essere solo uno dei seguenti tipi:
connectionActionId

string

ID di un'azione di connessione da utilizzare per lo strumento.

entityOperation

object (EntityOperation)

Configurazione dell'operazione dell'entità da utilizzare per lo strumento.

EntityOperation

Rappresentazione JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Campi
entityId

string

Obbligatorio. ID dell'entità.

operation

enum (OperationType)

Obbligatorio. Operazione da eseguire sull'entità.

EndUserAuthConfig

Rappresentazione JSON
{

  // Union field auth_config can be only one of the following:
  "oauth2AuthCodeConfig": {
    object (Oauth2AuthCodeConfig)
  },
  "oauth2JwtBearerConfig": {
    object (Oauth2JwtBearerConfig)
  }
  // End of list of possible types for union field auth_config.
}
Campi
Campo unione auth_config. La configurazione di autenticazione. auth_config può essere solo uno dei seguenti tipi:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autenticazione del codice di autorizzazione OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autenticazione della concessione di autorizzazione OAuth 2.0 del profilo JWT.

Oauth2AuthCodeConfig

Rappresentazione JSON
{
  "oauthToken": string
}
Campi
oauthToken

string

Obbligatorio. Nome del parametro del token OAuth da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Rappresentazione JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Campi
issuer

string

Obbligatorio. Nome del parametro dell'emittente da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

subject

string

Obbligatorio. Nome del parametro oggetto da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

clientKey

string

Obbligatorio. Nome del parametro client da trasferire. Deve essere nel formato $context.variables.<name_of_variable>.

DataStoreTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "boostSpecs": [
    {
      object (BoostSpecs)
    }
  ],
  "modalityConfigs": [
    {
      object (ModalityConfig)
    }
  ],
  "filterParameterBehavior": enum (FilterParameterBehavior),

  // Union field search_source can be only one of the following:
  "dataStoreSource": {
    object (DataStoreSource)
  },
  "engineSource": {
    object (EngineSource)
  }
  // End of list of possible types for union field search_source.
}
Campi
name

string

Obbligatorio. Il nome dello strumento datastore.

description

string

Facoltativo. La descrizione dello strumento.

boostSpecs[]

object (BoostSpecs)

Facoltativo. Aumenta la specifica per aumentare la visibilità di determinati documenti.

modalityConfigs[]

object (ModalityConfig)

Facoltativo. Le configurazioni della modalità per il datastore.

filterParameterBehavior

enum (FilterParameterBehavior)

Facoltativo. Il comportamento del parametro di filtro.

Campo unione search_source. Definisce l'origine di ricerca, ovvero un singolo datastore o un motore. search_source può essere solo uno dei seguenti tipi:
dataStoreSource

object (DataStoreSource)

Facoltativo. Eseguire ricerche all'interno di un singolo DataStore specifico.

engineSource

object (EngineSource)

Facoltativo. Cerca all'interno di un motore (potenzialmente in più datastore).

DataStoreSource

Rappresentazione JSON
{
  "filter": string,
  "dataStore": {
    object (DataStore)
  }
}
Campi
filter

string

Facoltativo. Specifica del filtro per il datastore. Consulta: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

dataStore

object (DataStore)

Facoltativo. Il datastore.

DataStore

Rappresentazione JSON
{
  "name": string,
  "type": enum (DataStoreType),
  "documentProcessingMode": enum (DocumentProcessingMode),
  "displayName": string,
  "createTime": string,
  "connectorConfig": {
    object (ConnectorConfig)
  }
}
Campi
name

string

Obbligatorio. Nome completo della risorsa del datastore. Formato: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}

type

enum (DataStoreType)

Solo output. Il tipo di datastore. Questo campo è di sola lettura e viene compilato dal server.

documentProcessingMode

enum (DocumentProcessingMode)

Solo output. La modalità di elaborazione dei documenti per la connessione dell'datastore. Impostato solo per i datastore PUBLIC_WEB e UNSTRUCTURED.

displayName

string

Solo output. Il nome visualizzato del datastore.

createTime

string (Timestamp format)

Solo output. Timestamp di creazione del datastore.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

connectorConfig

object (ConnectorConfig)

Solo output. La configurazione del connettore per la connessione al datastore.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori non negativi dei nanosecondi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

ConnectorConfig

Rappresentazione JSON
{
  "collection": string,
  "collectionDisplayName": string,
  "dataSource": string
}
Campi
collection

string

Il nome della risorsa della raccolta a cui appartiene il datastore.

collectionDisplayName

string

Nome visualizzato della raccolta a cui appartiene il datastore.

dataSource

string

Il nome dell'origine dati. Esempio: salesforce, jira, confluence, bigquery.

EngineSource

Rappresentazione JSON
{
  "engine": string,
  "dataStoreSources": [
    {
      object (DataStoreSource)
    }
  ],
  "filter": string
}
Campi
engine

string

Obbligatorio. Nome completo della risorsa del motore. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

dataStoreSources[]

object (DataStoreSource)

Facoltativo. Utilizza questo campo per scegliere come target DataStore specifici all'interno del motore. Se vuoto, la ricerca viene applicata a tutti i Data Store associati al motore.

filter

string

Facoltativo. Un filtro applicato alla ricerca nel motore. Non pertinente e non utilizzato se viene fornito "data_store_sources". Consulta: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

BoostSpecs

Rappresentazione JSON
{
  "dataStores": [
    string
  ],
  "spec": [
    {
      object (BoostSpec)
    }
  ]
}
Campi
dataStores[]

string

Obbligatorio. Il datastore in cui viene applicata la configurazione del boosting. Nome completo della risorsa DataStore, ad esempio projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}.

spec[]

object (BoostSpec)

Obbligatorio. Un elenco di specifiche di boosting.

BoostSpec

Rappresentazione JSON
{
  "conditionBoostSpecs": [
    {
      object (ConditionBoostSpec)
    }
  ]
}
Campi
conditionBoostSpecs[]

object (ConditionBoostSpec)

Obbligatorio. Un elenco di specifiche di boosting.

ConditionBoostSpec

Rappresentazione JSON
{
  "condition": string,
  "boost": number,
  "boostControlSpec": {
    object (BoostControlSpec)
  }
}
Campi
condition

string

Obbligatorio. Un'espressione che specifica una condizione di aumento. La sintassi è la stessa delle espressioni di filtro. Al momento, l'unica condizione supportata è un elenco di codici lingua BCP-47. Esempio: per aumentare i suggerimenti nelle lingue inglese o francese: (lang_code: ANY("en", "fr"))

boost

number

Facoltativo. L'intensità del boost, che deve essere compresa tra -1 e 1. Un boosting negativo indica una retrocessione. Il valore predefinito è 0.0.

Se il boosting viene impostato su 1.0, i suggerimenti vengono promossi maggiormente. Tuttavia, non significa necessariamente che il risultato in cima alla prima pagina sarà un suggerimento con boosting.

Se il valore viene impostato su -1.0, i suggerimenti vengono declassati in modo significativo. Tuttavia, potrebbero comunque essere mostrati altri suggerimenti pertinenti.

Se il valore è impostato su 0,0, non viene applicato alcun boost. La condizione di incremento viene ignorata.

boostControlSpec

object (BoostControlSpec)

Facoltativo. Specifica complessa per il ranking personalizzato in base al valore dell'attributo definito dal cliente.

BoostControlSpec

Rappresentazione JSON
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Campi
fieldName

string

Facoltativo. Il nome del campo il cui valore verrà utilizzato per determinare l'importo dell'aggiustamento.

attributeType

enum (AttributeType)

Facoltativo. Il tipo di attributo da utilizzare per determinare l'importo del boost. Il valore dell'attributo può essere derivato dal valore del campo field_name specificato. Nel caso di valori numerici, è semplice, ad esempio attribute_value = numerical_field_value. Nel caso della freschezza, attribute_value = (time.now() - datetime_field_value).

interpolationType

enum (InterpolationType)

Facoltativo. Il tipo di interpolazione da applicare per collegare i punti di controllo elencati di seguito.

controlPoints[]

object (ControlPoint)

Facoltativo. I punti di controllo utilizzati per definire la curva. La funzione monotona (definita tramite interpolation_type sopra) passa attraverso i punti di controllo elencati qui.

ControlPoint

Rappresentazione JSON
{
  "attributeValue": string,
  "boostAmount": number
}
Campi
attributeValue

string

Facoltativo. Può essere uno dei seguenti: 1. Il valore del campo numerico. 2. La specifica della durata per l'aggiornamento: il valore deve essere formattato come valore XSD dayTimeDuration (un sottoinsieme limitato di un valore di durata ISO 8601). Il pattern è: [nD][T[nH][nM][nS]].

boostAmount

number

Facoltativo. Il valore compreso tra -1 e 1 in base al quale aumentare il punteggio se attribute_value restituisce il valore specificato sopra.

ModalityConfig

Rappresentazione JSON
{
  "modalityType": enum (ModalityType),
  "rewriterConfig": {
    object (RewriterConfig)
  },
  "summarizationConfig": {
    object (SummarizationConfig)
  },
  "groundingConfig": {
    object (GroundingConfig)
  }
}
Campi
modalityType

enum (ModalityType)

Obbligatorio. Il tipo di modalità.

rewriterConfig

object (RewriterConfig)

Facoltativo. La configurazione dello strumento di riscrittura.

summarizationConfig

object (SummarizationConfig)

Facoltativo. La configurazione del riepilogo.

groundingConfig

object (GroundingConfig)

Facoltativo. La configurazione di messa a terra.

RewriterConfig

Rappresentazione JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campi
modelSettings

object (ModelSettings)

Obbligatorio. Configurazioni per il modello LLM.

prompt

string

Facoltativo. La definizione del prompt. Se non impostato, verrà utilizzato il prompt predefinito.

disabled

boolean

Facoltativo. Indica se il rewriter è disattivato.

ModelSettings

Rappresentazione JSON
{
  "model": string,

  // Union field _temperature can be only one of the following:
  "temperature": number
  // End of list of possible types for union field _temperature.
}
Campi
model

string

Facoltativo. Il modello LLM che l'agente deve utilizzare. Se non è impostato, l'agente erediterà il modello dall'agente principale.

Campo unione _temperature.

_temperature può essere solo uno dei seguenti tipi:

temperature

number

Facoltativo. Se impostata, questa temperatura verrà utilizzata per il modello LLM. La temperatura controlla la casualità delle risposte del modello. Le temperature più basse producono risposte più prevedibili. Le temperature più alte producono risposte più creative.

SummarizationConfig

Rappresentazione JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campi
modelSettings

object (ModelSettings)

Facoltativo. Configurazioni per il modello LLM.

prompt

string

Facoltativo. La definizione del prompt. Se non impostato, verrà utilizzato il prompt predefinito.

disabled

boolean

Facoltativo. Indica se il riepilogo è disattivato.

GroundingConfig

Rappresentazione JSON
{
  "groundingLevel": number,
  "disabled": boolean
}
Campi
groundingLevel

number

Facoltativo. La soglia di fondatezza della risposta in base alle fonti recuperate. Il valore ha un intervallo configurabile di [1, 5]. Il livello viene utilizzato per impostare una soglia per la fondatezza della risposta, il che significa che tutte le risposte con un punteggio di fondatezza inferiore alla soglia torneranno a restituire solo snippet pertinenti.

Ad esempio, un livello 3 significa che il punteggio di fondatezza deve essere pari o superiore a 3 affinché la risposta venga restituita.

disabled

boolean

Facoltativo. Indica se la messa a terra è disattivata.

PythonFunction

Rappresentazione JSON
{
  "name": string,
  "pythonCode": string,
  "description": string
}
Campi
name

string

Facoltativo. Il nome della funzione Python da eseguire. Deve corrispondere al nome di una funzione Python definita nel codice Python. Sensibile alle maiuscole. Se il nome non viene fornito, verrà utilizzata la prima funzione definita nel codice Python.

pythonCode

string

Facoltativo. Il codice Python da eseguire per lo strumento.

description

string

Solo output. La descrizione della funzione Python, analizzata dalla docstring del codice Python.

McpTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  },
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  }
}
Campi
name

string

Obbligatorio. Il nome dello strumento MCP.

description

string

Facoltativo. La descrizione dello strumento MCP.

inputSchema

object (Schema)

Facoltativo. Lo schema degli argomenti di input dello strumento MCP.

outputSchema

object (Schema)

Facoltativo. Lo schema degli argomenti di output dello strumento MCP.

serverAddress

string

Obbligatorio. L'indirizzo del server MCP, ad esempio "https://example.com/mcp/". Se il server è creato con l'SDK MCP, l'URL deve avere il suffisso "/mcp/". Sono supportati solo i server basati sul trasporto HTTP in streaming. È uguale a server_address in McpToolset. Per ulteriori dettagli, consulta la pagina https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http.

apiAuthentication

object (ApiAuthentication)

Facoltativo. Informazioni di autenticazione necessarie per eseguire lo strumento sul server MCP. Per l'autenticazione con token di autenticazione, il token si applica solo all'esecuzione dello strumento, non agli strumenti di inserzione. Ciò richiede che gli strumenti possano essere elencati senza autenticazione.

tlsConfig

object (TlsConfig)

Facoltativo. La configurazione TLS. Include i certificati del server personalizzati che il client deve considerare attendibili.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Facoltativo. Configurazione di Service Directory per VPC-SC, utilizzata per risolvere i nomi dei servizi all'interno di un perimetro.

FileSearchTool

Rappresentazione JSON
{
  "corpusType": enum (CorpusType),
  "name": string,
  "description": string,
  "fileCorpus": string
}
Campi
corpusType

enum (CorpusType)

Facoltativo. Il tipo di corpus. Il valore predefinito è FULLY_MANAGED.

name

string

Obbligatorio. Il nome dello strumento.

description

string

Facoltativo. La descrizione dello strumento.

fileCorpus

string

Facoltativo. Il corpus in cui sono archiviati i file. Formato: projects/{project}/locations/{location}/ragCorpora/{rag_corpus}

SystemTool

Rappresentazione JSON
{
  "name": string,
  "description": string
}
Campi
name

string

Obbligatorio. Il nome dello strumento di sistema.

description

string

Solo output. La descrizione dello strumento di sistema.

WidgetTool

Rappresentazione JSON
{
  "name": string,
  "description": string,
  "widgetType": enum (WidgetType),

  // Union field input can be only one of the following:
  "parameters": {
    object (Schema)
  }
  // End of list of possible types for union field input.
}
Campi
name

string

Obbligatorio. Il nome visualizzato dello strumento widget.

description

string

Facoltativo. La descrizione dello strumento widget.

widgetType

enum (WidgetType)

Facoltativo. Il tipo di strumento widget. Se non specificato, il tipo predefinito sarà CUSTOMIZED.

Campo unione input. L'input dello strumento widget. input può essere solo uno dei seguenti tipi:
parameters

object (Schema)

Facoltativo. I parametri di input dello strumento widget.

ToolFakeConfig

Rappresentazione JSON
{
  "enableFakeMode": boolean,

  // Union field tool_response can be only one of the following:
  "codeBlock": {
    object (CodeBlock)
  }
  // End of list of possible types for union field tool_response.
}
Campi
enableFakeMode

boolean

Facoltativo. Indica se lo strumento utilizza la modalità Falso.

Campo unione tool_response. La risposta è statica o fornita da una funzione Python. tool_response può essere solo uno dei seguenti tipi:
codeBlock

object (CodeBlock)

Facoltativo. Blocco di codice che verrà eseguito al posto di una chiamata allo strumento reale.

CodeBlock

Rappresentazione JSON
{
  "pythonCode": string
}
Campi
pythonCode

string

Obbligatorio. Codice Python che verrà richiamato in modalità di simulazione dello strumento. Firma della funzione Python prevista: per intercettare tutte le chiamate di strumenti: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: per intercettare una chiamata di strumenti specifica: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: se la funzione restituisce None, verrà richiamato lo strumento reale.

Annotazioni dello strumento

Suggerimento distruttivo: ✅ | Suggerimento idempotente: ❌ | Suggerimento di sola lettura: ❌ | Suggerimento open world: ❌