MCP Tools Reference: ces.googleapis.com

Ferramenta: get_app_version

Recebe detalhes da versão do app especificada.

O exemplo de código a seguir mostra como usar curl para chamar a ferramenta MCP get_app_version.

Solicitação 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": "get_app_version",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Mensagem de solicitação para AgentService.GetAppVersion.

GetAppVersionRequest

Representação JSON
{
  "name": string
}
Campos
name

string

Obrigatório. O nome do recurso da versão do app a ser recuperada.

Esquema de saída

No Pacote de engajamento do cliente (CES), uma versão do app é um snapshot do app em um momento específico. Ele é imutável e não pode ser modificado depois de criado.

AppVersion

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "creator": string,
  "createTime": string,
  "updateTime": string,
  "snapshot": {
    object (AppSnapshot)
  },
  "etag": string
}
Campos
name

string

Identificador. O identificador exclusivo da versão do app. Formato: projects/{project}/locations/{location}/apps/{app}/versions/{version}

displayName

string

Opcional. O nome de exibição da versão do app.

description

string

Opcional. A descrição da versão do app.

creator

string

Apenas saída. E-mail do usuário que criou a versão do app.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a versão do app foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização da versão do app.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

snapshot

object (AppSnapshot)

Apenas saída. O snapshot do app quando a versão é criada.

etag

string

Apenas saída. Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

