Method: projects.locations.chat

Responde una pregunta sobre datos generando un flujo de objetos Message.

Solicitud HTTP

POST https://geminidataanalytics.googleapis.com/v1/{parent=projects/*/locations/*}:chat

La URL usa la sintaxis de la transcodificación gRPC.

Parámetros de ruta

Parámetros
parent

string

Obligatorio. Es el valor principal de la solicitud de chat. Patrón: projects/{project}/locations/{location}

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "messages": [
    {
      object (Message)
    }
  ],
  "credentials": {
    object (Credentials)
  },
  "thinkingMode": enum (ThinkingMode),
  "model": enum (Model),

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "inlineContext": {
    object (Context)
  },
  "conversationReference": {
    object (ConversationReference)
  },
  "dataAgentContext": {
    object (DataAgentContext)
  },
  "clientManagedResourceContext": {
    object (ClientManagedResourceContext)
  }
  // End of mutually exclusive fields.

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "lookerSettings": {
    object (LookerSettings)
  }
  // End of mutually exclusive fields.
}
Campos
messages[]

object (Message)

Obligatorio. Es el contenido de la conversación actual.

credentials

object (Credentials)

Es opcional. Son las credenciales que se usarán cuando se llame a las fuentes de datos especificadas en el contexto.

Este campo se puede usar para proporcionar credenciales para varias fuentes de datos. Por ejemplo, cuando te conectas a Looker, actualmente admite credenciales basadas en tokens de OAuth y claves de API, como se describe en Autenticación con un SDK.

thinkingMode

enum (ThinkingMode)

Es opcional. Es el modo de pensamiento que se usará para el bucle del agente. El valor predeterminado es THINKING_MODE_UNSPECIFIED si no se especifica.

model

enum (Model)

Es opcional. Es el modelo que se usará para el bucle del agente cuando se procese la solicitud. Este parámetro de configuración solo tiene efecto cuando no se establece context.options.model.

Es el proveedor de contexto para la solicitud de chat. Puede ser inline_context, que es un contexto proporcionado de forma intercalada en la solicitud; data_agent, que es una referencia a un recurso de agente de datos; o conversation_reference, que es una referencia a una conversación y un contexto persistentes que usan conversation_id y agent_id. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
inlineContext

object (Context)

Es opcional. Es el contexto intercalado para la solicitud de chat. Úsalo para chatear sin estado (sin persistencia de conversación administrada y sin un agente) pasando todo el contexto de forma intercalada.

conversationReference

object (ConversationReference)

Opcional. Es una referencia a una conversación persistente y al contexto del agente. Úsalo para chatear con un agente con la persistencia de conversación administrada.

dataAgentContext

object (DataAgentContext)

Opcional. Es el contexto de la solicitud de chat. Úsalo para chatear con un agente sin estado, sin persistencia de conversación administrada.

clientManagedResourceContext

object (ClientManagedResourceContext)

Es opcional. Contexto con recursos administrados por el cliente. Es posible que algunos clientes no usen los recursos administrados por la GDA, incluidas las conversaciones y los agentes, sino que creen y administren sus propios recursos de conversaciones y agentes.

Fin de los campos mutuamente excluyentes.
Son parámetros de configuración opcionales para personalizar el comportamiento de la solicitud, específicos de la fuente de datos de destino. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
lookerSettings

object (LookerSettings)

Es opcional. Configuración específica de Looker.

Fin de los campos mutuamente excluyentes.

Cuerpo de la respuesta

Si se ejecuta correctamente, el cuerpo de la respuesta contiene un flujo de instancias de Message.

Permisos de autorización

Se necesita uno de los siguientes permisos de OAuth:

  • https://www.googleapis.com/auth/cloud-platform
  • https://www.googleapis.com/auth/geminidataanalytics

Para obtener más información, consulta Authentication Overview.

ConversationReference

Es una referencia a una conversación persistente y al contexto del agente.

Representación JSON
{
  "conversation": string,
  "dataAgentContext": {
    object (DataAgentContext)
  }
}
Campos
conversation

string

Obligatorio. Nombre del recurso de conversación. Formato: projects/{project}/locations/{location}/conversations/{conversationId}

dataAgentContext

object (DataAgentContext)

Obligatorio. Contexto de la solicitud de chat con un agente de datos.

DataAgentContext

Contexto de la solicitud de chat con un agente de datos.

Representación JSON
{
  "dataAgent": string,
  "contextVersion": enum (ContextVersion)
}
Campos
dataAgent

