Message

Es un mensaje de una interacción entre el usuario y el sistema.

Representación JSON
{
  "timestamp": string,
  "messageId": string,

  // Union field kind can be only one of the following:
  "userMessage": {
    object (UserMessage)
  },
  "systemMessage": {
    object (SystemMessage)
  }
  // End of list of possible types for union field kind.
}
Campos
timestamp

string (Timestamp format)

Solo salida. En el caso de los mensajes del usuario, es la hora en la que el sistema recibió el mensaje. En el caso de los mensajes del sistema, esta es la hora en la que el sistema generó el mensaje.

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

messageId

string

Opcional. Es el ID único del mensaje en la conversación para conservarla.

Campo de unión kind. Es el tipo de mensaje. kind puede ser solo uno de los siguientes:
userMessage

object (UserMessage)

Es un mensaje del usuario que interactúa con el sistema.

systemMessage

object (SystemMessage)

Es un mensaje del sistema en respuesta al usuario.

UserMessage

Es un mensaje del usuario que interactúa con el sistema.

Representación JSON
{

  // Union field kind can be only one of the following:
  "text": string
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Es el tipo de contenido del mensaje del usuario. kind puede ser solo uno de los siguientes:
text

string

El texto debe usar este campo en lugar de BLOB.

SystemMessage

Es un mensaje del sistema en respuesta al usuario. Este mensaje también puede ser un mensaje del usuario como contexto histórico para las conversaciones de varios turnos con el sistema.

Representación JSON
{
  "citation": {
    object (Citation)
  },

  // Union field kind can be only one of the following:
  "text": {
    object (TextMessage)
  },
  "schema": {
    object (SchemaMessage)
  },
  "data": {
    object (DataMessage)
  },
  "analysis": {
    object (AnalysisMessage)
  },
  "chart": {
    object (ChartMessage)
  },
  "error": {
    object (ErrorMessage)
  },
  "exampleQueries": {
    object (ExampleQueries)
  }
  // End of list of possible types for union field kind.
  "groupId": integer
}
Campos
citation

object (Citation)

Solo salida. Es la información de la cita del mensaje del sistema.

Campo de unión kind. Es el tipo de contenido del mensaje del sistema. kind puede ser solo uno de los siguientes:
text

object (TextMessage)

Es una respuesta directa en lenguaje natural al mensaje del usuario.

schema

object (SchemaMessage)

Es un mensaje que se produce durante la resolución del esquema.

data

object (DataMessage)

Es un mensaje que se produce durante la recuperación de datos.

analysis

object (AnalysisMessage)

Es un mensaje que se produce durante el análisis.

chart

object (ChartMessage)

Es un mensaje que se produce durante la generación del gráfico.

error

object (ErrorMessage)

Es un mensaje de error.

exampleQueries

object (ExampleQueries)

Es opcional. Es un mensaje que contiene ejemplos de búsquedas.

groupId

integer

Identifica el grupo al que pertenece el evento. Se considera que los eventos similares son lógicamente pertinentes entre sí y deben mostrarse juntos en la IU.

TextMessage

Es un mensaje de texto de varias partes.

Representación JSON
{
  "parts": [
    string
  ],
  "textType": enum (TextType),
  "thoughtSignature": string
}
Campos
parts[]

string

Opcional. Son las partes del mensaje.

textType

enum (TextType)

Es opcional. Es el tipo de mensaje de texto.

thoughtSignature

string (bytes format)

Es opcional. Es una firma opaca para un pensamiento, de modo que se pueda reutilizar en solicitudes posteriores.

Es una cadena codificada en Base64.

TextType

Es el tipo de mensaje de texto.

Enums
TEXT_TYPE_UNSPECIFIED Es el tipo de texto predeterminado.
FINAL_RESPONSE El texto es una respuesta final a la pregunta del usuario.
THOUGHT El texto es una opinión del modelo.
PROGRESS El texto es un mensaje informativo sobre el progreso del agente, como la invocación de una herramienta. Esto se diferencia del proceso de pensamiento interno del agente (THOUGHT) y de la respuesta final al usuario (FINAL_RESPONSE). Estos mensajes proporcionan información sobre las acciones del agente.
FOLLOWUP_QUESTIONS El texto es una lista de preguntas de seguimiento sugeridas. Cada elemento de parts es una pregunta de seguimiento.

SchemaMessage

Es un mensaje que se produce durante la resolución del esquema.

Representación JSON
{

  // Union field kind can be only one of the following:
  "query": {
    object (SchemaQuery)
  },
  "result": {
    object (SchemaResult)
  }
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Indica si este mensaje contiene la consulta o el resultado de la resolución del esquema. kind puede ser solo uno de los siguientes:
query

object (SchemaQuery)

Es una consulta de resolución de esquema.

result

object (SchemaResult)

Es el resultado de una consulta de resolución de esquema.

SchemaQuery

Es una consulta para resolver el esquema pertinente a la pregunta planteada.

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

string

Opcional. Es la pregunta que se enviará al sistema para la resolución del esquema.

SchemaResult

Es el resultado de la resolución del esquema.

Representación JSON
{
  "datasources": [
    {
      object (Datasource)
    }
  ]
}
Campos
datasources[]

object (Datasource)

Opcional. Son las fuentes de datos que se usan para resolver la consulta de esquema.

Datasource

Es una fuente de datos que se puede usar para responder preguntas.

Representación JSON
{
  "schema": {
    object (Schema)
  },
  "structSchema": {
    object
  },

  // Union field reference can be only one of the following:
  "bigqueryTableReference": {
    object (BigQueryTableReference)
  },
  "studioDatasourceId": string,
  "lookerExploreReference": {
    object (LookerExploreReference)
  },
  "bigqueryPropertyGraphReference": {
    object (BigQueryPropertyGraphReference)
  }
  // End of list of possible types for union field reference.
}
Campos
schema

object (Schema)

Opcional. Es el esquema de la fuente de datos.

structSchema

object (Struct format)

Es opcional. Es una representación struct del esquema. Este campo se completa para las fuentes de datos con esquemas que no se pueden representar completamente con el campo schema con escritura segura.

En el caso de las fuentes de datos de Looker, esto se asigna al tipo LookmlModelExplore: https://cloud.google.com/looker/docs/reference/looker-api/latest/types/LookmlModelExplore

Campo de unión reference. Es la referencia a la fuente de datos. reference puede ser solo uno de los siguientes:
bigqueryTableReference

object (BigQueryTableReference)

Es una referencia a una tabla de BigQuery.

studioDatasourceId

string

Es una referencia a una fuente de datos de Looker Studio.

lookerExploreReference

object (LookerExploreReference)

Es una referencia a una exploración de Looker.

bigqueryPropertyGraphReference

object (BigQueryPropertyGraphReference)

Es una referencia a un gráfico de propiedades de BigQuery.

BigQueryPropertyGraphReference

Es un mensaje que representa una referencia a un solo gráfico de propiedades de BigQuery.

Representación JSON
{
  "projectId": string,
  "datasetId": string,
  "propertyGraphId": string
}
Campos
projectId

string

Obligatorio. Es el proyecto al que pertenece el gráfico de propiedades.

datasetId

string

Obligatorio. Es el conjunto de datos al que pertenece el gráfico de propiedades.

propertyGraphId

string

Obligatorio. Es el ID del gráfico de propiedades.

DataMessage

Es un mensaje que se produce durante la recuperación de datos.

Representación JSON
{

  // Union field kind can be only one of the following:
  "query": {
    object (DataQuery)
  },
  "generatedSql": string,
  "result": {
    object (DataResult)
  },
  "bigQueryJob": {
    object (BigQueryJob)
  },
  "matchedQuery": {
    object (MatchedQuery)
  }
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Indica si este mensaje contiene la consulta, el resultado o el SQL generado para la recuperación de datos. kind puede ser solo uno de los siguientes:
query

object (DataQuery)

Es una consulta de recuperación de datos.

generatedSql

string

Es el código SQL que genera el sistema para recuperar datos.

result

object (DataResult)

Son datos recuperados.

bigQueryJob

object (BigQueryJob)

Es un trabajo de BigQuery que ejecuta el sistema para recuperar datos.

matchedQuery

object (MatchedQuery)

Es una búsqueda preexistente que coincidió para recuperar datos.

DataQuery

Es una consulta para recuperar datos.

Representación JSON
{
  "question": string,
  "name": string,
  "datasources": [
    {
      object (Datasource)
    }
  ],

  // Union field query_type can be only one of the following:
  "looker": {
    object (LookerQuery)
  }
  // End of list of possible types for union field query_type.
}
Campos
question

string

Opcional. Es una pregunta en lenguaje natural que se debe responder.

name

string

Opcional. Nombre en minúsculas con guiones bajos para la consulta que refleja su intención. Se usa para nombrar el resultado de datos correspondiente, de modo que se pueda hacer referencia a él en pasos posteriores.

  • Ejemplo: "total_sales_by_product"
  • Ejemplo: "sales_for_product_12345"
datasources[]

object (Datasource)

Opcional. Son las fuentes de datos disponibles para responder la pregunta.

Campo de unión query_type. Es el tipo de consulta que se ejecutará. query_type puede ser solo uno de los parámetros siguientes:
looker

object (LookerQuery)

Es opcional. Es una consulta para recuperar datos de una exploración de Looker.

DataResult

Son datos recuperados.

Representación JSON
{
  "name": string,
  "schema": {
    object (Schema)
  },
  "data": [
    {
      object
    }
  ],
  "formattedData": [
    {
      object
    }
  ]
}
Campos
name

string

Opcional. Es un nombre en minúsculas con guiones bajos para el resultado de datos que refleja su contenido. El nombre se usa para pasar el resultado por referencia y sirve como indicador de su significado.

  • Ejemplo: "total_sales_by_product"
  • Ejemplo: "sales_for_product_12345"
schema

object (Schema)

Opcional. Es el esquema de los datos.

data[]

object (Struct format)

Opcional. Es el contenido de los datos. Cada fila es una struct que coincide con el esquema. Los valores simples se representan como cadenas, mientras que las estructuras anidadas se representan como listas o structs.

formattedData[]

object (Struct format)

Es opcional. Representación con formato de los datos, cuando corresponda. Cada fila es una struct que corresponde directamente a la fila del mismo índice dentro del campo data. Sus valores son representaciones de cadena de los datos originales, con el formato según las especificaciones de la fuente de datos (p.ej., "USD 1,234.56" para la moneda). Las columnas sin formato se mostrarán de forma predeterminada con su representación de valor sin procesar. Si ninguna columna tiene reglas de formato, este campo estará vacío.

BigQueryJob

Es un trabajo de BigQuery que ejecuta el sistema.

Representación JSON
{
  "projectId": string,
  "jobId": string,
  "location": string,
  "destinationTable": {
    object (BigQueryTableReference)
  },
  "schema": {
    object (Schema)
  }
}
Campos
projectId

string

Obligatorio. Es el proyecto al que pertenece el trabajo.

Consulta JobReference.

jobId

string

Obligatorio. Es el ID del trabajo.

Consulta JobReference.

location

string

Opcional. Es la ubicación del trabajo.

Consulta JobReference.

destinationTable

object (BigQueryTableReference)

Opcional. Es una referencia a la tabla de destino de los resultados de la consulta del trabajo.

Consulta JobConfigurationQuery.

schema

object (Schema)

Opcional. Es el esquema de los resultados de la consulta del trabajo.

Consulta JobStatistics2.

MatchedQuery

Un mensaje de consulta coincidente representa que el agente encontró una de las consultas de ejemplo proporcionadas en el contexto como aplicable a la pregunta actual. También contendrá información adicional durante el proceso de correlación.

Representación JSON
{
  "exampleQuery": {
    object (ExampleQuery)
  },
  "queryParameterValues": [
    {
      object (QueryParameterValues)
    }
  ]
}
Campos
exampleQuery

object (ExampleQuery)

Es la búsqueda que coincidió según una búsqueda de ejemplo.

queryParameterValues[]

object (QueryParameterValues)

Son los valores extraídos para los parámetros de consulta.

QueryParameterValues

Un mensaje de valores de parámetros de consulta representa los valores de los parámetros de consulta que el LLM extrajo de la pregunta del usuario, según la consulta de ejemplo.

Representación JSON
{
  "name": string,
  "value": string
}
Campos
name

string

Obligatorio. Es el nombre del parámetro.

value

string

Obligatorio. El valor del parámetro.

AnalysisMessage

Es un mensaje que se produce durante el análisis.

Representación JSON
{

  // Union field kind can be only one of the following:
  "query": {
    object (AnalysisQuery)
  },
  "progressEvent": {
    object (AnalysisEvent)
  }
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Indica si este mensaje contiene la búsqueda o uno de los eventos del análisis. kind puede ser solo uno de los siguientes:
query

object (AnalysisQuery)

Es una consulta de análisis.

progressEvent

object (AnalysisEvent)

Es un evento que indica el progreso del análisis.

AnalysisQuery

Es una consulta para realizar un análisis.

Representación JSON
{
  "question": string,
  "dataResultNames": [
    string
  ]
}
Campos
question

string

Opcional. Es una pregunta de análisis que ayuda a responder la pregunta original del usuario.

dataResultNames[]

string

Opcional. Son los nombres de los resultados de datos recuperados anteriormente que se usarán para el análisis.

AnalysisEvent

Es un evento que indica el progreso de un análisis.

Representación JSON
{

  // Union field kind can be only one of the following:
  "plannerReasoning": string,
  "coderInstruction": string,
  "code": string,
  "executionOutput": string,
  "executionError": string,
  "resultVegaChartJson": string,
  "resultNaturalLanguage": string,
  "resultCsvData": string,
  "resultReferenceData": string,
  "error": string
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Es el tipo de evento que ocurrió durante el análisis. kind puede ser solo uno de los siguientes:
plannerReasoning

string

Es el razonamiento del planificador para la generación de código de Python.

coderInstruction

string

Son las instrucciones que se emiten para la generación de código.

code

string

Es el código generado.

executionOutput

string

Es el resultado de la ejecución del código.

executionError

string

Es un error de la ejecución del código.

resultVegaChartJson

string

Es el resultado como cadena JSON del gráfico de Vega.

resultNaturalLanguage

string

Es el resultado como una cadena NL.

resultCsvData

string

Es el resultado como una cadena CSV.

resultReferenceData

string

Es el resultado como referencia a una fuente de datos.

error

string

Es un mensaje de error genérico.

ChartMessage

Es un mensaje que se produce durante la generación del gráfico.

Representación JSON
{

  // Union field kind can be only one of the following:
  "query": {
    object (ChartQuery)
  },
  "result": {
    object (ChartResult)
  }
  // End of list of possible types for union field kind.
}
Campos
Campo de unión kind. Indica si este mensaje contiene la consulta o el resultado de la generación del gráfico. kind puede ser solo uno de los siguientes:
query

object (ChartQuery)

Es una consulta para generar un gráfico.

result

object (ChartResult)

Es el resultado de una consulta de generación de gráficos.

ChartQuery

Es una consulta para generar un gráfico.

Representación JSON
{
  "instructions": string,
  "dataResultName": string
}
Campos
instructions

string

Opcional. Son las instrucciones en lenguaje natural para generar el gráfico.

dataResultName

string

Opcional. Es el nombre de un resultado de datos recuperado previamente para usar en el gráfico.

ChartResult

Es el resultado de una consulta de generación de gráficos.

Representación JSON
{
  "vegaConfig": {
    object
  },
  "image": {
    object (Blob)
  }
}
Campos
vegaConfig

object (Struct format)

Opcional. Es un parámetro de configuración del gráfico generado de Vega. Consulta https://vega.github.io/vega/docs/config/

image

object (Blob)

Opcional. Es una renderización del gráfico si se solicitó en el contexto.

BLOB

Es un BLOB de datos con un tipo de MIME.

Representación JSON
{
  "mimeType": string,
  "data": string
}
Campos
mimeType

string

Obligatorio. Es el tipo de MIME estándar de IANA de los datos del mensaje.

data

string (bytes format)

Obligatorio. Son los datos representados como bytes.

Es una cadena codificada en base64.

ErrorMessage

Es un mensaje de error de una llamada a una herramienta. Este mensaje se usa para representar un error que ocurrió mientras un agente intentaba usar una herramienta. Es importante tener en cuenta que no todos los errores son terminales. Muchos son recuperables, y el agente puede usar la información de este mensaje de error para autocorregirse y volver a intentar la llamada a la herramienta o probar un enfoque diferente.

Por ejemplo, si falla una consulta de datos, el agente podría recibir un ErrorMessage, analizarlo y, luego, generar una consulta corregida.

Los clientes deben tener cuidado al interpretar este mensaje como una falla definitiva. Puede ser parte del proceso iterativo normal del agente para completar una tarea. Mostrar estos errores directamente a los usuarios finales sin contexto (p.ej., como un "error grave") puede ser engañoso.

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

string

Solo salida. Es el texto del error.

ExampleQueries

Es un mensaje que contiene ejemplos de búsquedas derivadas y creadas.

Representación JSON
{
  "exampleQueries": [
    {
      object (ExampleQuery)
    }
  ]
}
Campos
exampleQueries[]

object (ExampleQuery)

Es opcional. Es una lista de ejemplos de consultas derivadas y creadas, que proporciona ejemplos de consultas en SQL relevantes y de uso frecuente, y sus correspondientes consultas en lenguaje natural (opcionalmente). Actualmente, solo se usa para las fuentes de datos de BigQuery.

Cita

Son las atribuciones de la fuente del contenido.

Representación JSON
{
  "sources": [
    {
      object (CitationSource)
    }
  ],
  "anchors": [
    {
      object (CitationAnchor)
    }
  ]
}
Campos
sources[]

object (CitationSource)

Solo salida. Es la lista de las fuentes que se citan.

anchors[]

object (CitationAnchor)

Solo salida. Es la lista de anclajes de las citas.

CitationSource

Es la fuente de la cita.

Representación JSON
{
  "id": string,
  "title": string,

  // Union field source_type can be only one of the following:
  "uri": string,
  "exampleQuery": {
    object (ExampleQuery)
  },
  "glossaryTerm": {
    object (GlossaryTerm)
  }
  // End of list of possible types for union field source_type.
}
Campos
id

string

Solo salida. Es el identificador único de la fuente. Este ID se genera en el servicio y es único dentro del alcance de un solo mensaje de Citation.

title

string

Solo salida. Es el título de la fuente.

Campo de unión source_type. Es la fuente de la cita, que puede ser uno de los tipos admitidos. source_type puede ser solo uno de los parámetros siguientes:
uri

string

Solo salida. Es el URI que se usa como fuente, como una URL de fundamentación web.

exampleQuery

object (ExampleQuery)

Solo salida. Es la consulta de ejemplo que se usa como fuente.

glossaryTerm

object (GlossaryTerm)

Solo salida. Es el término del glosario que se usa como fuente.

CitationAnchor

Es la referencia de la cita.

Representación JSON
{

  // Union field anchor_type can be only one of the following:
  "textMessageAnchor": {
    object (TextMessageCitationAnchor)
  }
  // End of list of possible types for union field anchor_type.
}
Campos
Campo de unión anchor_type. Es el ancla de la cita, que puede ser uno de los tipos admitidos. anchor_type puede ser solo uno de los parámetros siguientes:
textMessageAnchor

object (TextMessageCitationAnchor)

Solo salida. Solo se establece si la cita es para un TextMessage.

TextMessageCitationAnchor

Es el ancla de la cita dentro de un objeto TextMessage.

Representación JSON
{
  "partIndex": integer,
  "startOffsetBytes": integer,
  "endOffsetBytes": integer,
  "sourceIds": [
    string
  ]
}
Campos
partIndex

integer

Solo salida. Índice basado en 0 de la parte dentro del campo TextMessage.parts.

startOffsetBytes

integer

Solo salida. Es el desplazamiento, medido en bytes UTF-8, dentro de la cadena de la parte en la que comienza la cita (inclusive). Ejemplo: Para el texto "Hello, world", en el que se cita "world", los bytes de desplazamiento inicial (inclusivo) son 7 y los bytes de desplazamiento final (exclusivo) son 12.

endOffsetBytes

integer

Solo salida. Es el desplazamiento, medido en bytes UTF-8, dentro de la cadena de la parte en la que finaliza la cita (exclusivo). Ejemplo: Para el texto "Hello, world", en el que se cita "world", los bytes de desplazamiento inicial (inclusivo) son 7 y los bytes de desplazamiento final (exclusivo) son 12.

sourceIds[]

string

Solo salida. Son los IDs de las fuentes que se citan.