Carimbo de data/hora

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa os segundos do horário UTC desde a época Unix 1970-01-01T00:00:00Z. Precisa estar entre -62135596800 e 253402300799 (o que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Frações não negativas de um segundo com resolução de nanossegundos. Esse campo é a parte de nanossegundos da duração, não uma alternativa aos segundos. Os valores de segundos negativos com frações ainda precisam ter valores em nanossegundos não negativos que representam períodos posteriores. O valor precisa ser de 0 a 999.999.999.

AppSnapshot

Representação JSON
{
  "app": {
    object (App)
  },
  "agents": [
    {
      object (Agent)
    }
  ],
  "tools": [
    {
      object (Tool)
    }
  ],
  "examples": [
    {
      object (Example)
    }
  ],
  "guardrails": [
    {
      object (Guardrail)
    }
  ],
  "toolsets": [
    {
      object (Toolset)
    }
  ]
}
Campos
app

object (App)

Opcional. As configurações básicas do app.

agents[]

object (Agent)

Opcional. Lista de agentes no app.

tools[]

object (Tool)

Opcional. Lista de ferramentas no app.

examples[]

object (Example)

Opcional. Lista de exemplos no app.

guardrails[]

object (Guardrail)

Opcional. Lista de proteções no app.

toolsets[]

object (Toolset)

Opcional. Lista de conjuntos de ferramentas no app.

App

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "pinned": boolean,
  "rootAgent": string,
  "languageSettings": {
    object (LanguageSettings)
  },
  "timeZoneSettings": {
    object (TimeZoneSettings)
  },
  "audioProcessingConfig": {
    object (AudioProcessingConfig)
  },
  "loggingSettings": {
    object (LoggingSettings)
  },
  "errorHandlingSettings": {
    object (ErrorHandlingSettings)
  },
  "modelSettings": {
    object (ModelSettings)
  },
  "toolExecutionMode": enum (ToolExecutionMode),
  "evaluationMetricsThresholds": {
    object (EvaluationMetricsThresholds)
  },
  "variableDeclarations": [
    {
      object (VariableDeclaration)
    }
  ],
  "predefinedVariableDeclarations": [
    {
      object (VariableDeclaration)
    }
  ],
  "globalInstruction": string,
  "guardrails": [
    string
  ],
  "dataStoreSettings": {
    object (DataStoreSettings)
  },
  "defaultChannelProfile": {
    object (ChannelProfile)
  },
  "metadata": {
    string: string,
    ...
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "deploymentCount": integer,
  "clientCertificateSettings": {
    object (ClientCertificateSettings)
  },
  "vpcScSettings": {
    object (VpcScSettings)
  },
  "locked": boolean,
  "validationErrors": [
    string
  ],
  "dashboardSettings": {
    object (DashboardSettings)
  }
}
Campos
name

string

Identificador. O identificador exclusivo do app. Formato: projects/{project}/locations/{location}/apps/{app}

displayName

string

Obrigatório. Nome de exibição do app.

description

string

Opcional. Descrição legível do app.

pinned

boolean

Opcional. Se o app está fixado na lista de apps.

rootAgent

string

Opcional. O agente raiz é o ponto de entrada do app. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

languageSettings

object (LanguageSettings)

Opcional. Configurações de idioma do app.

timeZoneSettings

object (TimeZoneSettings)

Opcional. Configurações de fuso horário do app.

audioProcessingConfig

object (AudioProcessingConfig)

Opcional. Configuração de processamento de áudio do app.

loggingSettings

object (LoggingSettings)

Opcional. Configurações de registro do app.

errorHandlingSettings

object (ErrorHandlingSettings)

Opcional. Configurações de tratamento de erros do app.

modelSettings

object (ModelSettings)

Opcional. As configurações padrão do modelo de LLM para o app. Recursos individuais (por exemplo, agentes, mecanismos de segurança) podem substituir essas configurações conforme necessário.

toolExecutionMode

enum (ToolExecutionMode)

Opcional. O modo de execução da ferramenta para o app. Se não for fornecido, o padrão será PARALLEL.

evaluationMetricsThresholds

object (EvaluationMetricsThresholds)

Opcional. Os limites de avaliação do app.

variableDeclarations[]

object (VariableDeclaration)

Opcional. As declarações das variáveis.

predefinedVariableDeclarations[]

object (VariableDeclaration)

Apenas saída. As declarações de variáveis predefinidas para o app.

globalInstruction

string

Opcional. Instruções para todos os agentes no app. Use essa instrução para configurar uma identidade ou personalidade estável em todos os agentes.

guardrails[]

string

Opcional. Lista de guardrails para o app. Formato: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

dataStoreSettings

object (DataStoreSettings)

Opcional. As configurações do repositório de dados para o app.

defaultChannelProfile

object (ChannelProfile)

Opcional. O perfil de canal padrão usado pelo app.

metadata

map (key: string, value: string)

Opcional. Metadados sobre o app. Esse campo pode ser usado para armazenar informações adicionais relevantes para os detalhes ou usos pretendidos do app.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o app foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do app.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Apenas saída. Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

deploymentCount

integer

Apenas saída. Número de implantações no app.

clientCertificateSettings

object (ClientCertificateSettings)

Opcional. As configurações padrão de certificado do cliente para o app.

vpcScSettings

object (VpcScSettings)

Opcional. Configurações de VPC-SC para o app.

locked

boolean

Opcional. Indica se o app está bloqueado para mudanças. Se o app estiver bloqueado, as modificações nos recursos dele serão rejeitadas.

validationErrors[]

string

Apenas saída. Configurações incorretas ou avisos no app.

dashboardSettings

object (DashboardSettings)

Opcional. Configurações de painel específicas do app para vincular e configurar painéis do Contact Center Insights.

LanguageSettings

Representação JSON
{
  "defaultLanguageCode": string,
  "supportedLanguageCodes": [
    string
  ],
  "enableMultilingualSupport": boolean,
  "fallbackAction": string
}
Campos
defaultLanguageCode

string

Opcional. O código de idioma padrão do app.

supportedLanguageCodes[]

string

Opcional. Lista de códigos de idiomas compatíveis com o app, além do default_language_code.

enableMultilingualSupport

boolean

Opcional. Ativa o suporte multilíngue. Se for "true", os agentes no app vão usar instruções pré-criadas para melhorar o processamento de entradas multilíngues.

fallbackAction
(deprecated)

string

Opcional. Descontinuado: esse recurso não está mais disponível. Use enable_multilingual_support para melhorar o processamento de entradas multilíngues. A ação a ser realizada quando um agente recebe uma entrada em um idioma sem suporte.

Pode ser uma ação predefinida ou uma chamada de função personalizada. Os valores válidos são: - O nome completo do recurso de uma ferramenta, que aciona a execução de uma ferramenta específica. - Uma ação predefinida do sistema, como "escalar" ou "sair", que aciona um sinal EndSession com o metadata correspondente para encerrar a conversa.

TimeZoneSettings

Representação JSON
{
  "timeZone": string
}
Campos
timeZone

string

Opcional. O fuso horário do app do banco de dados de fuso horário, por exemplo, America/Los_Angeles, Europe/Paris.

AudioProcessingConfig

Representação JSON
{
  "synthesizeSpeechConfigs": {
    string: {
      object (SynthesizeSpeechConfig)
    },
    ...
  },
  "bargeInConfig": {
    object (BargeInConfig)
  },
  "inactivityTimeout": string,
  "ambientSoundConfig": {
    object (AmbientSoundConfig)
  },
  "customVoiceSamples": [
    {
      object (CustomVoiceSample)
    }
  ]
}
Campos
synthesizeSpeechConfigs

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

Opcional. Configuração de como a resposta do agente deve ser sintetizada, mapeando do código de idioma para SynthesizeSpeechConfig.

Se a configuração do código de idioma especificado não for encontrada, a configuração do código de idioma raiz será usada. Por exemplo, se o mapa contiver "en-us" e "en", e o código de idioma especificado for "en-gb", a configuração "en" será usada.

Observação: o código do idioma não diferencia maiúsculas de minúsculas.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

bargeInConfig

object (BargeInConfig)

Opcional. Configura o comportamento do agente para as atividades de interrupção do usuário.

inactivityTimeout

string (Duration format)

Opcional. A duração da inatividade do usuário (sem fala ou interação) antes que o agente peça para ele interagir novamente. Se não for definido, o agente não vai pedir que o usuário se envolva novamente.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

ambientSoundConfig

object (AmbientSoundConfig)

Opcional. Configuração para o som ambiente a ser reproduzido com a resposta sintetizada do agente, para aumentar a naturalidade da conversa.

customVoiceSamples[]

object (CustomVoiceSample)

Opcional. Configura amostras de voz personalizadas para clonagem de voz.

SynthesizeSpeechConfigsEntry

Representação JSON
{
  "key": string,
  "value": {
    object (SynthesizeSpeechConfig)
  }
}
Campos
key

string

value

object (SynthesizeSpeechConfig)

SynthesizeSpeechConfig

Representação JSON
{
  "voice": string,
  "speakingRate": number,
  "model": string,
  "instruction": string
}
Campos
voice

string

Opcional. Nome da voz. Se não for definido, o serviço vai escolher uma voz com base nos outros parâmetros, como language_code.

Para conferir a lista de vozes disponíveis, consulte Vozes e idiomas compatíveis da Cloud Text-to-Speech.

speakingRate

number

Opcional. A taxa/velocidade de fala no intervalo [0,25, 2,0]. 1,0 é a velocidade nativa normal compatível com a voz específica. 2,0 é duas vezes mais rápido e 0,5 é metade da velocidade nativa. Valores fora do intervalo [0,25, 2,0] vão retornar um erro.

model

string

Opcional. O modelo usado para sintetizar áudio. Valores aceitos no momento: "gemini-3.1-flash-tts-preview". Se estiver vazio, o Chirp3-HD será usado.

instruction

string

Opcional. A instrução usada para sintetizar a fala ao usar um modelo generativo.

BargeInConfig

Representação JSON
{
  "disableBargeIn": boolean,
  "bargeInAwareness": boolean
}
Campos
disableBargeIn
(deprecated)

boolean

Opcional. Descontinuado: disable_barge_in foi descontinuado em favor de disable_barge_in_control em ChannelProfile.

Desativa a interrupção do usuário enquanto o agente está falando. Se for verdadeiro, a entrada do usuário durante a reprodução da resposta do agente será ignorada.

bargeInAwareness

boolean

Opcional. Se ativada, o agente vai adaptar a próxima resposta com base na suposição de que o usuário não ouviu a mensagem completa anterior do agente. Isso não deve ser usado em cenários em que as respostas do agente são mostradas visualmente.

Duração

Representação JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Segundos assinados do período. Precisa estar entre -315.576.000.000 e +315.576.000.000 (inclusive). Observação: esses limites são calculados da seguinte forma: 60 s/min * 60 min/h * 24 h/dia * 365,25 dias/ano * 10.000 anos

nanos

integer

Frações assinadas de um segundo com resolução de nanossegundos do período. Durações menores que um segundo são representadas com um campo 0 seconds e um campo nanos positivo ou negativo. Para durações de um segundo ou mais, um valor diferente de zero para o campo nanos precisa ter o mesmo sinal do campo seconds. Precisa estar entre -999.999.999 e +999.999.999 (inclusive).

AmbientSoundConfig

Representação JSON
{
  "volumeGainDb": number,

  // Union field source can be only one of the following:
  "prebuiltAmbientNoise": enum (PrebuiltAmbientNoise),
  "gcsUri": string,
  "prebuiltAmbientSound": string
  // End of list of possible types for union field source.
}
Campos
volumeGainDb

number

Opcional. Ganho de volume (em dB) do volume nativo normal compatível com ruído ambiente, no intervalo [-96,0, 16,0]. Se não for definido, ou ajustado para um valor de 0,0 (dB), será reproduzido na amplitude de sinal nativo normal. Um valor de -6,0 (dB) será reproduzido em aproximadamente metade da amplitude do sinal nativo normal. Um valor de +6,0 (dB) será reproduzido em aproximadamente o dobro da amplitude do sinal nativo normal. É altamente recomendável não exceder +10 (dB). Geralmente, não há aumento efetivo de volume para qualquer valor maior que isso.

Campo de união source. Ruído ambiente a ser reproduzido com a resposta sintetizada do agente para aumentar a naturalidade da conversa. source pode ser apenas de um dos tipos a seguir:
prebuiltAmbientNoise
(deprecated)

enum (PrebuiltAmbientNoise)

Opcional. Descontinuado: prebuilt_ambient_noise foi descontinuado em favor de prebuilt_ambient_sound.

gcsUri

string

Opcional. Ruído ambiente como um arquivo WAV de 16 kHz e um canal armazenado no Cloud Storage.

Observação: verifique se o agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com tem permissão storage.objects.get para o objeto do Cloud Storage.

prebuiltAmbientSound

string

Opcional. Nome do som ambiente predefinido. Os valores válidos são: "coffee_shop", "keyboard", "keypad", "hum", "office_1", "office_2", "office_3", "room_1", "room_2", "room_3", "room_4", "room_5" e "air_conditioner".

CustomVoiceSample

Representação JSON
{
  "name": string,
  "voiceSampleGcsUri": string,
  "consentAudioGcsUri": string,
  "voiceInstruction": string,
  "previewAudioContent": string,
  "previewText": string,
  "warnings": [
    {
      object (Warning)
    }
  ],
  "voiceInstructionMode": enum (VoiceInstructionMode)
}
Campos
name

string

Opcional. O nome definido pelo usuário para a amostra de voz personalizada.

voiceSampleGcsUri

string

Opcional. O URI do Cloud Storage para a amostra de áudio da clonagem de voz. A amostra de áudio precisa ser um arquivo WAV de 24 kHz e um canal.

consentAudioGcsUri

string

Opcional. Áudio de consentimento para clonagem de voz.

voiceInstruction

string

Opcional. Instruções em linguagem natural para estilo, tom, ritmo ou pronúncia da voz.

previewAudioContent

string (bytes format)

Apenas saída. Áudio de prévia sintetizado para voz personalizada, formatado como WAV canônico (LINEAR16, 24 kHz, 16 bits, mono).

Uma string codificada em base64.

previewText

string

Opcional. Texto para sintetizar o áudio de prévia da voz personalizada.

warnings[]

object (Warning)

Apenas saída. Mensagens de aviso encontradas durante o processamento da clonagem de voz (por exemplo, nível de áudio baixo).

voiceInstructionMode

enum (VoiceInstructionMode)

Opcional. Modo de instrução para a amostra de voz. Se não for especificado, o padrão será NO_INSTRUCTION.

Alerta

Representação JSON
{
  "message": string,
  "type": enum (WarningType)
}
Campos
message

string

Apenas saída. Uma descrição legível por humanos do aviso.

type

enum (WarningType)

Apenas saída. O tipo de aviso.

LoggingSettings

Representação JSON
{
  "redactionConfig": {
    object (RedactionConfig)
  },
  "audioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "unredactedAudioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "bigqueryExportSettings": {
    object (BigQueryExportSettings)
  },
  "unredactedBigqueryExportSettings": {
    object (BigQueryExportSettings)
  },
  "cloudLoggingSettings": {
    object (CloudLoggingSettings)
  },
  "conversationLoggingSettings": {
    object (ConversationLoggingSettings)
  },
  "evaluationAudioRecordingConfig": {
    object (AudioRecordingConfig)
  },
  "metricAnalysisSettings": {
    object (MetricAnalysisSettings)
  }
}
Campos
redactionConfig

object (RedactionConfig)

Opcional. Configuração de como os dados sensíveis devem ser encobridos.

audioRecordingConfig

object (AudioRecordingConfig)

Opcional. Configuração de como as interações de áudio devem ser gravadas. O áudio está sujeito a redação conforme configurado em RedactionConfig.

unredactedAudioRecordingConfig

object (AudioRecordingConfig)

Opcional. Configura uma gravação extra de áudio sem redação. Isso pode ser usado para manter uma cópia de áudio bruta quando a redação de áudio está enabled, geralmente para fins de auditoria ou monitoramento.

bigqueryExportSettings

object (BigQueryExportSettings)

Opcional. Configura os comportamentos de exportação do BigQuery para o app. Os dados de conversa estão sujeitos à redação, conforme configurado em RedactionConfig.

unredactedBigqueryExportSettings

object (BigQueryExportSettings)

Opcional. Configura os comportamentos de exportação do BigQuery para o app. Os dados de conversa não editados serão exportados para tabelas do BigQuery se a opção estiver ativada.

cloudLoggingSettings

object (CloudLoggingSettings)

Opcional. Configurações para descrever os comportamentos do Cloud Logging para o app.

conversationLoggingSettings

object (ConversationLoggingSettings)

Opcional. Configurações para descrever os comportamentos de registro de conversas do app.

evaluationAudioRecordingConfig

object (AudioRecordingConfig)

Opcional. Configuração de como as interações de áudio devem ser gravadas para a avaliação. Por padrão, a gravação de áudio não está ativada para sessões de avaliação.

metricAnalysisSettings

object (MetricAnalysisSettings)

Opcional. Configurações para descrever os comportamentos de coleta de dados de conversa para o pipeline de análise de LLM do app.

RedactionConfig

Representação JSON
{
  "enableRedaction": boolean,
  "inspectTemplate": string,
  "deidentifyTemplate": string
}
Campos
enableRedaction

boolean

Opcional. Se for "true", a redação será aplicada em vários cenários de geração de registros, incluindo histórico de conversas, Cloud Logging e gravação de áudio.

inspectTemplate

string

Opcional. Nome do modelo de inspeção da DLP para configurar a detecção de tipos de dados sensíveis.

Formato: projects/{project}/locations/{location}/inspectTemplates/{inspect_template}

deidentifyTemplate

string

Opcional. Nome do modelo de desidentificação da DLP para instruir sobre como desidentificar conteúdo.

Formato: projects/{project}/locations/{location}/deidentifyTemplates/{deidentify_template}

AudioRecordingConfig

Representação JSON
{
  "gcsBucket": string,
  "gcsPathPrefix": string
}
Campos
gcsBucket

string

Opcional. O bucket do Cloud Storage para armazenar as gravações de áudio da sessão. O URI precisa começar com "gs://".

Escolha um local de bucket que atenda aos seus requisitos de residência de dados.

Observação: se o bucket do Cloud Storage estiver em um projeto diferente do app, conceda a permissão storage.objects.create ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

gcsPathPrefix

string

Opcional. O prefixo do caminho do Cloud Storage para gravações de áudio.

Esse prefixo pode incluir os seguintes marcadores de posição, que serão substituídos dinamicamente no momento da veiculação: - $project: ID do projeto - $location: local do app - $app: ID do app - $date: data da sessão no formato AAAA-MM-DD - $session: ID da sessão

Se o prefixo de caminho não for especificado, o prefixo padrão $project/$location/$app/$date/$session/ será usado.

BigQueryExportSettings

Representação JSON
{
  "enabled": boolean,
  "project": string,
  "dataset": string
}
Campos
enabled

boolean

Opcional. Indica se a exportação do BigQuery está ativada.

project

string

Opcional. O ID do projeto do conjunto de dados do BigQuery para exportar os dados.

Observação: se o conjunto de dados do BigQuery estiver em um projeto diferente do app, conceda o papel roles/bigquery.admin ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

dataset

string

Opcional. O ID do conjunto de dados do BigQuery para exportar os dados.

CloudLoggingSettings

Representação JSON
{
  "enableCloudLogging": boolean
}
Campos
enableCloudLogging

boolean

Opcional. Define se o Cloud Logging será ativado para as sessões.

ConversationLoggingSettings

Representação JSON
{
  "disableConversationLogging": boolean,
  "retentionWindow": string
}
Campos
disableConversationLogging

boolean

Opcional. Se a geração de registros de conversas será desativada para as sessões.

retentionWindow

string (Duration format)

Opcional. Controla a janela de retenção da conversa. Se não for definido, a conversa será mantida por 365 dias.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

MetricAnalysisSettings

Representação JSON
{
  "llmMetricsOptedOut": boolean
}
Campos
llmMetricsOptedOut

boolean

Opcional. Se os dados de conversa serão coletados para métricas de análise de LLM. Se for "true", os dados de conversa não serão coletados para métricas de análise de LLM. Caso contrário, eles serão coletados.

ErrorHandlingSettings

Representação JSON
{
  "errorHandlingStrategy": enum (ErrorHandlingStrategy),
  "fallbackResponseConfig": {
    object (FallbackResponseConfig)
  },
  "endSessionConfig": {
    object (EndSessionConfig)
  }
}
Campos
errorHandlingStrategy

enum (ErrorHandlingStrategy)

Opcional. A estratégia a ser usada para tratamento de erros.

fallbackResponseConfig

object (FallbackResponseConfig)

Opcional. Configuração para processar respostas de substituição.

endSessionConfig

object (EndSessionConfig)

Opcional. Configuração para encerrar a sessão em caso de erros do sistema (por exemplo, erros de LLM).

FallbackResponseConfig

Representação JSON
{
  "customFallbackMessages": {
    string: string,
    ...
  },
  "maxFallbackAttempts": integer
}
Campos
customFallbackMessages

map (key: string, value: string)

Opcional. As mensagens substitutas em caso de erros do sistema (por exemplo, erros de LLM), mapeadas por código de idioma compatível.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

maxFallbackAttempts

integer

Opcional. O número máximo de tentativas de substituição antes de o agente emitir o indicador EndSession.

CustomFallbackMessagesEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

EndSessionConfig

Representação JSON
{

  // Union field _escalate_session can be only one of the following:
  "escalateSession": boolean
  // End of list of possible types for union field _escalate_session.
}
Campos

Campo de união _escalate_session.

_escalate_session pode ser apenas de um dos tipos a seguir:

escalateSession

boolean

Opcional. Se a sessão deve ser encaminhada em EndSession. Se a sessão for encaminhada, metadata in EndSession vai conter session_escalated = true. Consulte https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/deploy/google-telephony-platform#transfer_a_call_to_a_human_agent para mais detalhes.

ModelSettings

Representação JSON
{
  "model": string,
  "thinkingLevel": enum (ThinkingLevel),

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

string

Opcional. O modelo de LLM que o agente deve usar. Se não for definido, o agente vai herdar o modelo do agente principal.

thinkingLevel

enum (ThinkingLevel)

Opcional. O nível de raciocínio do modelo.

Campo de união _temperature.

_temperature pode ser apenas de um dos tipos a seguir:

temperature

number

Opcional. Se definido, essa temperatura será usada para o modelo de LLM. A temperatura controla a aleatoriedade das respostas do modelo. Temperaturas mais baixas produzem respostas mais previsíveis. Temperaturas mais altas produzem respostas mais criativas.

EvaluationMetricsThresholds

Representação JSON
{
  "goldenEvaluationMetricsThresholds": {
    object (GoldenEvaluationMetricsThresholds)
  },
  "hallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "goldenHallucinationMetricBehavior": enum (HallucinationMetricBehavior),
  "scenarioHallucinationMetricBehavior": enum (HallucinationMetricBehavior)
}
Campos
goldenEvaluationMetricsThresholds

object (GoldenEvaluationMetricsThresholds)

Opcional. Os limites das métricas de avaliação de dados de referência.

hallucinationMetricBehavior
(deprecated)

enum (HallucinationMetricBehavior)

Opcional. Descontinuado: use golden_hallucination_metric_behavior. O comportamento da métrica de alucinação é usado atualmente para avaliações de ouro.

goldenHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Opcional. O comportamento da métrica de alucinação para avaliações de ouro.

scenarioHallucinationMetricBehavior

enum (HallucinationMetricBehavior)

Opcional. O comportamento da métrica de alucinação para avaliações de cenário.

GoldenEvaluationMetricsThresholds

Representação JSON
{
  "turnLevelMetricsThresholds": {
    object (TurnLevelMetricsThresholds)
  },
  "expectationLevelMetricsThresholds": {
    object (ExpectationLevelMetricsThresholds)
  },
  "toolMatchingSettings": {
    object (ToolMatchingSettings)
  }
}
Campos
turnLevelMetricsThresholds

object (TurnLevelMetricsThresholds)

Opcional. Os limites das métricas no nível da interação.

expectationLevelMetricsThresholds

object (ExpectationLevelMetricsThresholds)

Opcional. Os limites das métricas de nível de expectativa.

toolMatchingSettings

object (ToolMatchingSettings)

Opcional. As configurações de correspondência da ferramenta. Uma chamada de ferramenta extra é uma chamada de ferramenta presente na execução, mas que não corresponde a nenhuma chamada de ferramenta na expectativa de ouro.

TurnLevelMetricsThresholds

Representação JSON
{
  "semanticSimilarityChannel": enum (SemanticSimilarityChannel),

  // Union field _semantic_similarity_success_threshold can be only one of the
  // following:
  "semanticSimilaritySuccessThreshold": integer
  // End of list of possible types for union field
  // _semantic_similarity_success_threshold.

  // Union field _overall_tool_invocation_correctness_threshold can be only one
  // of the following:
  "overallToolInvocationCorrectnessThreshold": number
  // End of list of possible types for union field
  // _overall_tool_invocation_correctness_threshold.
}
Campos
semanticSimilarityChannel

enum (SemanticSimilarityChannel)

Opcional. O canal de similaridade semântica a ser usado para avaliação.

Campo de união _semantic_similarity_success_threshold.

_semantic_similarity_success_threshold pode ser apenas de um dos tipos a seguir:

semanticSimilaritySuccessThreshold

integer

Opcional. O limite de sucesso para similaridade semântica. O valor precisa ser um número inteiro entre 0 e 4. O padrão é ">= 3".

Campo de união _overall_tool_invocation_correctness_threshold.

_overall_tool_invocation_correctness_threshold pode ser apenas de um dos tipos a seguir:

overallToolInvocationCorrectnessThreshold

number

Opcional. O limite de sucesso para a correção geral da invocação de ferramentas. Precisa ser um número de ponto flutuante entre 0 e 1. O padrão é 1,0.

ExpectationLevelMetricsThresholds

Representação JSON
{

  // Union field _tool_invocation_parameter_correctness_threshold can be only one
  // of the following:
  "toolInvocationParameterCorrectnessThreshold": number
  // End of list of possible types for union field
  // _tool_invocation_parameter_correctness_threshold.
}
Campos

Campo de união _tool_invocation_parameter_correctness_threshold.

_tool_invocation_parameter_correctness_threshold pode ser apenas de um dos tipos a seguir:

toolInvocationParameterCorrectnessThreshold

number

Opcional. O limite de sucesso para a correção de parâmetros de invocação de ferramentas individuais. Precisa ser um número de ponto flutuante entre 0 e 1. O padrão é 1,0.

ToolMatchingSettings

Representação JSON
{
  "extraToolCallBehavior": enum (ExtraToolCallBehavior)
}
Campos
extraToolCallBehavior

enum (ExtraToolCallBehavior)

Opcional. Comportamento para chamadas de função extras. O padrão é FAIL.

VariableDeclaration

Representação JSON
{
  "name": string,
  "description": string,
  "schema": {
    object (Schema)
  }
}
Campos
name

string

Obrigatório. O nome da variável. O nome precisa começar com uma letra ou um sublinhado e conter apenas letras, números ou sublinhados.

description

string

Obrigatório. A descrição da variável.

schema

object (Schema)

Obrigatório. O esquema da variável.

Esquema

Representação 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.
}
Campos
type

enum (Type)

Obrigatório. O tipo dos dados.

properties

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

Opcional. Propriedades de Type.OBJECT.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Opcional. Propriedades obrigatórias de Type.OBJECT.

description

string

Opcional. A descrição dos dados.

items

object (Schema)

Opcional. Esquema dos elementos de Type.ARRAY.

nullable

boolean

Opcional. Indica se o valor pode ser nulo.

uniqueItems

boolean

Opcional. Indica que os itens na matriz precisam ser exclusivos. Aplicável apenas a TYPE.ARRAY.

prefixItems[]

object (Schema)

Opcional. Esquemas dos elementos iniciais de Type.ARRAY.

additionalProperties

object (Schema)

Opcional. Pode ser um booleano ou um objeto e controla a presença de propriedades adicionais.

anyOf[]

object (Schema)

Opcional. O valor precisa ser validado em relação a qualquer um (um ou mais) dos subesquemas na lista.

enum[]

string

Opcional. Valores possíveis do elemento de tipo primitivo com formato de enumeração. Exemplos: 1. Podemos definir a direção como : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} 2. Podemos definir o número do apartamento como : {type:INTEGER, format:enum, enum:["101", "201", "301"]}

default

value (Value format)

Opcional. Valor padrão dos dados.

ref

string

Opcional. Permite referências indiretas entre nós de esquema. O valor precisa ser uma referência válida a um filho do defs raiz.

Por exemplo, o esquema a seguir define uma referência a um nó de esquema chamado "Pet":

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

O valor da propriedade "pet" é uma referência ao nó de esquema chamado "Pet". Confira detalhes em https://json-schema.org/understanding-json-schema/structuring (em inglês).

defs

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

Opcional. Um mapa de definições para uso por ref. Só é permitido na raiz do esquema.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

title

string

Opcional. O título do esquema.

minItems

string (int64 format)

Opcional. Número mínimo de elementos para Type.ARRAY.

maxItems

string (int64 format)

Opcional. Número máximo de elementos para Type.ARRAY.

Campo de união _minimum.

_minimum pode ser apenas de um dos tipos a seguir:

minimum

number

Opcional. Valor mínimo para Type.INTEGER e Type.NUMBER.

Campo de união _maximum.

_maximum pode ser apenas de um dos tipos a seguir:

maximum

number

Opcional. Valor máximo para Type.INTEGER e Type.NUMBER.

PropertiesEntry

Representação JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campos
key

string

value

object (Schema)

Valor