string

Obligatorio. Es el nombre del recurso del agente de datos.

contextVersion

enum (ContextVersion)

Es opcional. Versión del contexto que usará DCS (p. ej., ALMACENAMIENTO EN ETAPA DE PRUEBAS, PUBLICADO)

ContextVersion

Es la lista de versiones de contexto compatibles con DCS. Hay dos versiones del contexto. Esto es para mantener el control de versiones del agente de datos.

Enums
CONTEXT_VERSION_UNSPECIFIED Sin especificar o no reconocido.
STAGING Con esta versión, DCS usará el contexto de etapa de pruebas más reciente para el agente de datos.
PUBLISHED Con esta versión, DCS usará el contexto publicado más reciente para el agente de datos.

ClientManagedResourceContext

Contexto con recursos administrados por el cliente. Es posible que algunos clientes no usen los recursos administrados por GDA, incluidas las conversaciones y los agentes, sino que creen y administren sus propios recursos de conversaciones y agentes.

Representación JSON
{
  "inlineContext": {
    object (Context)
  },
  "conversationId": string,
  "agentId": string
}
Campos
inlineContext

object (Context)

Obligatorio. Es el contexto de la solicitud de chat. Úsalo para chatear sin persistencia de conversación administrada por la API de GDA ni persistencia de agente pasando todo el contexto de forma intercalada.

conversationId

string

Es opcional. Es el ID de conversación administrado por el cliente.

agentId

string

Es opcional. Es el ID del agente administrado por el cliente.

LookerSettings

Es el mensaje para conservar la configuración personalizada específica de Looker.

Representación JSON
{
  "enableDevMode": boolean
}
Campos
enableDevMode

boolean

Es opcional. Indica si se debe operar en el modo de desarrollo de Looker. Si es verdadero, la sesión de la API cambiará al espacio de trabajo "dev", lo que permitirá la interacción con los cambios en LookML en la rama de desarrollo del usuario. Si es falso o no se establece, la sesión permanece en el estado predeterminado (modo de producción). Consulta https://cloud.google.com/looker/docs/dev-mode-prod-mode.

Credenciales

Representa diferentes formas de especificación de credenciales.

Representación JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "oauth": {
    object (OAuthCredentials)
  }
  // End of mutually exclusive fields.
}
Campos
Es el tipo de credenciales. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
oauth

object (OAuthCredentials)

Credenciales de OAuth

Fin de los campos mutuamente excluyentes.

OAuthCredentials

Representa las credenciales de OAuth.

Representación JSON
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "secret": {
    object (SecretBased)
  },
  "token": {
    object (TokenBased)
  }
  // End of mutually exclusive fields.
}
Campos
Es el tipo de credenciales de OAuth. La siguiente es una lista de campos mutuamente excluyentes. Como máximo, se establecerá uno de los campos en una respuesta:
secret

object (SecretBased)

Son credenciales de OAuth basadas en un secreto.

token

object (TokenBased)

Credenciales de OAuth basadas en tokens.

Fin de los campos mutuamente excluyentes.

SecretBased

Es el nombre del Secret que contiene el token de acceso. Representa credenciales de OAuth basadas en secretos.

Representación JSON
{
  "clientId": string,
  "clientSecret": string
}
Campos
clientId

string

Obligatorio. Es un ID de cliente de OAuth.

clientSecret

string

Obligatorio. Un secreto del cliente de OAuth

TokenBased

Obtén más información sobre los tokens de acceso de Looker aquí: https://developers.looker.com/api/advanced-usage/looker-api-oauth

Representación JSON
{
  "accessToken": string
}
Campos
accessToken

string

Obligatorio. Es el nombre del Secret que contiene el token de acceso.

ThinkingMode

Es el modo de pensamiento del agente.

Enums
THINKING_MODE_UNSPECIFIED Es el valor predeterminado. Para las fuentes de datos de BigQuery y Looker, el agente usa FAST. Para todas las demás fuentes de datos, el agente usa THINKING.
FAST Modo rápido, responde con rapidez.
THINKING Modo de pensamiento, resuelve problemas complejos.

Modelo

Selección de modelo para el agente para usuarios de BigQuery.

Enums
MODEL_UNSPECIFIED No se especificó ningún modelo. Se puede usar el modelo de vista previa o el que no es de vista previa.
LATEST_GA_MODEL Usa el modelo más actualizado que no sea de vista previa. Esto puede restringir ciertos parámetros de configuración a nivel de la solicitud.