Representação 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.
}
Campos
Campo de união kind. O tipo de valor. kind pode ser apenas de um dos tipos a seguir:
nullValue

null

Representa um null JSON.

numberValue

number

Representa um número JSON. Não pode ser NaN, Infinity ou -Infinity, porque esses valores não são compatíveis com JSON. Além disso, não é possível representar valores Int64 grandes, já que o formato JSON geralmente não os aceita no tipo de número.

stringValue

string

Representa uma string JSON.

boolValue

boolean

Representa um booleano JSON (literal true ou false em JSON).

structValue

object (Struct format)

Representa um objeto JSON.

listValue

array (ListValue format)

Representa uma matriz JSON.

Struct

Representação JSON
{
  "fields": {
    string: value,
    ...
  }
}
Campos
fields

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

Mapa não ordenado de valores digitados dinamicamente.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

FieldsEntry

Representação JSON
{
  "key": string,
  "value": value
}
Campos
key

string

value

value (Value format)

ListValue

Representação JSON
{
  "values": [
    value
  ]
}
Campos
values[]

value (Value format)

Campo repetido de valores digitados dinamicamente.

DefsEntry

Representação JSON
{
  "key": string,
  "value": {
    object (Schema)
  }
}
Campos
key

string

value

object (Schema)

DataStoreSettings

Representação JSON
{
  "engines": [
    {
      object (Engine)
    }
  ]
}
Campos
engines[]

object (Engine)

Apenas saída. Os mecanismos do app.

Mecanismo

Representação JSON
{
  "name": string,
  "type": enum (Type)
}
Campos
name

string

Apenas saída. O nome do recurso do mecanismo. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

type

enum (Type)

Apenas saída. O tipo de motor.

ChannelProfile

Representação JSON
{
  "profileId": string,
  "channelType": enum (ChannelType),
  "personaProperty": {
    object (PersonaProperty)
  },
  "webWidgetConfig": {
    object (WebWidgetConfig)
  },
  "whatsappConfig": {
    object (WhatsAppConfig)
  },
  "instagramConfig": {
    object (InstagramConfig)
  },

  // Union field _disable_dtmf can be only one of the following:
  "disableDtmf": boolean
  // End of list of possible types for union field _disable_dtmf.

  // Union field _disable_barge_in_control can be only one of the following:
  "disableBargeInControl": boolean
  // End of list of possible types for union field _disable_barge_in_control.

  // Union field _noise_suppression_level can be only one of the following:
  "noiseSuppressionLevel": string
  // End of list of possible types for union field _noise_suppression_level.
}
Campos
profileId

string

Opcional. O identificador exclusivo do perfil do canal.

channelType

enum (ChannelType)

Opcional. O tipo do perfil do canal.

personaProperty

object (PersonaProperty)

Opcional. A propriedade de persona do perfil do canal.

webWidgetConfig

object (WebWidgetConfig)

Opcional. A configuração do widget da Web.

whatsappConfig

object (WhatsAppConfig)

Opcional. Configuração específica para implantações do WhatsApp.

instagramConfig

object (InstagramConfig)

Opcional. Configuração específica para implantações do Instagram.

Campo de união _disable_dtmf.

_disable_dtmf pode ser apenas de um dos tipos a seguir:

disableDtmf

boolean

Opcional. Indica se a multifrequência de tons duplos (DTMF) deve ser desativada.

Campo de união _disable_barge_in_control.

_disable_barge_in_control pode ser apenas de um dos tipos a seguir:

disableBargeInControl

boolean

Opcional. Se o controle de interrupção do usuário na conversa deve ser desativado. - true: as interrupções do usuário são desativadas enquanto o agente está falando. - false: o agente mantém o controle automático sobre quando o usuário pode interromper.

Campo de união _noise_suppression_level.

_noise_suppression_level pode ser apenas de um dos tipos a seguir:

noiseSuppressionLevel

string

Opcional. O nível de supressão de ruído do perfil do canal. Os valores disponíveis são "low", "moderate", "high", "very_high".

PersonaProperty

Representação JSON
{
  "persona": enum (Persona)
}
Campos
persona

enum (Persona)

Opcional. A persona do canal.

WebWidgetConfig

Representação JSON
{
  "modality": enum (Modality),
  "theme": enum (Theme),
  "webWidgetTitle": string,
  "securitySettings": {
    object (SecuritySettings)
  }
}
Campos
modality

enum (Modality)

Opcional. A modalidade do widget da Web.

theme

enum (Theme)

Opcional. O tema do widget da Web.

webWidgetTitle

string

Opcional. O título do widget da Web.

securitySettings

object (SecuritySettings)

Opcional. As configurações de segurança do widget da Web.

SecuritySettings

Representação JSON
{
  "enablePublicAccess": boolean,
  "enableOriginCheck": boolean,
  "allowedOrigins": [
    string
  ],
  "enableRecaptcha": boolean
}
Campos
enablePublicAccess

boolean

Opcional. Indica se o acesso público ao widget da Web está ativado. Se true, o widget da Web será acessível publicamente. Se false, o widget da Web precisará ser integrado ao seu próprio sistema de autenticação e autorização para retornar credenciais válidas de acesso ao agente da CES.

enableOriginCheck

boolean

Opcional. Indica se a verificação de origem do widget da Web está ativada. Se true, o widget da Web vai verificar a origem do site que o carrega e só vai permitir que ele seja carregado na mesma origem ou em qualquer uma das origens permitidas.

allowedOrigins[]

string

Opcional. As origens permitidas para hospedar o widget da Web. Uma origem é definida pela RFC 6454. Se estiver vazio, todas as origens serão permitidas. É permitido um máximo de 100 origens. Exemplo: "https://example.com"

enableRecaptcha

boolean

Opcional. Indica se a verificação reCAPTCHA para o widget da Web está ativada.

WhatsAppConfig

Representação JSON
{
  "wabaId": string,
  "phoneNumberId": string,
  "phoneNumber": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
Campos
wabaId

string

Obrigatório. O ID da conta do WhatsApp Business.

phoneNumberId

string

Obrigatório. O ID do número de telefone da Meta.

phoneNumber

string

Opcional. O número de telefone no formato E.164.

displayName

string

Apenas saída. O nome da página comercial da Meta buscada.

thumbnailUrl

string

Apenas saída. O URL da miniatura do perfil comercial do Meta buscado.

description

string

Apenas saída. A descrição da página ou do perfil comercial da Meta.

InstagramConfig

Representação JSON
{
  "instagramAccountId": string,
  "displayName": string,
  "thumbnailUrl": string,
  "description": string
}
Campos
instagramAccountId

string

Obrigatório. O ID da conta do Instagram.

displayName

string

Apenas saída. O nome da página comercial da Meta buscada.

thumbnailUrl

string

Apenas saída. O URL da miniatura do perfil comercial do Meta buscado.

description

string

Apenas saída. A descrição da página ou do perfil comercial da Meta.

MetadataEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

ClientCertificateSettings

Representação JSON
{
  "tlsCertificate": string,
  "privateKey": string,
  "passphrase": string
}
Campos
tlsCertificate

string

Obrigatório. O certificado TLS codificado no formato PEM. Essa string precisa incluir as linhas de cabeçalho de início e rodapé de fim.

privateKey

string

Obrigatório. O nome do recurso de versão secreta do Secret Manager que armazena a chave privada codificada no formato PEM. Formato: projects/{project}/secrets/{secret}/versions/{version}

passphrase

string

Opcional. O nome do recurso da versão do secret do Secret Manager que armazena a senha longa para descriptografar a chave privada. Deixe em branco se a chave privada não estiver criptografada. Formato: projects/{project}/secrets/{secret}/versions/{version}

VpcScSettings

Representação JSON
{
  "allowedOrigins": [
    string
  ]
}
Campos
allowedOrigins[]

string

Opcional. As origens HTTP(s) permitidas que as ferramentas do OpenAPI no app podem chamar diretamente quando o VPC Service Controls está ativado. Essas strings precisam corresponder exatamente à origem, incluindo a porta, se especificada. Por exemplo, "https://example.com" ou "https://example.com:443". Essa lista ainda não se aplica a ferramentas do Python que podem fazer chamadas HTTP diretas.

DashboardSettings

Representação JSON
{
  "defaultDashboard": string
}
Campos
defaultDashboard

string

Opcional. O nome do recurso do painel padrão do Contact Center Insights associado ao app. Esse é o painel que será mostrado quando os usuários acessarem a visualização de monitoramento do app.

Formato: projects/{project}/locations/{location}/dashboards/{dashboard}

Agente

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "modelSettings": {
    object (ModelSettings)
  },
  "instruction": string,
  "tools": [
    string
  ],
  "childAgents": [
    string
  ],
  "beforeAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterAgentCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterModelCallbacks": [
    {
      object (Callback)
    }
  ],
  "beforeToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "afterToolCallbacks": [
    {
      object (Callback)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "guardrails": [
    string
  ],
  "etag": string,
  "toolsets": [
    {
      object (AgentToolset)
    }
  ],
  "generatedSummary": string,
  "transferRules": [
    {
      object (TransferRule)
    }
  ],
  "validationErrors": [
    string
  ],

  // Union field agent_type can be only one of the following:
  "llmAgent": {
    object (LlmAgent)
  },
  "remoteDialogflowAgent": {
    object (RemoteDialogflowAgent)
  },
  "remoteA2aAgent": {
    object (RemoteA2aAgent)
  }
  // End of list of possible types for union field agent_type.
}
Campos
name

string

Identificador. O identificador exclusivo do agente. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Obrigatório. Nome de exibição do agente.

description

string

Opcional. Descrição do agente legível por humanos.

modelSettings

object (ModelSettings)

Opcional. Configurações do modelo de LLM.

instruction

string

Opcional. Instruções para o modelo de LLM orientar o comportamento do agente.

tools[]

string

Opcional. Lista de ferramentas disponíveis para o agente. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

childAgents[]

string

Opcional. Lista de agentes filhos na árvore de agentes. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

beforeAgentCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados antes da chamada do agente. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

afterAgentCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados depois que o agente for chamado. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

beforeModelCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados antes da chamada do modelo. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

afterModelCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados depois que o modelo é chamado. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

beforeToolCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados antes da invocação da ferramenta. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

afterToolCallbacks[]

object (Callback)

Opcional. Os callbacks a serem executados depois que a ferramenta é invocada. Se houver várias invocações de ferramentas, o callback será executado várias vezes. Os callbacks fornecidos são executados em sequência na ordem exata em que aparecem na lista. Se um callback retornar uma resposta substituída, a execução será interrompida e os callbacks restantes serão ignorados.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o agente foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do agente.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

guardrails[]

string

Opcional. Lista de mecanismos de segurança para o agente. Formato: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

etag

string

Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

toolsets[]

object (AgentToolset)

Opcional. Lista de conjuntos de ferramentas para o agente.

generatedSummary

string

Apenas saída. Se o agente for gerado pelo assistente de LLM, esse campo vai conter um resumo descritivo da geração.

transferRules[]

object (TransferRule)

Opcional. Regras de transferência de agente. Se várias regras corresponderem, a primeira da lista será usada.

validationErrors[]

string

Apenas saída. Erros ou configurações incorretas no agente que podem afetar a qualidade dele.

Campo de união agent_type. O tipo de agente. agent_type pode ser apenas de um dos tipos a seguir:
llmAgent

object (LlmAgent)

Opcional. O tipo de agente padrão.

remoteDialogflowAgent

object (RemoteDialogflowAgent)

Opcional. O agente Dialogflow remoto a ser usado para a execução do agente. Se esse campo for definido, todas as outras propriedades no nível do agente serão ignoradas.

Observação: se o agente do Dialogflow estiver em um projeto diferente do app, conceda roles/dialogflow.client ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

remoteA2aAgent

object (RemoteA2aAgent)

Opcional. O agente A2A remoto a ser usado para a execução do agente.

RemoteDialogflowAgent

Representação JSON
{
  "agent": string,
  "flowId": string,
  "environmentId": string,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "respectResponseInterruptionSettings": boolean,
  "languageCodeVariable": string
}
Campos
agent

string

Obrigatório. O nome do recurso do agente do Dialogflow. Formato: projects/{project}/locations/{location}/agents/{agent}

flowId

string

Opcional. O ID do fluxo no agente do Dialogflow.

environmentId

string

Opcional. O ID do ambiente do agente do Dialogflow a ser usado para a execução do agente. Se não for especificado, o ambiente de rascunho será usado.

inputVariableMapping

map (key: string, value: string)

Opcional. O mapeamento dos nomes das variáveis do app para os nomes dos parâmetros da sessão do Dialogflow a serem enviados ao agente do Dialogflow como entrada.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opcional. O mapeamento dos nomes dos parâmetros da sessão do Dialogflow para os nomes das variáveis do app que serão enviadas de volta ao agente do CES após o término da execução do agente do Dialogflow.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

respectResponseInterruptionSettings

boolean

Opcional. Indica se as configurações de interrupção no nível da mensagem configuradas no agente do Dialogflow devem ser respeitadas.

  • Se for "false", todas as mensagens de resposta do agente do Dialogflow vão seguir as configurações de interrupção no nível do app.
  • Se for "true": somente as mensagens de resposta com allow_playback_interruption definido como "true" poderão ser interrompidas. Todas as outras mensagens seguem as configurações de interrupção no nível do app.
languageCodeVariable

string

Opcional. O nome da variável que contém o código do idioma a ser usado na sessão do Dialogflow. Se não for especificado, o código de idioma padrão do agente do Dialogflow será usado.

InputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

OutputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

RemoteA2aAgent

Representação JSON
{
  "a2aConfig": {
    object (RemoteA2aConfig)
  }
}
Campos
a2aConfig

object (RemoteA2aConfig)

Obrigatório. A configuração da conexão A2A.

RemoteA2aConfig

Representação JSON
{
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  },
  "streamingEnabled": boolean,
  "contextId": string,

  // Union field agent_spec can be only one of the following:
  "agentCard": {
    object (AgentCard)
  },
  "agentRegistry": string
  // End of list of possible types for union field agent_spec.
}
Campos
apiAuthentication

object (ApiAuthentication)

Opcional. Configuração de autenticação para chamar o agente remoto. Opcional se a referência do registro já processar a autenticação.

inputVariableMapping

map (key: string, value: string)

Opcional. Mapeamento de nomes de variáveis de entrada do agente remoto para nomes de variáveis do GECX.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opcional. Mapeamento de nomes de variáveis de saída do agente remoto para nomes de variáveis do GECX.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

streamingEnabled

boolean

Opcional. Se o streaming está ativado para o agente remoto.

contextId

string

Opcional. Se não estiver vazio, as interações com o agente A2A remoto vão usar esse ID de contexto. Esse campo context_id pode se referir a uma variável de sessão, como $context.variables.order_agent_session_id.

Campo de união agent_spec. Especificação do agente remoto. agent_spec pode ser apenas de um dos tipos a seguir:
agentCard

object (AgentCard)

Opcional. O card completo do agente definido inline.

agentRegistry

string

Opcional. Referência ao agente no Agent Registry. Formato: projects/{project}/locations/{location}/agents/{agent}

AgentCard

Representação JSON
{
  "name": string,
  "description": string,
  "supportedInterfaces": [
    {
      object (AgentInterface)
    }
  ],
  "version": string,
  "skills": [
    {
      object (AgentSkill)
    }
  ]
}
Campos
name

string

Obrigatório. Um nome do agente legível por humanos.

description

string

Obrigatório. Uma descrição do domínio de ação/espaço de solução do agente.

supportedInterfaces[]

object (AgentInterface)

Obrigatório. Lista ordenada de interfaces compatíveis. A primeira entrada é a preferida.

version

string

Obrigatório. A versão do agente.

skills[]

object (AgentSkill)

Obrigatório. As habilidades representam uma unidade de capacidade que um agente pode realizar. Isso pode ser um pouco abstrato, mas representa um conjunto mais focado de ações que o agente tem grande probabilidade de realizar com sucesso.

AgentInterface

Representação JSON
{
  "url": string,
  "protocolBinding": string,
  "tenant": string,
  "protocolVersion": string
}
Campos
url

string

Obrigatório. O URL em que essa interface está disponível. Precisa ser um URL HTTPS absoluto válido em produção. Exemplo: "https://api.example.com/a2a/v1", "https://grpc.example.com/a2a"

protocolBinding

string

Obrigatório. A vinculação de protocolo compatível com este URL. Essa é uma string de formulário aberta, que pode ser facilmente estendida para outras vinculações de protocolo. Os principais com suporte oficial são JSONRPC, GRPC e HTTP+JSON.

tenant

string

ID do locatário a ser usado na solicitação ao chamar o agente.

protocolVersion

string

Obrigatório. A versão do protocolo A2A que essa interface expõe. Use a versão secundária mais recente compatível por versão principal. Exemplos: "0.3", "1.0"

AgentSkill

Representação JSON
{
  "id": string,
  "name": string,
  "description": string,
  "tags": [
    string
  ],
  "examples": [
    string
  ],
  "inputModes": [
    string
  ],
  "outputModes": [
    string
  ]
}
Campos
id

string

Obrigatório. Um identificador exclusivo da habilidade do agente.

name

string

Obrigatório. Um nome legível para a habilidade.

description

string

Obrigatório. Uma descrição detalhada da habilidade.

tags[]

string

Obrigatório. Um conjunto de palavras-chave que descrevem as funcionalidades da skill.

examples[]

string

Exemplos de comandos ou cenários que essa habilidade pode processar.

inputModes[]

string

O conjunto de tipos de mídia de entrada compatíveis com essa habilidade, substituindo os padrões do agente.

outputModes[]

string

O conjunto de tipos de mídia de saída compatíveis com essa habilidade, substituindo os padrões do agente.

ApiAuthentication

Representação 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.
}
Campos
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir:
apiKeyConfig

object (ApiKeyConfig)

Opcional. Configuração para autenticação de chave de API.

oauthConfig

object (OAuthConfig)

Opcional. Configuração para OAuth.

serviceAgentIdTokenAuthConfig

object (ServiceAgentIdTokenAuthConfig)

Opcional. Configuração para autenticação de token de ID gerada pelo agente de serviço do CES.

serviceAccountAuthConfig

object (ServiceAccountAuthConfig)

Opcional. Configuração para autenticação de conta de serviço.

bearerTokenConfig

object (BearerTokenConfig)

Opcional. Configuração para autenticação de token do portador.

ApiKeyConfig

Representação JSON
{
  "keyName": string,
  "apiKeySecretVersion": string,
  "requestLocation": enum (RequestLocation)
}
Campos
keyName

string

Obrigatório. O nome do parâmetro ou do cabeçalho da chave de API. Por exemplo, Se a solicitação de API for "https://example.com/act?X-Api-Key=", "X-Api-Key" será o nome do parâmetro.

apiKeySecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave de API. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

requestLocation

enum (RequestLocation)

Obrigatório. Localização da chave na solicitação.

OAuthConfig

Representação JSON
{
  "oauthGrantType": enum (OauthGrantType),
  "clientId": string,
  "clientSecretVersion": string,
  "tokenEndpoint": string,
  "scopes": [
    string
  ]
}
Campos
oauthGrantType

enum (OauthGrantType)

Obrigatório. Tipos de permissão de acesso OAuth.

clientId

string

Obrigatório. O ID do cliente do provedor OAuth.

clientSecretVersion

string

Obrigatório. O nome do recurso da versão do secret do Secret Manager que armazena a chave secreta do cliente. Formato: projects/{project}/secrets/{secret}/versions/{version}

Observação: conceda o papel roles/secretmanager.secretAccessor ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

tokenEndpoint

string

Obrigatório. O endpoint do token no provedor OAuth para troca por um token de acesso.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos.

ServiceAccountAuthConfig

Representação JSON
{
  "serviceAccount": string,
  "scopes": [
    string
  ]
}
Campos
serviceAccount

string

Obrigatório. O endereço de e-mail da conta de serviço usada para autenticação. O CES usa essa conta de serviço para trocar um token de acesso, que é enviado no cabeçalho Authorization da solicitação.

A conta de serviço precisa ter o papel roles/iam.serviceAccountTokenCreator concedido ao agente de serviço do CES service-<PROJECT-NUMBER>@gcp-sa-ces.iam.gserviceaccount.com.

scopes[]

string

Opcional. Os escopos do OAuth a serem concedidos. Se não for especificado, o escopo padrão https://www.googleapis.com/auth/cloud-platform será usado.

BearerTokenConfig

Representação JSON
{
  "token": string
}
Campos
token

string

Obrigatório. O token do portador. Precisa estar no formato $context.variables.<name_of_variable>.

InputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

OutputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

Callback

Representação JSON
{
  "description": string,
  "disabled": boolean,
  "proactiveExecutionEnabled": boolean,

  // Union field callback can be only one of the following:
  "pythonCode": string
  // End of list of possible types for union field callback.
}
Campos
description

string

Opcional. Descrição legível da callback.

disabled

boolean

Opcional. Indica se o callback está desativado. Callbacks desativados são ignorados pelo agente.

proactiveExecutionEnabled

boolean

Opcional. Se ativado, o callback também será executado em saídas intermediárias do modelo. Essa configuração afeta apenas a chamada de retorno "After model". ATIVE COM CUIDADO. Normalmente, a chamada de retorno do modelo só precisa ser executada depois de receber todas as respostas do modelo. Ativar a execução proativa pode ter implicações negativas no custo e na latência da execução. Portanto, essa opção só deve ser ativada em situações raras.

Campo de união callback. O callback a ser executado. callback pode ser apenas de um dos tipos a seguir:
pythonCode

string

Obrigatório. O código Python a ser executado para o callback.

AgentToolset

Representação JSON
{
  "toolset": string,
  "toolIds": [
    string
  ]
}
Campos
toolset

string

Obrigatório. O nome do recurso do conjunto de ferramentas. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolIds[]

string

Opcional. Os IDs das ferramentas para filtrar o conjunto de ferramentas.

TransferRule

Representação JSON
{
  "childAgent": string,
  "direction": enum (Direction),

  // Union field rule_type can be only one of the following:
  "deterministicTransfer": {
    object (DeterministicTransfer)
  },
  "disablePlannerTransfer": {
    object (DisablePlannerTransfer)
  }
  // End of list of possible types for union field rule_type.
}
Campos
childAgent

string

Obrigatório. O nome do recurso do agente secundário a que a regra se aplica. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

direction

enum (Direction)

Obrigatório. A direção da transferência.

Campo de união rule_type. O tipo de regra. rule_type pode ser apenas de um dos tipos a seguir:
deterministicTransfer

object (DeterministicTransfer)

Opcional. Uma regra que transfere imediatamente para o agente de destino quando a condição é atendida.

disablePlannerTransfer

object (DisablePlannerTransfer)

Opcional. Regra que impede a transferência do planejador para o agente de destino.

DeterministicTransfer

Representação JSON
{

  // Union field condition_type can be only one of the following:
  "expressionCondition": {
    object (ExpressionCondition)
  },
  "pythonCodeCondition": {
    object (PythonCodeCondition)
  }
  // End of list of possible types for union field condition_type.
}
Campos
Campo de união condition_type. A condição a ser avaliada. condition_type pode ser apenas de um dos tipos a seguir:
expressionCondition

object (ExpressionCondition)

Opcional. Uma regra que avalia uma condição de estado da sessão. Se a condição for avaliada como verdadeira, a transferência vai ocorrer.

pythonCodeCondition

object (PythonCodeCondition)

Opcional. Uma regra que usa um bloco de código Python para avaliar as condições. Se a condição for avaliada como verdadeira, a transferência vai ocorrer.

ExpressionCondition

Representação JSON
{
  "expression": string
}
Campos
expression

string

Obrigatório. A representação de string da condição cloud.api.Expression.

PythonCodeCondition

Representação JSON
{
  "pythonCode": string
}
Campos
pythonCode

string

Obrigatório. O código Python a ser executado.

DisablePlannerTransfer

Representação JSON
{
  "expressionCondition": {
    object (ExpressionCondition)
  }
}
Campos
expressionCondition

object (ExpressionCondition)

Obrigatório. Se a condição for avaliada como verdadeira, o planejador não poderá ser transferido para o agente de destino.

Ferramenta

Representação JSON
{
  "name": string,
  "displayName": string,
  "executionType": enum (ExecutionType),
  "timeout": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "generatedSummary": string,
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },
  "readOnly": boolean,

  // 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)
  },
  "agentTool": {
    object (AgentTool)
  },
  "widgetTool": {
    object (WidgetTool)
  },
  "remoteAgentTool": {
    object (RemoteAgentTool)
  }
  // End of list of possible types for union field tool_type.
}
Campos
name

string

Identificador. O nome do recurso da ferramenta. Formato:

  • projects/{project}/locations/{location}/apps/{app}/tools/{tool} para ferramentas independentes.
  • projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}/tools/{tool} para ferramentas recuperadas de um conjunto de ferramentas.

Essas ferramentas são dinâmicas e somente de saída. Não é possível fazer referência a elas diretamente onde uma ferramenta é esperada.

displayName

string

Apenas saída. O nome de exibição da ferramenta, derivado com base no tipo dela. Por exemplo, o nome de exibição de uma [ClientFunction][Tool.ClientFunction] é derivado da propriedade name.

executionType

enum (ExecutionType)

Opcional. O tipo de execução da ferramenta.

timeout

string (Duration format)

Opcional. O tempo limite para a execução da ferramenta. Se não for definido, o tempo limite padrão será de 30 segundos para ferramentas SYNCHRONOUS e 60 segundos para ferramentas ASYNCHRONOUS.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a ferramenta foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização da ferramenta.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

generatedSummary

string

Apenas saída. Se a ferramenta for gerada pelo assistente de LLM, esse campo vai conter um resumo descritivo da geração.

toolFakeConfig

object (ToolFakeConfig)

Opcional. Configuração para o comportamento da ferramenta no modo simulado.

readOnly

boolean

Apenas saída. Indica se a ferramenta é somente leitura. Se for "true", a ferramenta não poderá ser modificada pelo usuário.

Campo de união tool_type. O tipo da ferramenta. tool_type pode ser apenas de um dos tipos a seguir:
clientFunction

object (ClientFunction)

Opcional. A função do cliente.

openApiTool

object (OpenApiTool)

Opcional. A ferramenta de API aberta.

googleSearchTool

object (GoogleSearchTool)

Opcional. A ferramenta de pesquisa do Google.

connectorTool

object (ConnectorTool)

Opcional. A ferramenta Integration Connectors.

dataStoreTool

object (DataStoreTool)

Opcional. A ferramenta de repositório de dados.

pythonFunction

object (PythonFunction)

Opcional. A ferramenta de função Python.

mcpTool

object (McpTool)

Opcional. A ferramenta MCP. Uma ferramenta do MCP não pode ser criada ou atualizada diretamente e é gerenciada pelo conjunto de ferramentas do MCP.

fileSearchTool

object (FileSearchTool)

Opcional. A ferramenta de pesquisa de arquivos.

systemTool

object (SystemTool)

Opcional. A ferramenta do sistema.

agentTool

object (AgentTool)

Opcional. A ferramenta do agente.

widgetTool

object (WidgetTool)

Opcional. A ferramenta de widget.

remoteAgentTool

object (RemoteAgentTool)

Opcional. A ferramenta de agente remoto.

ClientFunction

Representação JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  },
  "response": {
    object (Schema)
  }
}
Campos
name

string

Obrigatório. O nome da função.

description

string

Opcional. A descrição da função.

parameters

object (Schema)

Opcional. O esquema dos parâmetros da função.

response

object (Schema)

Opcional. O esquema da resposta da função.

OpenApiTool

Representação JSON
{
  "openApiSchema": string,
  "name": string,
  "description": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campos
openApiSchema

string

Obrigatório. O esquema OpenAPI no formato JSON ou YAML.

name

string

Opcional. O nome da ferramenta. Se não for fornecido, o nome da ferramenta será derivado do esquema OpenAPI, de operation.operationId.

description

string

Opcional. A descrição da ferramenta. Se não for fornecida, a descrição da ferramenta será derivada do esquema OpenAPI, de operation.description ou operation.summary.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação exigidas pela API.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados em que o cliente vai confiar.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços.

ignoreUnknownFields

boolean

Opcional. Se for "true", o agente vai ignorar campos desconhecidos na resposta da API.

url

string

Opcional. O URL do servidor do esquema de API aberta. Esse campo só é definido em ferramentas nas dependências do ambiente durante o processo de exportação se o esquema contiver um URL do servidor. Durante o processo de importação, se esse URL estiver presente nas dependências do ambiente e o esquema tiver o marcador de posição $env_var, ele vai substituir o marcador no esquema.

TlsConfig

Representação JSON
{
  "caCerts": [
    {
      object (CaCert)
    }
  ]
}
Campos
caCerts[]

object (CaCert)

Obrigatório. Especifica uma lista de certificados de CA personalizados permitidos para verificação HTTPS.

CaCert

Representação JSON
{
  "displayName": string,
  "cert": string
}
Campos
displayName

string

Obrigatório. O nome dos certificados de CA personalizados permitidos. Isso pode ser usado para desambiguar os certificados de CA personalizados.

cert

string (bytes format)

Obrigatório. Os certificados de CA personalizados permitidos (no formato DER) para verificação HTTPS. Isso substitui o repositório de confiança SSL padrão. Se estiver vazio ou não especificado, o CES vai usar o repositório de confiança padrão do Google para verificar os certificados. Observação: verifique se os certificados do servidor HTTPS estão assinados com "subject alt name". Por exemplo, um certificado pode ser autoassinado usando o seguinte 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'")

Uma string codificada em base64.

ServiceDirectoryConfig

Representação JSON
{
  "service": string
}
Campos
service

string

Obrigatório. O nome do serviço do Service Directory. Formato: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. O local do diretório de serviços precisa ser o mesmo do app.

GoogleSearchTool

Representação JSON
{
  "name": string,
  "description": string,
  "contextUrls": [
    string
  ],
  "preferredDomains": [
    string
  ],
  "excludeDomains": [
    string
  ],
  "promptConfig": {
    object (PromptConfig)
  }
}
Campos
name

string

Obrigatório. O nome da ferramenta.

description

string

Opcional. Descrição da finalidade da ferramenta.

contextUrls[]

string

Opcional. O conteúdo será extraído diretamente desses URLs para contexto e embasamento. Exemplo: "https://example.com/path.html". São permitidos no máximo 20 URLs.

preferredDomains[]

string

Opcional. Especifica os domínios para restringir os resultados da pesquisa. Exemplo: "example.com", "another.site". É possível especificar no máximo 20 domínios.

excludeDomains[]

string

Opcional. Lista de domínios a serem excluídos dos resultados da pesquisa. Exemplo: "example.com". É possível excluir no máximo 2.000 domínios.

promptConfig

object (PromptConfig)

Opcional. Instruções de comando transmitidas ao planejador sobre como os resultados da pesquisa devem ser processados para texto e voz.

PromptConfig

Representação JSON
{
  "textPrompt": string,
  "voicePrompt": string
}
Campos
textPrompt

string

Opcional. Define o comando usado para as instruções do sistema ao interagir com o agente em conversas por chat. Se não for definido, o comando padrão será usado.

voicePrompt

string

Opcional. Define o comando usado para as instruções do sistema ao interagir com o agente em conversas por voz. Se não for definido, o comando padrão será usado.

ConnectorTool

Representação JSON
{
  "connection": string,
  "action": {
    object (Action)
  },
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "name": string,
  "description": string
}
Campos
connection

string

Obrigatório. O nome completo do recurso da conexão referenciada do Integration Connectors. Formato: projects/{project}/locations/{location}/connections/{connection}

action

object (Action)

Obrigatório. Ação que a ferramenta vai usar.

authConfig

object (EndUserAuthConfig)

Opcional. Configura como a autenticação é processada nos Integration Connectors. Por padrão, uma autenticação de administrador é transmitida nas solicitações da API Integration Connectors. É possível substituir essa configuração com outra. Observação: a conexão precisa ter a substituição de autenticação ativada para especificar uma configuração de EUC aqui. Caso contrário, a criação do ConnectorTool vai falhar. Consulte https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override para mais detalhes.

name

string

Opcional. O nome da ferramenta que pode ser usada pelo agente para decidir se deve chamar esse ConnectorTool.

description

string

Opcional. A descrição da ferramenta que pode ser usada pelo agente para decidir se deve chamar esse ConnectorTool.

Ação

Representação 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.
}
Campos
inputFields[]

string

Opcional. Campos de entidade a serem usados como entradas para a operação. Se nenhum campo for especificado, todos os campos da entidade serão usados.

outputFields[]

string

Opcional. Campos da entidade a serem retornados da operação. Se nenhum campo for especificado, todos os campos da entidade serão retornados.

Campo de união action_spec. Especificação de uma ação a ser configurada para uso da ferramenta. action_spec pode ser apenas de um dos tipos a seguir:
connectionActionId

string

ID de uma ação de conexão para a ferramenta usar.

entityOperation

object (EntityOperation)

Configuração de operação de entidade para a ferramenta usar.

EntityOperation

Representação JSON
{
  "entityId": string,
  "operation": enum (OperationType)
}
Campos
entityId

string

Obrigatório. ID da entidade.

operation

enum (OperationType)

Obrigatório. Operação a ser realizada na entidade.

EndUserAuthConfig

Representação 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.
}
Campos
Campo de união auth_config. A configuração de autenticação. auth_config pode ser apenas de um dos tipos a seguir:
oauth2AuthCodeConfig

object (Oauth2AuthCodeConfig)

Autenticação com código de autorização do OAuth 2.0.

oauth2JwtBearerConfig

object (Oauth2JwtBearerConfig)

Autenticação de concessão de autorização OAuth 2.0 do perfil JWT.

Oauth2AuthCodeConfig

Representação JSON
{
  "oauthToken": string
}
Campos
oauthToken

string

Obrigatório. Nome do parâmetro do token OAuth a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

Oauth2JwtBearerConfig

Representação JSON
{
  "issuer": string,
  "subject": string,
  "clientKey": string
}
Campos
issuer

string

Obrigatório. Nome do parâmetro do emissor a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

subject

string

Obrigatório. Nome do parâmetro de assunto a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

clientKey

string

Obrigatório. Nome do parâmetro do cliente a ser transmitido. Precisa estar no formato $context.variables.<name_of_variable>.

DataStoreTool

Representação 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.
}
Campos
name

string

Obrigatório. O nome da ferramenta de repositório de dados.

description

string

Opcional. A descrição da ferramenta.

boostSpecs[]

object (BoostSpecs)

Opcional. Otimizar a especificação para impulsionar determinados documentos.

modalityConfigs[]

object (ModalityConfig)

Opcional. As configurações de modalidade do repositório de dados.

filterParameterBehavior

enum (FilterParameterBehavior)

Opcional. O comportamento do parâmetro de filtro.

Campo de união search_source. Define a origem da pesquisa, que pode ser um único DataStore ou um mecanismo. search_source pode ser apenas de um dos tipos a seguir:
dataStoreSource

object (DataStoreSource)

Opcional. Pesquisar em um único DataStore específico.

engineSource

object (EngineSource)

Opcional. Pesquise em um mecanismo (potencialmente em vários DataStores).

DataStoreSource

Representação JSON
{
  "filter": string,
  "dataStore": {
    object (DataStore)
  }
}
Campos
filter

string

Opcional. Especificação de filtro para o DataStore. Consulte: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

dataStore

object (DataStore)

Opcional. O repositório de dados.

DataStore

Representação JSON
{
  "name": string,
  "type": enum (DataStoreType),
  "documentProcessingMode": enum (DocumentProcessingMode),
  "displayName": string,
  "createTime": string,
  "connectorConfig": {
    object (ConnectorConfig)
  }
}
Campos
name

string

Obrigatório. Nome completo do recurso do DataStore. Formato: projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}

type

enum (DataStoreType)

Apenas saída. O tipo do repositório de dados. Este campo é somente leitura e preenchido pelo servidor.

documentProcessingMode

enum (DocumentProcessingMode)

Apenas saída. O modo de processamento de documentos para a conexão do repositório de dados. Definido apenas para repositórios de dados PUBLIC_WEB e UNSTRUCTURED.

displayName

string

Apenas saída. O nome de exibição do repositório de dados.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da criação do repositório de dados.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

connectorConfig

object (ConnectorConfig)

Apenas saída. A configuração do conector para a conexão do repositório de dados.

ConnectorConfig

Representação JSON
{
  "collection": string,
  "collectionDisplayName": string,
  "dataSource": string
}
Campos
collection

string

Nome do recurso da coleção a que o repositório de dados pertence.

collectionDisplayName

string

Nome de exibição da coleção a que o repositório de dados pertence.

dataSource

string

O nome da fonte de dados. Exemplo: salesforce, jira, confluence, bigquery.

EngineSource

Representação JSON
{
  "engine": string,
  "dataStoreSources": [
    {
      object (DataStoreSource)
    }
  ],
  "filter": string
}
Campos
engine

string

Obrigatório. Nome completo do recurso do mecanismo. Formato: projects/{project}/locations/{location}/collections/{collection}/engines/{engine}

dataStoreSources[]

object (DataStoreSource)

Opcional. Usado para segmentar DataStores específicos no mecanismo. Se estiver vazio, a pesquisa será aplicada a todos os DataStores associados ao mecanismo.

filter

string

Opcional. Um filtro aplicado à pesquisa no mecanismo. Não é relevante e não é usado se "data_store_sources" for fornecido. Consulte: https://cloud.google.com/generative-ai-app-builder/docs/filter-search-metadata

BoostSpecs

Representação JSON
{
  "dataStores": [
    string
  ],
  "spec": [
    {
      object (BoostSpec)
    }
  ]
}
Campos
dataStores[]

string

Obrigatório. O repositório de dados em que a configuração de reforço é aplicada. Nome completo do recurso do DataStore, como projects/{project}/locations/{location}/collections/{collection}/dataStores/{dataStore}.

spec[]

object (BoostSpec)

Obrigatório. Uma lista de especificações de otimização.

BoostSpec

Representação JSON
{
  "conditionBoostSpecs": [
    {
      object (ConditionBoostSpec)
    }
  ]
}
Campos
conditionBoostSpecs[]

object (ConditionBoostSpec)

Obrigatório. Uma lista de especificações de otimização.

ConditionBoostSpec

Representação JSON
{
  "condition": string,
  "boost": number,
  "boostControlSpec": {
    object (BoostControlSpec)
  }
}
Campos
condition

string

Obrigatório. Uma expressão que especifica uma condição de reforço. A sintaxe é a mesma da expressão de filtro. No momento, a única condição aceita é uma lista de códigos de idioma BCP-47. Exemplo: para aumentar as sugestões em inglês ou francês: (lang_code: ANY("en", "fr"))

boost

number

Opcional. Intensidade da otimização, que precisa estar em [-1, 1]. Reforço negativo significa rebaixamento. O padrão é 0,0.

Definir como 1.0 dá uma grande promoção às sugestões. No entanto, isso não significa necessariamente que o resultado principal será uma sugestão otimizada.

Definir como -1.0 reduz bastante as sugestões. No entanto, outras sugestões relevantes ainda podem aparecer.

Definir como 0,0 significa que nenhum aumento será aplicado. A condição de reforço é ignorada.

boostControlSpec

object (BoostControlSpec)

Opcional. Especificação complexa para classificação personalizada com base no valor do atributo definido pelo cliente.

BoostControlSpec

Representação JSON
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Campos
fieldName

string

Opcional. O nome do campo cujo valor será usado para determinar o valor do reforço.

attributeType

enum (AttributeType)

Opcional. O tipo de atributo a ser usado para determinar o valor do aumento. O valor do atributo pode ser derivado do valor do campo do field_name especificado. No caso de valores numéricos, é simples: attribute_value = numerical_field_value. No caso da atualização, attribute_value = (time.now() - datetime_field_value).

interpolationType

enum (InterpolationType)

Opcional. O tipo de interpolação a ser aplicado para conectar os pontos de controle listados abaixo.

controlPoints[]

object (ControlPoint)

Opcional. Os pontos de controle usados para definir a curva. A função monotônica (definida pelo "interpolation_type" acima) passa pelos pontos de controle listados aqui.

ControlPoint

Representação JSON
{
  "attributeValue": string,
  "boostAmount": number
}
Campos
attributeValue

string

Opcional. Pode ser um dos seguintes: 1. O valor do campo numérico. 2. A especificação de duração para atualização. O valor precisa ser formatado como um valor XSD dayTimeDuration (um subconjunto restrito de um valor de duração ISO 8601). O padrão é: [nD][T[nH][nM][nS]].

boostAmount

number

Opcional. O valor entre -1 e 1 pelo qual aumentar a pontuação se o attribute_value for avaliado como o valor especificado acima.

ModalityConfig

Representação JSON
{
  "modalityType": enum (ModalityType),
  "rewriterConfig": {
    object (RewriterConfig)
  },
  "summarizationConfig": {
    object (SummarizationConfig)
  },
  "groundingConfig": {
    object (GroundingConfig)
  },
  "snippetsConfig": {
    object (SnippetsConfig)
  }
}
Campos
modalityType

enum (ModalityType)

Obrigatório. O tipo de modalidade.

rewriterConfig

object (RewriterConfig)

Opcional. A configuração do rewriter.

summarizationConfig

object (SummarizationConfig)

Opcional. A configuração de resumo.

groundingConfig

object (GroundingConfig)

Opcional. A configuração de embasamento.

snippetsConfig

object (SnippetsConfig)

Opcional. A configuração de snippets.

RewriterConfig

Representação JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campos
modelSettings

object (ModelSettings)

Obrigatório. Configurações do modelo de LLM.

prompt

string

Opcional. A definição do comando. Se não for definido, o comando padrão será usado.

disabled

boolean

Opcional. Se o rewriter está desativado.

SummarizationConfig

Representação JSON
{
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "disabled": boolean
}
Campos
modelSettings

object (ModelSettings)

Opcional. Configurações do modelo de LLM.

prompt

string

Opcional. A definição do comando. Se não for definido, o comando padrão será usado.

disabled

boolean

Opcional. Se o resumo está desativado.

GroundingConfig

Representação JSON
{
  "groundingLevel": number,
  "disabled": boolean
}
Campos
groundingLevel

number

Opcional. O limite de embasamento da resposta com base nas fontes recuperadas. O valor tem um intervalo configurável de [1, 5]. O nível é usado para definir o limite de embasamento da resposta. Isso significa que todas as respostas com uma pontuação de embasamento abaixo do limite vão retornar apenas snippets relevantes.

Por exemplo, um nível 3 significa que a pontuação de embasamento precisa ser 3 ou mais para que a resposta seja retornada.

disabled

boolean

Opcional. Se o embasamento está desativado.

SnippetsConfig

Representação JSON
{
  "enableSnippets": boolean,
  "maxSnippets": integer
}
Campos
enableSnippets

boolean

Opcional. Se os snippets estão ativados.

maxSnippets

integer

Opcional. Número de snippets a serem retornados por consulta. Se não for definido, vai retornar todos os snippets do serviço por padrão.

PythonFunction

Representação JSON
{
  "name": string,
  "pythonCode": string,
  "description": string,
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  }
}
Campos
name

string

Opcional. O nome da função Python a ser executada. Precisa corresponder a um nome de função do Python definido no código Python. Diferencia maiúsculas de minúsculas. Se o nome não for fornecido, a primeira função definida no código Python será usada.

pythonCode

string

Opcional. O código Python a ser executado para a ferramenta.

description

string

Apenas saída. A descrição da função Python, analisada da docstring do código Python.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços para a ferramenta.

McpTool

Representação JSON
{
  "name": string,
  "nameOverride": string,
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  },
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "state": enum (State)
}
Campos
name

string

Obrigatório. O nome da ferramenta do MCP.

nameOverride

string

Opcional. A substituição do nome da ferramenta do MCP. Esse campo é preenchido se o nome foi substituído por uma substituição do conjunto de ferramentas.

description

string

Opcional. A descrição da ferramenta MCP.

inputSchema

object (Schema)

Opcional. O esquema dos argumentos de entrada da ferramenta MCP.

outputSchema

object (Schema)

Opcional. O esquema dos argumentos de saída da ferramenta MCP.

serverAddress

string

Obrigatório. O endereço do servidor MCP, por exemplo, "https://example.com/mcp/". Se o servidor for criado com o SDK do MCP, o URL vai ter o sufixo "/mcp/". Somente servidores baseados em transporte HTTP transmissível são compatíveis. É o mesmo que "server_address" em McpToolset. Consulte https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http para mais detalhes.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação necessárias para executar a ferramenta no servidor MCP. Para a autenticação de token de portador, o token se aplica apenas à execução da ferramenta, não à listagem de ferramentas. Isso exige que as ferramentas possam ser listadas sem autenticação.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados em que o cliente deve confiar.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços para VPC-SC, usada para resolver nomes de serviços em um perímetro.

customHeaders

map (key: string, value: string)

Opcional. Os cabeçalhos personalizados a serem enviados na solicitação ao servidor MCP. Os valores precisam estar no formato $context.variables.<name_of_variable> e podem ser definidos nas variáveis de sessão. Consulte https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection para mais detalhes.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

state

enum (State)

Apenas saída. O estado de disponibilidade dinâmica da ferramenta no servidor externo.

CustomHeadersEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

FileSearchTool

Representação JSON
{
  "corpusType": enum (CorpusType),
  "name": string,
  "description": string,
  "fileCorpus": string
}
Campos
corpusType

enum (CorpusType)

Opcional. O tipo de corpus. O padrão é FULLY_MANAGED.

name

string

Obrigatório. O nome da ferramenta.

description

string

Opcional. A descrição da ferramenta.

fileCorpus

string

Opcional. O corpus em que os arquivos são armazenados. Formato: projects/{project}/locations/{location}/ragCorpora/{rag_corpus}

SystemTool

Representação JSON
{
  "name": string,
  "description": string
}
Campos
name

string

Obrigatório. O nome da ferramenta do sistema.

description

string

Apenas saída. A descrição da ferramenta do sistema.

AgentTool

Representação JSON
{
  "name": string,
  "description": string,
  "agent": string
}
Campos
name

string

Obrigatório. O nome da ferramenta do agente.

description

string

Opcional. Descrição da finalidade da ferramenta.

agent

string

Opcional. O nome do recurso do agente que é o ponto de entrada da ferramenta. Formato: projects/{project}/locations/{location}/agents/{agent}

WidgetTool

Representação JSON
{
  "name": string,
  "description": string,
  "widgetType": enum (WidgetType),
  "uiConfig": {
    object
  },
  "dataMapping": {
    object (DataMapping)
  },
  "textResponseConfig": {
    object (TextResponseConfig)
  },

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

string

Obrigatório. O nome de exibição da ferramenta de widget.

description

string

Opcional. A descrição da ferramenta de widget.

widgetType

enum (WidgetType)

Opcional. O tipo da ferramenta de widget. Se não for especificado, o tipo padrão será "CUSTOMIZED".

uiConfig

object (Struct format)

Opcional. Configuração para renderizar o widget.

dataMapping

object (DataMapping)

Opcional. O mapeamento que define como os dados de uma ferramenta de origem são mapeados para os parâmetros de entrada do widget.

textResponseConfig

object (TextResponseConfig)

Opcional. Configuração para respostas de texto sempre incluídas.

Campo de união input. A entrada da ferramenta de widget. input pode ser apenas de um dos tipos a seguir:
parameters

object (Schema)

Opcional. Os parâmetros de entrada da ferramenta de widget.

DataMapping

Representação JSON
{
  "sourceToolName": string,
  "fieldMappings": {
    string: string,
    ...
  },
  "pythonFunction": {
    object (PythonFunction)
  },
  "mode": enum (Mode),
  "pythonScript": string
}
Campos
sourceToolName

string

Opcional. O nome do recurso da ferramenta que fornece os dados para o widget (por exemplo, uma ferramenta de pesquisa ou uma função personalizada). Formato: projects/{project}/locations/{location}/agents/{agent}/tools/{tool}

fieldMappings

map (key: string, value: string)

Opcional. Um mapa de campos de parâmetros de entrada de widget para os campos de saída correspondentes da ferramenta de origem.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

pythonFunction

object (PythonFunction)

Opcional. Configuração de uma função Python usada para transformar a saída da ferramenta de origem no formato de entrada do widget.

mode

enum (Mode)

Opcional. O modo do mapeamento de dados.

pythonScript
(deprecated)

string

Descontinuado: use python_function.

FieldMappingsEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

TextResponseConfig

Representação JSON
{
  "type": enum (Type),
  "staticText": string,
  "textResponseInstruction": string
}
Campos
type

enum (Type)

Opcional. A estratégia para fornecer a resposta de texto.

staticText

string

Opcional. A resposta de texto estático a ser retornada quando o tipo é STATIC.

textResponseInstruction

string

Opcional. Instrução para o LLM sobre como gerar a resposta de texto. Usado como a descrição do parâmetro de resposta de texto se o tipo for LLM_GENERATED.

RemoteAgentTool

Representação JSON
{
  "name": string,
  "description": string,
  "agentCard": {
    object (AgentCard)
  },
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "statefulAgent": boolean,
  "inputVariableMapping": {
    string: string,
    ...
  },
  "outputVariableMapping": {
    string: string,
    ...
  }
}
Campos
name

string

Obrigatório. O nome da ferramenta.

description

string

Obrigatório. A descrição da ferramenta.

agentCard

object (AgentCard)

Obrigatório. O card do agente remoto que essa ferramenta invoca.

apiAuthentication

object (ApiAuthentication)

Opcional. Configuração de autenticação para chamar o agente remoto.

statefulAgent

boolean

Opcional. Quando ativada, a interação entre o app CXAS e o agente remoto compartilha o mesmo contexto. Se o agente remoto retornar um context_id, ele será mantido durante toda a sessão para essa ferramenta de agente remoto.

inputVariableMapping

map (key: string, value: string)

Opcional. Mapeamento de nomes de variáveis de entrada do agente remoto para nomes de variáveis do GECX.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

outputVariableMapping

map (key: string, value: string)

Opcional. Mapeamento de nomes de variáveis de saída do agente remoto para nomes de variáveis do GECX.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

InputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

OutputVariableMappingEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

ToolFakeConfig

Representação 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.
}
Campos
enableFakeMode

boolean

Opcional. Indica se a ferramenta está usando o modo simulado.

Campo de união tool_response. A resposta é estática ou fornecida por uma função Python. tool_response pode ser apenas de um dos tipos a seguir:
codeBlock

object (CodeBlock)

Opcional. Bloco de código que será executado em vez de uma chamada de ferramenta real.

CodeBlock

Representação JSON
{
  "pythonCode": string
}
Campos
pythonCode

string

Obrigatório. Código Python que será invocado no modo falso de ferramenta. Assinatura esperada da função Python: para capturar todas as chamadas de ferramenta: def fake_tool_call(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: para capturar uma chamada de ferramenta específica: def fake_{tool_id}(tool: Tool, input: dict[str, Any], callback_context: CallbackContext) -> Optional[dict[str, Any]]: se a função retornar None, a ferramenta real será invocada.

Exemplo

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "entryAgent": string,
  "messages": [
    {
      object (Message)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "invalid": boolean,
  "etag": string
}
Campos
name

string

Identificador. O identificador exclusivo do exemplo. Formato: projects/{project}/locations/{location}/apps/{app}/examples/{example}

displayName

string

Obrigatório. Nome de exibição do exemplo.

description

string

Opcional. Descrição legível do exemplo.

entryAgent

string

Opcional. O agente que inicialmente atende a conversa. Se não for especificado, o exemplo vai representar uma conversa processada pelo agente raiz. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

messages[]

object (Message)

Opcional. A coleção de mensagens que compõem a conversa.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o exemplo foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do exemplo.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

invalid

boolean

Apenas saída. O exemplo pode ficar inválido se os recursos referenciados forem excluídos. Exemplos inválidos não serão usados como exemplos few-shot.

etag

string

Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

Mensagem

Representação JSON
{
  "role": string,
  "chunks": [
    {
      object (Chunk)
    }
  ],
  "eventTime": string
}
Campos
role

string

Opcional. A função na conversa, por exemplo, usuário, agente.

chunks[]

object (Chunk)

Opcional. Conteúdo da mensagem como uma série de partes.

eventTime

string (Timestamp format)

Opcional. Carimbo de data/hora em que a mensagem foi enviada ou recebida. Não pode ser usado se a mensagem fizer parte de um example.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Chunk

Representação JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "transcript": string,
  "blob": {
    object (Blob)
  },
  "payload": {
    object
  },
  "image": {
    object (Image)
  },
  "toolCall": {
    object (ToolCall)
  },
  "toolResponse": {
    object (ToolResponse)
  },
  "agentTransfer": {
    object (AgentTransfer)
  },
  "updatedVariables": {
    object
  },
  "defaultVariables": {
    object
  }
  // End of list of possible types for union field data.
}
Campos
Campo de união data. Divida os dados em partes. data pode ser apenas de um dos tipos a seguir:
text

string

Opcional. Dados de texto.

transcript

string

Opcional. Transcrição associada ao áudio.

blob

object (Blob)

Opcional. Dados de blob.

payload

object (Struct format)

Opcional. Dados de payload personalizados.

image

object (Image)

Opcional. Dados da imagem.

toolCall

object (ToolCall)

Opcional. Solicitação de execução de ferramenta.

toolResponse

object (ToolResponse)

Opcional. Resposta de execução da ferramenta.

agentTransfer

object (AgentTransfer)

Opcional. Evento de transferência do agente.

updatedVariables

object (Struct format)

Uma struct representa variáveis que foram atualizadas na conversa, com chaves pelos nomes das variáveis.

defaultVariables

object (Struct format)

Uma struct representa variáveis padrão no início da conversa, com chaves pelos nomes das variáveis.

Blob

Representação JSON
{
  "mimeType": string,
  "data": string
}
Campos
mimeType

string

Obrigatório. O tipo MIME padrão da IANA dos dados de origem.

data

string (bytes format)

Obrigatório. Bytes brutos do blob.

Uma string codificada em base64.

Imagem

Representação JSON
{
  "mimeType": string,
  "data": string,
  "altText": string
}
Campos
mimeType

string

Obrigatório. O tipo MIME padrão da IANA dos dados de origem. Os tipos de imagem compatíveis incluem: * image/png * image/jpeg * image/webp

data

string (bytes format)

Obrigatório. Bytes brutos da imagem.

Uma string codificada em base64.

altText

string

Opcional. O texto alternativo da imagem.

ToolCall

Representação JSON
{
  "id": string,
  "displayName": string,
  "args": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Opcional. O identificador exclusivo da chamada de função. Se preenchido, o cliente vai retornar o resultado da execução com o código correspondente em ToolResponse.

displayName

string

Apenas saída. Nome de exibição da ferramenta.

args

object (Struct format)

Opcional. Os parâmetros e valores de entrada da ferramenta no formato de objeto JSON.

parentToolCallId

string

Apenas saída. O ID da chamada de ferramenta que causou esta, quando ela foi emitida por um subagente trabalhando em nome de uma chamada principal. Vazio para chamadas de nível superior. Permite que um cliente agrupe o trabalho de um subagente na chamada que o iniciou, em vez de renderizar cada etapa como um irmão.

agentName

string

Apenas saída. Nome legível por humanos do agente que fez essa chamada, por exemplo, "Contract Architect". Fica vazio quando o agente raiz emite o token.

Campo de união tool_identifier. O identificador da ferramenta a ser executada. Ela pode ser uma ferramenta persistente ou de um conjunto de ferramentas. tool_identifier pode ser apenas de um dos tipos a seguir:
tool

string

Opcional. O nome da ferramenta a ser executada. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Opcional. A ferramenta do conjunto de ferramentas a ser executada.

ToolsetTool

Representação JSON
{
  "toolset": string,
  "toolId": string
}
Campos
toolset

string

Obrigatório. O nome do recurso do conjunto de ferramentas de que essa ferramenta deriva. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

toolId

string

Opcional. O ID da ferramenta para filtrar as ferramentas e recuperar o esquema.

ToolResponse

Representação JSON
{
  "id": string,
  "displayName": string,
  "response": {
    object
  },
  "parentToolCallId": string,
  "agentName": string,

  // Union field tool_identifier can be only one of the following:
  "tool": string,
  "toolsetTool": {
    object (ToolsetTool)
  }
  // End of list of possible types for union field tool_identifier.
}
Campos
id

string

Opcional. O código correspondente do tool call a que a resposta se refere.

displayName

string

Apenas saída. Nome de exibição da ferramenta.

response

object (Struct format)

Obrigatório. O resultado da execução da ferramenta no formato de objeto JSON. Use a chave "output" para especificar a resposta da ferramenta e a chave "error" para especificar os detalhes do erro (se houver). Se as chaves "output" e "error" não forem especificadas, toda a "response" será tratada como resultado da execução da ferramenta.

parentToolCallId

string

Apenas saída. O ID da chamada de ferramenta que causou esta, quando ela foi emitida por um subagente trabalhando em nome de uma chamada principal. Vazio para chamadas de nível superior. Permite que um cliente agrupe o trabalho de um subagente na chamada que o iniciou, em vez de renderizar cada etapa como um irmão.

agentName

string

Apenas saída. Nome legível por humanos do agente que fez essa chamada, por exemplo, "Contract Architect". Fica vazio quando o agente raiz emite o token.

Campo de união tool_identifier. O identificador da ferramenta que foi executada. Ela pode ser uma ferramenta persistente ou de um conjunto de ferramentas. tool_identifier pode ser apenas de um dos tipos a seguir:
tool

string

Opcional. O nome da ferramenta a ser executada. Formato: projects/{project}/locations/{location}/apps/{app}/tools/{tool}

toolsetTool

object (ToolsetTool)

Opcional. A ferramenta do conjunto de ferramentas que foi executada.

AgentTransfer

Representação JSON
{
  "targetAgent": string,
  "displayName": string
}
Campos
targetAgent

string

Obrigatório. O agente para quem a conversa está sendo transferida. O agente vai cuidar da conversa a partir desse ponto. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

displayName

string

Apenas saída. Nome de exibição do agente.

Proteção

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "enabled": boolean,
  "action": {
    object (TriggerAction)
  },
  "createTime": string,
  "updateTime": string,
  "etag": string,

  // Union field guardrail_type can be only one of the following:
  "contentFilter": {
    object (ContentFilter)
  },
  "llmPromptSecurity": {
    object (LlmPromptSecurity)
  },
  "llmPolicy": {
    object (LlmPolicy)
  },
  "modelSafety": {
    object (ModelSafety)
  },
  "codeCallback": {
    object (CodeCallback)
  },
  "supervisor": {
    object (Supervisor)
  }
  // End of list of possible types for union field guardrail_type.
}
Campos
name

string

Identificador. O identificador exclusivo do guardrail. Formato: projects/{project}/locations/{location}/apps/{app}/guardrails/{guardrail}

displayName

string

Obrigatório. Nome de exibição da proteção.

description

string

Opcional. Descrição da proteção.

enabled

boolean

Opcional. Se a proteção está ativada.

action

object (TriggerAction)

Opcional. Ação a ser tomada quando a proteção é acionada.

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que a proteção foi criada.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização da proteção.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Etag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

Campo de união guardrail_type. Tipo de barreira de proteção. guardrail_type pode ser apenas de um dos tipos a seguir:
contentFilter

object (ContentFilter)

Opcional. Proteção que proíbe o uso de determinados conteúdos na conversa.

llmPromptSecurity

object (LlmPromptSecurity)

Opcional. Um mecanismo de segurança que bloqueia a conversa se o comando for considerado não seguro com base na classificação do LLM.

llmPolicy

object (LlmPolicy)

Opcional. Proteção que bloqueia a conversa se a resposta do LLM for considerada uma violação da política com base na classificação do LLM.

modelSafety

object (ModelSafety)

Opcional. Proteção que bloqueia a conversa se a resposta do LLM for considerada insegura com base nas configurações de segurança do modelo.

codeCallback

object (CodeCallback)

Opcional. Proteção que pode bloquear a conversa com base no resultado da execução do callback.

supervisor

object (Supervisor)

Opcional. Proteção que executa a intervenção do supervisor.

ContentFilter

Representação JSON
{
  "bannedContents": [
    string
  ],
  "bannedContentsInUserInput": [
    string
  ],
  "bannedContentsInAgentResponse": [
    string
  ],
  "matchType": enum (MatchType),
  "disregardDiacritics": boolean
}
Campos
bannedContents[]

string

Opcional. Lista de frases proibidas. Isso se aplica às entradas do usuário e às respostas do agente.

bannedContentsInUserInput[]

string

Opcional. Lista de frases proibidas. Aplicável apenas às entradas do usuário.

bannedContentsInAgentResponse[]

string

Opcional. Lista de frases proibidas. Válido apenas para respostas do agente.

matchType

enum (MatchType)

Obrigatório. Tipo de correspondência para o filtro de conteúdo.

disregardDiacritics

boolean

Opcional. Se for "true", os diacríticos serão ignorados durante a correspondência.

LlmPromptSecurity

Representação JSON
{
  "failOpen": boolean,

  // Union field security_config can be only one of the following:
  "defaultSettings": {
    object (DefaultSecuritySettings)
  },
  "customPolicy": {
    object (LlmPolicy)
  }
  // End of list of possible types for union field security_config.
}
Campos
failOpen

boolean

Opcional. Determina o comportamento quando a proteção encontra um erro de LLM. - Se for "true", a proteção será ignorada. - Se for "false" (padrão), o guardrail será acionado/bloqueado.

Observação: se uma política personalizada for fornecida, esse campo será ignorado em favor da configuração "fail_open" da política.

Campo de união security_config. Define o modo de configuração de segurança. O usuário precisa escolher uma das seguintes configurações. security_config pode ser apenas de um dos tipos a seguir:
defaultSettings

object (DefaultSecuritySettings)

Opcional. Use as configurações de segurança padrão predefinidas do sistema. Para selecionar esse modo, inclua uma mensagem "default_settings" vazia na solicitação. O campo "default_prompt_template" será preenchido pelo servidor na resposta.

customPolicy

object (LlmPolicy)

Opcional. Use uma LlmPolicy definida pelo usuário para configurar a proteção de segurança.

DefaultSecuritySettings

Representação JSON
{
  "defaultPromptTemplate": string
}
Campos
defaultPromptTemplate

string

Apenas saída. O modelo de comando padrão usado pelo sistema. Este campo é para fins de exibição e mostra ao usuário qual comando o sistema usa por padrão. É OUTPUT_ONLY.

LlmPolicy

Representação JSON
{
  "maxConversationMessages": integer,
  "modelSettings": {
    object (ModelSettings)
  },
  "prompt": string,
  "policyScope": enum (PolicyScope),
  "failOpen": boolean,
  "allowShortUtterance": boolean
}
Campos
maxConversationMessages

integer

Opcional. Ao verificar essa política, considere as últimas "n" mensagens na conversa. Quando não definido, um valor padrão de 10 será usado.

modelSettings

object (ModelSettings)

Opcional. Configurações do modelo.

prompt

string

Obrigatório. Solicitação de política.

policyScope

enum (PolicyScope)

Obrigatório. Define quando aplicar a verificação de política durante a conversa. Se for definida como POLICY_SCOPE_UNSPECIFIED, a política será aplicada à entrada do usuário. Ao aplicar a política à resposta do agente, uma latência adicional será introduzida antes que o agente possa responder.

failOpen

boolean

Opcional. Se ocorrer um erro durante a verificação da política, abra e não acione a proteção.

allowShortUtterance

boolean

Opcional. Por padrão, a verificação da política de LLM é ignorada para frases curtas. Ao ativar essa configuração, a verificação de política é aplicada a todas as declarações, incluindo aquelas que normalmente seriam ignoradas.

ModelSafety

Representação JSON
{
  "safetySettings": [
    {
      object (SafetySetting)
    }
  ]
}
Campos
safetySettings[]

object (SafetySetting)

Obrigatório. Lista de configurações de segurança.

SafetySetting

Representação JSON
{
  "category": enum (HarmCategory),
  "threshold": enum (HarmBlockThreshold)
}
Campos
category

enum (HarmCategory)

Obrigatório. A categoria de dano.

threshold

enum (HarmBlockThreshold)

Obrigatório. O limite do bloqueio de danos.

CodeCallback

Representação JSON
{
  "beforeAgentCallback": {
    object (Callback)
  },
  "afterAgentCallback": {
    object (Callback)
  },
  "beforeModelCallback": {
    object (Callback)
  },
  "afterModelCallback": {
    object (Callback)
  }
}
Campos
beforeAgentCallback

object (Callback)

Opcional. O callback a ser executado antes da chamada do agente. Cada função de callback precisa retornar uma estrutura (por exemplo, um dict ou objeto) que contenha pelo menos: "decision": "OK" ou "TRIGGER". - "reason": uma string que explica a decisão. Uma decisão de "TRIGGER" pode interromper o processamento.

afterAgentCallback

object (Callback)

Opcional. O callback a ser executado depois que o agente for chamado. Cada função de callback precisa retornar uma estrutura (por exemplo, um dict ou objeto) que contenha pelo menos: "decision": "OK" ou "TRIGGER". - "reason": uma string que explica a decisão. Uma decisão de "TRIGGER" pode interromper o processamento.

beforeModelCallback

object (Callback)

Opcional. O callback a ser executado antes da chamada do modelo. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Cada função de callback precisa retornar uma estrutura (por exemplo, um dict ou objeto) que contenha pelo menos: "decision": "OK" ou "TRIGGER". - "reason": uma string que explica a decisão. Uma decisão de "TRIGGER" pode interromper o processamento.

afterModelCallback

object (Callback)

Opcional. O callback a ser executado depois que o modelo é chamado. Se houver várias chamadas para o modelo, o callback será executado várias vezes. Cada função de callback precisa retornar uma estrutura (por exemplo, um dict ou objeto) que contenha pelo menos: "decision": "OK" ou "TRIGGER". - "reason": uma string que explica a decisão. Uma decisão de "TRIGGER" pode interromper o processamento.

Supervisor

Representação JSON
{
  "type": enum (Type),
  "detectionMode": enum (DetectionMode)
}
Campos
type

enum (Type)

Opcional. O tipo de supervisor.

detectionMode

enum (DetectionMode)

Opcional. O modo de detecção do supervisor.

TriggerAction

Representação JSON
{

  // Union field action can be only one of the following:
  "respondImmediately": {
    object (RespondImmediately)
  },
  "transferAgent": {
    object (TransferAgent)
  },
  "generativeAnswer": {
    object (GenerativeAnswer)
  }
  // End of list of possible types for union field action.
}
Campos
Campo de união action. A ação a ser tomada. action pode ser apenas de um dos tipos a seguir:
respondImmediately

object (RespondImmediately)

Opcional. Responder imediatamente com uma resposta pré-configurada.

transferAgent

object (TransferAgent)

Opcional. Transfira a conversa para outro agente.

generativeAnswer

object (GenerativeAnswer)

Opcional. Responder com uma resposta generativa.

RespondImmediately

Representação JSON
{
  "responses": [
    {
      object (Response)
    }
  ]
}
Campos
responses[]

object (Response)

Obrigatório. As respostas automáticas para o agente escolher. A resposta é escolhida aleatoriamente.

Resposta

Representação JSON
{
  "text": string,
  "disabled": boolean
}
Campos
text

string

Obrigatório. Texto para o agente responder.

disabled

boolean

Opcional. Indica se a resposta está desativada. As respostas desativadas não são usadas pelo agente.

TransferAgent

Representação JSON
{
  "agent": string
}
Campos
agent

string

Obrigatório. O nome do agente para quem a conversa será transferida. O agente precisa estar no mesmo app que o agente atual. Formato: projects/{project}/locations/{location}/apps/{app}/agents/{agent}

GenerativeAnswer

Representação JSON
{
  "prompt": string
}
Campos
prompt

string

Obrigatório. O comando a ser usado para a resposta generativa.

Conjunto de ferramentas

Representação JSON
{
  "name": string,
  "displayName": string,
  "description": string,
  "timeout": string,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "executionType": enum (ExecutionType),
  "toolFakeConfig": {
    object (ToolFakeConfig)
  },

  // Union field toolset_type can be only one of the following:
  "mcpToolset": {
    object (McpToolset)
  },
  "openApiToolset": {
    object (OpenApiToolset)
  },
  "connectorToolset": {
    object (ConnectorToolset)
  }
  // End of list of possible types for union field toolset_type.
}
Campos
name

string

Identificador. O identificador exclusivo do conjunto de ferramentas. Formato: projects/{project}/locations/{location}/apps/{app}/toolsets/{toolset}

displayName

string

Opcional. O nome de exibição do conjunto de ferramentas. Precisa ser exclusivo no mesmo app.

description

string

Opcional. A descrição do conjunto de ferramentas.

timeout

string (Duration format)

Opcional. O tempo limite para a execução do conjunto de ferramentas. Se não for definido, o tempo limite padrão será de 30 segundos para conjuntos de ferramentas SYNCHRONOUS e 60 segundos para conjuntos de ferramentas ASYNCHRONOUS.

Duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

createTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o conjunto de ferramentas foi criado.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última atualização do conjunto de ferramentas.

Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de Z, outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

ETag usada para garantir que o objeto não foi alterado durante uma operação de leitura-modificação-gravação. Se a ETag estiver vazia, a atualização vai substituir todas as mudanças simultâneas.

executionType

enum (ExecutionType)

Opcional. O tipo de execução das ferramentas no conjunto de ferramentas.

toolFakeConfig

object (ToolFakeConfig)

Opcional. Configuração para o comportamento das ferramentas no modo simulado.

Campo de união toolset_type. O tipo do conjunto de ferramentas. toolset_type pode ser apenas de um dos tipos a seguir:
mcpToolset

object (McpToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas oferecidas pelo servidor MCP.

openApiToolset

object (OpenApiToolset)

Opcional. Um conjunto de ferramentas que contém uma lista de ferramentas definidas por um esquema da OpenAPI.

connectorToolset

object (ConnectorToolset)

Opcional. Um conjunto de ferramentas que gera ferramentas de uma conexão do Integration Connectors.

McpToolset

Representação JSON
{
  "serverAddress": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "customHeaders": {
    string: string,
    ...
  },
  "toolOverrides": [
    {
      object (McpToolOverride)
    }
  ]
}
Campos
serverAddress

string

Obrigatório. O endereço do servidor MCP, por exemplo, "https://example.com/mcp/". Se o servidor for criado com o SDK do MCP, o URL vai ter o sufixo "/mcp/". Somente servidores baseados em transporte HTTP transmissível são compatíveis. Consulte https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http para mais detalhes.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação necessárias para acessar ferramentas e executar uma ferramenta no servidor MCP. Para a autenticação de token de portador, o token se aplica apenas à execução da ferramenta, não à listagem de ferramentas. Isso exige que as ferramentas possam ser listadas sem autenticação.

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços para VPC-SC, usada para resolver nomes de serviços em um perímetro.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados em que o cliente deve confiar.

customHeaders

map (key: string, value: string)

Opcional. Os cabeçalhos personalizados a serem enviados na solicitação ao servidor MCP. Os valores precisam estar no formato $context.variables.<name_of_variable> e podem ser definidos nas variáveis de sessão. Consulte https://docs.cloud.google.com/customer-engagement-ai/conversational-agents/ps/tool/open-api#openapi-injection para mais detalhes.

Um objeto com uma lista de pares "key": value. Exemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

toolOverrides[]

object (McpToolOverride)

Opcional. Substituições para ferramentas individuais dentro desse conjunto. Isso permite substituir detalhes específicos, como descrições, nomes ou fixar os estados das ferramentas para que não sejam totalmente dinâmicos.

CustomHeadersEntry

Representação JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

McpToolOverride

Representação JSON
{
  "tool": string,
  "nameOverride": string,
  "descriptionOverride": string,
  "snapshot": {
    object (McpToolDefinition)
  }
}
Campos
tool

string

Obrigatório. O nome original da ferramenta, conforme emitido pelo servidor MCP.

nameOverride

string

Opcional. Se presente, essa ferramenta usa esse nome no agente em vez do nome original. Isso é usado principalmente como um alias se o servidor MCP oferecer ferramentas com nomes ruins.

descriptionOverride

string

Opcional. Se presente, essa ferramenta usa essa descrição em vez da original do servidor.

snapshot

object (McpToolDefinition)

Apenas saída. Se presente, essa ferramenta fica "Fixada" e usa os valores de snapshot como substitutos se o servidor ficar temporariamente indisponível ou se não houver substituição.

McpToolDefinition

Representação JSON
{
  "description": string,
  "inputSchema": {
    object (Schema)
  },
  "outputSchema": {
    object (Schema)
  }
}
Campos
description

string

Apenas saída. A descrição da ferramenta MCP. Isso pode ser substituído por description_override em McpToolOverride.

inputSchema

object (Schema)

Apenas saída. O esquema dos argumentos de entrada da ferramenta MCP.

outputSchema

object (Schema)

Apenas saída. O esquema dos argumentos de saída da ferramenta MCP.

OpenApiToolset

Representação JSON
{
  "openApiSchema": string,
  "apiAuthentication": {
    object (ApiAuthentication)
  },
  "tlsConfig": {
    object (TlsConfig)
  },
  "serviceDirectoryConfig": {
    object (ServiceDirectoryConfig)
  },
  "ignoreUnknownFields": boolean,
  "url": string
}
Campos
openApiSchema

string

Obrigatório. O esquema OpenAPI do conjunto de ferramentas.

apiAuthentication

object (ApiAuthentication)

Opcional. Informações de autenticação exigidas pela API.

tlsConfig

object (TlsConfig)

Opcional. A configuração de TLS. Inclui os certificados de servidor personalizados

serviceDirectoryConfig

object (ServiceDirectoryConfig)

Opcional. Configuração do Diretório de serviços.

ignoreUnknownFields

boolean

Opcional. Se for "true", o agente vai ignorar campos desconhecidos na resposta da API para todas as operações definidas no esquema OpenAPI.

url

string

Opcional. O URL do servidor do esquema de API aberta. Esse campo só é definido em conjuntos de ferramentas nas dependências do ambiente durante o processo de exportação se o esquema contiver um URL do servidor. Durante o processo de importação, se esse URL estiver presente nas dependências do ambiente e o esquema tiver o marcador de posição $env_var, ele vai substituir o marcador no esquema.

ConnectorToolset

Representação JSON
{
  "connection": string,
  "authConfig": {
    object (EndUserAuthConfig)
  },
  "connectorActions": [
    {
      object (Action)
    }
  ]
}
Campos
connection

string

Obrigatório. O nome completo do recurso da conexão referenciada do Integration Connectors. Formato: projects/{project}/locations/{location}/connections/{connection}

authConfig

object (EndUserAuthConfig)

Opcional. Configura como a autenticação é processada nos Integration Connectors. Por padrão, uma autenticação de administrador é transmitida nas solicitações da API Integration Connectors. É possível substituir essa configuração com outra. Observação: a conexão precisa ter a substituição de autenticação ativada para especificar uma configuração de EUC aqui. Caso contrário, a criação do conjunto de ferramentas vai falhar. Consulte: https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override

connectorActions[]

object (Action)

Obrigatório. A lista de ações do conector/operações de entidade para gerar ferramentas.

PrebuiltAmbientNoise

Ruído ambiente pré-criado.

Tipos enumerados
PREBUILT_AMBIENT_NOISE_UNSPECIFIED Não especificado.
RETAIL_STORE Ruído ambiente de uma loja de varejo.
CONVENTION_HALL Ruído ambiente de um centro de convenções.
OUTDOOR Ruído ambiente de uma rua.

WarningType

Tipo de aviso encontrado durante o processamento da amostra de voz.

Tipos enumerados
WARNING_TYPE_UNSPECIFIED Tipo de aviso não especificado.
LOW_AUDIO_LEVEL O nível de áudio da amostra de voz está muito baixo (por exemplo, amplitude RMS baixa).

VoiceInstructionMode

Modo de instrução para a amostra de voz.

Tipos enumerados
VOICE_INSTRUCTION_MODE_UNSPECIFIED Modo de instrução não especificado. O padrão é NO_INSTRUCTION.
NO_INSTRUCTION Nenhuma instrução de voz será usada.
GENERATE_INSTRUCTION A instrução por voz será gerada automaticamente por IA com base na amostra de áudio.
CUSTOM_INSTRUCTION Instrução de voz personalizada fornecida pelo usuário.

ErrorHandlingStrategy

Define a estratégia para lidar com erros.

Tipos enumerados
ERROR_HANDLING_STRATEGY_UNSPECIFIED Estratégia de tratamento de erros não especificada.
NONE Nenhum processamento específico está ativado.
FALLBACK_RESPONSE Uma mensagem substituta será retornada ao usuário em caso de erros do sistema (por exemplo, erros de LLM).
END_SESSION Um indicador EndSession será emitido em caso de erros do sistema (por exemplo, erros de LLM).

ThinkingLevel

Configuração do nível de raciocínio para o modelo.

Tipos enumerados
THINKING_LEVEL_UNSPECIFIED O nível de raciocínio não foi especificado.
DEFAULT Nível de raciocínio padrão.
LOW Nível de raciocínio baixo.
MEDIUM Nível de raciocínio médio.
HIGH Nível de raciocínio alto.

ToolExecutionMode

Define o comportamento de execução da ferramenta se houver várias ferramentas sendo selecionadas pelo agente ao mesmo tempo.

Tipos enumerados
TOOL_EXECUTION_MODE_UNSPECIFIED Modo de execução de ferramenta não especificado. O padrão é PARALLEL.
PARALLEL Se várias ferramentas forem selecionadas, elas serão executadas em paralelo, com o mesmo ToolContext.
SEQUENTIAL Se várias ferramentas forem selecionadas, elas serão executadas em sequência. A próxima ferramenta só será executada depois que a anterior for concluída, e ela poderá ver o ToolContext atualizado da ferramenta anterior.

SemanticSimilarityChannel

Canal de similaridade semântica a ser usado.

Tipos enumerados
SEMANTIC_SIMILARITY_CHANNEL_UNSPECIFIED Métrica não especificada. O padrão é TEXT.
TEXT Use a similaridade semântica de texto.
AUDIO Use a semelhança semântica de áudio.

ExtraToolCallBehavior

Define o comportamento quando uma chamada de função extra é encontrada. Uma chamada de ferramenta extra é uma chamada de ferramenta presente na execução, mas que não corresponde a nenhuma chamada de ferramenta na expectativa de ouro.

Tipos enumerados
EXTRA_TOOL_CALL_BEHAVIOR_UNSPECIFIED Comportamento não especificado. O padrão é FAIL.
FAIL Falhar na avaliação se uma chamada de ferramenta extra for encontrada.
ALLOW Permita a chamada extra da ferramenta.

HallucinationMetricBehavior

O comportamento da métrica de alucinação. Independente do comportamento, a métrica sempre será calculada. A diferença é que, quando desativada, a métrica não é usada para calcular a pontuação geral da avaliação.

Tipos enumerados
HALLUCINATION_METRIC_BEHAVIOR_UNSPECIFIED Comportamento não especificado da métrica de alucinação.
DISABLED Desativa a métrica de alucinação.
ENABLED Ativa a métrica de alucinação.

Tipo

Tipos de dados da OpenAPI.

Tipos enumerados
TYPE_UNSPECIFIED Tipo não especificado.
STRING Tipo de string.
INTEGER Tipo inteiro.
NUMBER Tipo de número.
BOOLEAN Tipo booleano.
OBJECT Tipo de objeto.
ARRAY Tipo de matriz.

NullValue

Representa um null JSON.

NullValue é um sentinela que usa uma enumeração com apenas um valor para representar o valor nulo da união de tipos Value.

Um campo do tipo NullValue com qualquer valor diferente de 0 é considerado inválido. A maioria dos serializadores ProtoJSON vai emitir um Value com um null_value definido como um null JSON, independente do valor inteiro, e, portanto, fará uma viagem de ida e volta para um valor 0.

Tipos enumerados
NULL_VALUE Valor nulo.

Tipo

O tipo de motor. Consulte a documentação disponível em https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/SolutionType e https://cloud.google.com/generative-ai-app-builder/docs/create-datastore-ingest.

Tipos enumerados
TYPE_UNSPECIFIED Tipo de mecanismo não especificado.
ENGINE_TYPE_CHAT Tipo de mecanismo de chat. O mecanismo SOLUTION_TYPE_CHAT do app. Todos os repositórios de dados do conector adicionados ao app serão adicionados a esse mecanismo.

ChannelType

O tipo do perfil do canal.

Tipos enumerados
UNKNOWN Tipo de canal desconhecido.
WEB_UI Canal da interface da Web.
API Canal da API.
TWILIO Canal do Twilio.
GOOGLE_TELEPHONY_PLATFORM Canal da Plataforma de telefonia do Google.
CONTACT_CENTER_AS_A_SERVICE Canal de central de atendimento como serviço (CCaaS).
CONTACT_CENTER_AS_A_SERVICE_CHAT Canal da central de atendimento como serviço (chat da CCaaS).
FIVE9 Canal da Five9.
CONTACT_CENTER_INTEGRATION Canal de integração da central de atendimento de terceiros.
WHATSAPP Canal do WhatsApp.
INSTAGRAM Canal do Instagram.

Persona

A persona do canal.

Tipos enumerados
UNKNOWN Persona UNKNOWN.
CONCISE O agente mantém as respostas concisas e diretas.
CHATTY O agente fornece mais contexto, explicações e detalhes

Modalidade

Modalidade do widget da Web.

Tipos enumerados
MODALITY_UNSPECIFIED Modalidade desconhecida.
CHAT_AND_VOICE O widget aceita entrada de texto por chat e voz.
VOICE_ONLY O widget só aceita entrada de texto por voz.
CHAT_ONLY O widget só aceita entrada de texto.
CHAT_VOICE_AND_VIDEO O widget aceita entradas de chat, voz e vídeo.

Tema

Tema do widget da Web.

Tipos enumerados
THEME_UNSPECIFIED Tema desconhecido.
LIGHT Tema claro.
DARK Tema escuro.

RequestLocation

O local da chave de API na solicitação.

Tipos enumerados
REQUEST_LOCATION_UNSPECIFIED Não especificado. Esse valor não deve ser usado.
HEADER Representa a chave no cabeçalho HTTP.
QUERY_STRING Representa a chave na string de consulta.

OauthGrantType

Tipos de permissão de acesso OAuth. Somente a concessão de credenciais de cliente é aceita.

Tipos enumerados
OAUTH_GRANT_TYPE_UNSPECIFIED Não especificado. O padrão é CLIENT_CREDENTIAL.
CLIENT_CREDENTIAL Representa o fluxo de credenciais do cliente.

Direção

A direção da transferência.

Tipos enumerados
DIRECTION_UNSPECIFIED Direção não especificada.
PARENT_TO_CHILD Transferência do agente principal para o agente secundário.
CHILD_TO_PARENT Transferir do agente secundário para o agente pai.

OperationType

A operação a ser realizada na entidade.

Tipos enumerados
OPERATION_TYPE_UNSPECIFIED Tipo de operação não especificado. Inválido. A criação/atualização de ConnectorTool vai falhar.
LIST Operação de lista.
GET Receber operação.
CREATE Crie uma operação.
UPDATE Operação de atualização.
DELETE Excluir operação.

DataStoreType

O tipo do repositório de dados.

Tipos enumerados
DATA_STORE_TYPE_UNSPECIFIED Não especificado. Esse valor indica que o tipo de repositório de dados não foi especificado e, portanto, não será usado durante a pesquisa.
PUBLIC_WEB Um repositório de dados que contém conteúdo da Web público.
UNSTRUCTURED Um repositório de dados que contém dados particulares não estruturados.
FAQ Um repositório de dados que contém dados estruturados usados como perguntas frequentes.
CONNECTOR Um repositório de dados que é um conector para um serviço próprio ou de terceiros.

DocumentProcessingMode

O modo de processamento de documentos do repositório de dados.

Tipos enumerados
DOCUMENT_PROCESSING_MODE_UNSPECIFIED Não especificado.
DOCUMENTS Os documentos são processados como documentos.
CHUNKS Os documentos são convertidos em partes.

AttributeType

O atributo(ou função) a que a classificação personalizada será aplicada.

Tipos enumerados
ATTRIBUTE_TYPE_UNSPECIFIED AttributeType não especificado.
NUMERICAL O valor do campo numérico será usado para atualizar dinamicamente o valor do reforço. Nesse caso, o attribute_value (o valor x) do ponto de controle será o valor real do campo numérico para o qual o boost_amount é especificado.
FRESHNESS Para o caso de uso de atualização, o valor do atributo será a duração entre a hora atual e a data no campo de data e hora especificado. O valor precisa ser formatado como um valor dayTimeDuration XSD (um subconjunto restrito de um valor de duração ISO 8601). O padrão é: [nD][T[nH][nM][nS]]. Por exemplo, 5D, 3DT12H30M, T24H.

InterpolationType

O tipo de interpolação a ser aplicado. O padrão é linear (linear por partes).

Tipos enumerados
INTERPOLATION_TYPE_UNSPECIFIED O tipo de interpolação não foi especificado. Nesse caso, o padrão é "Linear".
LINEAR A interpolação linear por partes será aplicada.

ModalityType

O tipo de modalidade.

Tipos enumerados
MODALITY_TYPE_UNSPECIFIED Tipo de modalidade não especificado.
TEXT Modalidade de texto.
AUDIO Modalidade de áudio.

FilterParameterBehavior

Comportamento do parâmetro de filtro.

Tipos enumerados
FILTER_PARAMETER_BEHAVIOR_UNSPECIFIED Comportamento padrão do filtro. Inclua o parâmetro de filtro para repositórios de dados de conector. Para os outros tipos de armazenamento de dados, o parâmetro de entrada de filtro é omitido.
ALWAYS_INCLUDE Sempre inclua o parâmetro de filtro para todos os tipos de repositório de dados.
NEVER_INCLUDE O parâmetro de filtro nunca é incluído na lista de parâmetros da ferramenta, seja qual for o tipo de armazenamento de dados.

Estado

Representa o estado de disponibilidade dinâmica da ferramenta.

Tipos enumerados
STATE_UNSPECIFIED Estado padrão.
ACTIVE A ferramenta está disponível e é oferecida ativamente pelo servidor.
INACTIVE A ferramenta está configurada ou fixada, mas não é oferecida pelo servidor no momento.
STALE A ferramenta existe no servidor, mas não corresponde à versão dele.

CorpusType

O tipo do corpus de RAG da Vertex.

Tipos enumerados
CORPUS_TYPE_UNSPECIFIED Tipo de corpus não especificado.
USER_OWNED O corpus é criado e pertence ao usuário.
FULLY_MANAGED O corpus é criado pelo agente.

WidgetType

Todos os tipos de widgets disponíveis. Novos valores podem ser adicionados a essa enumeração no futuro.

Tipos enumerados
WIDGET_TYPE_UNSPECIFIED Tipo de widget não especificado.
CUSTOM Tipo de widget personalizado.
PRODUCT_DETAILS Widget de detalhes do produto.
QUICK_ACTIONS Widget de ações rápidas.
PRODUCT_COMPARISON Widget de comparação de produtos.
ADVANCED_PRODUCT_DETAILS Widget de detalhes avançados do produto.
SHORT_FORM Widget de formato curto.
OVERALL_SATISFACTION Widget de satisfação geral.
ORDER_SUMMARY Widget de resumo do pedido.
APPOINTMENT_DETAILS Widget de detalhes do horário.
APPOINTMENT_SCHEDULER Widget de agendamento de horários.
CONTACT_FORM Widget de formulário de contato.

Modo

A estratégia usada para mapear dados da ferramenta de origem para o widget.

Tipos enumerados
MODE_UNSPECIFIED Modo não especificado.
FIELD_MAPPING Use o mapa field_mappings para transformação de dados.
PYTHON_SCRIPT Use o python_script para transformação de dados.

Tipo

Define como a resposta de texto é produzida.

Tipos enumerados
TYPE_UNSPECIFIED Tipo não especificado.
NONE O LLM decide dinamicamente se vai gerar uma resposta de texto ao lado do widget com base no contexto da conversa.
LLM_GENERATED O LLM precisa gerar uma resposta de texto.
STATIC Uma resposta de texto estático predefinida é sempre usada.

ExecutionType

O tipo de execução da ferramenta ou do conjunto de ferramentas.

Tipos enumerados
EXECUTION_TYPE_UNSPECIFIED O tipo de execução não foi especificado. Quando não especificado, o padrão é SYNCHRONOUS.
SYNCHRONOUS A ferramenta é executada de forma síncrona. A sessão fica bloqueada até que a ferramenta retorne.
ASYNCHRONOUS A ferramenta é executada de forma assíncrona. A sessão vai continuar enquanto a ferramenta estiver em execução.

MatchType

Tipo de correspondência para o filtro de conteúdo.

Tipos enumerados
MATCH_TYPE_UNSPECIFIED O tipo de correspondência não foi especificado.
SIMPLE_STRING_MATCH O conteúdo é correspondido para substrings caractere por caractere.
WORD_BOUNDARY_STRING_MATCH O conteúdo só vai corresponder se o padrão encontrado no texto estiver cercado por delimitadores de palavras. As frases proibidas também podem conter delimitadores de palavras.
REGEXP_MATCH O conteúdo é correspondido usando a sintaxe de expressão regular.

PolicyScope

Define quando aplicar a verificação de política durante a conversa.

Tipos enumerados
POLICY_SCOPE_UNSPECIFIED O escopo da política não foi especificado.
USER_QUERY A verificação de política é acionada com a entrada do usuário.
AGENT_RESPONSE A verificação de política é acionada na resposta do agente. Aplicar esse escopo de política vai introduzir mais latência antes que o agente possa responder.
USER_QUERY_AND_AGENT_RESPONSE A verificação de política é acionada na entrada do usuário e na resposta do agente. Aplicar esse escopo de política vai introduzir mais latência antes que o agente possa responder.

HarmCategory

Categoria de dano.

Tipos enumerados
HARM_CATEGORY_UNSPECIFIED A categoria de danos não foi especificada.
HARM_CATEGORY_HATE_SPEECH A categoria de danos é discurso de ódio.
HARM_CATEGORY_DANGEROUS_CONTENT A categoria de danos é um conteúdo perigoso.
HARM_CATEGORY_HARASSMENT A categoria de dano é assédio.
HARM_CATEGORY_SEXUALLY_EXPLICIT A categoria de dano é conteúdo sexualmente explícito.
HARM_CATEGORY_PROFANITY A categoria de dano é linguagem obscena.
HARM_CATEGORY_TOXIC A categoria de dano é conteúdo tóxico.

HarmBlockThreshold

Níveis de limite baseados em probabilidade para bloqueio.

Tipos enumerados
HARM_BLOCK_THRESHOLD_UNSPECIFIED Limite de bloqueio de danos não especificado.
BLOCK_LOW_AND_ABOVE Bloquear o limite inferior e superior (ou seja, bloquear mais).
BLOCK_MEDIUM_AND_ABOVE Bloquear o limite médio e acima.
BLOCK_ONLY_HIGH Bloquear apenas o limite superior (ou seja, bloquear menos).
BLOCK_NONE Bloquear nenhum
OFF Desative o filtro de segurança.

Tipo

Tipo de supervisor.

Tipos enumerados
TYPE_UNSPECIFIED Tipo não especificado.
INVALID_TEXT Tipo de problema de texto inválido.
LANGUAGE_SHIFT Tipo de problema de mudança de idioma.
SPEAKER_SHIFT Tipo de problema de mudança de locutor.
AUDIO_MISMATCH Tipo de problema de incompatibilidade de áudio.
MISSING_TOOL_CALL Tipo de problema de chamada de ferramenta ausente.
CUSTOM Tipo de problema personalizado.
CHOPPY_AUDIO Tipo de problema de áudio entrecortado.
PROFANITY Tipo de problema de linguagem obscena do agente.

DetectionMode

Modo de detecção do supervisor.

Tipos enumerados
DETECTION_MODE_UNSPECIFIED O modo de detecção não foi especificado. O padrão é NON_BLOCKING.
NON_BLOCKING Modo de detecção sem bloqueio. A resposta não é bloqueada enquanto a detecção de supervisores está em andamento.
BLOCKING Modo de detecção de bloqueio. A resposta é bloqueada enquanto a detecção de supervisão está em andamento.

Anotações de ferramentas

As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.

Além da string de título, as seguintes dicas booleanas são definidas da seguinte maneira:

  • readOnlyHint: se for "true", a ferramenta não vai modificar o ambiente. Padrão: false.
  • destructiveHint: se for "true", a ferramenta poderá realizar ações destrutivas. Se for "false", a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.
  • idempotentHint: se for "true", chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente dela. Padrão: false.
  • openWorldHint: se for "true", a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for "false", a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.

Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