Method: answerQuery

Responde una consulta con generación fundamentada.

Solicitud HTTP

POST https://developerknowledge.googleapis.com/v1alpha:answerQuery

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

Cuerpo de la solicitud

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

Representación JSON
{
  "query": string,
  "filter": string
}
Campos
query

string

Obligatorio. Es la consulta que se responderá.

filter

string

Es opcional. Aplica un filtro estricto a los resultados de la búsqueda que se usan para fundamentar la respuesta. La expresión admite un subconjunto de la sintaxis que se describe en https://google.aip.dev/160.

Campos admitidos para el filtrado:

  • contentLengthBytes (INTEGER): Es la longitud del campo Document.content en bytes.
  • dataSource (STRING): Es la fuente del documento, p.ej., docs.cloud.google.com. Consulta https://developers.google.com/knowledge/reference/corpus-reference para obtener la lista completa de fuentes de datos en el corpus.
  • updateTime (TIMESTAMP): Es la marca de tiempo de la última actualización significativa del documento. Una actualización significativa es aquella que cambia el contenido de Markdown o los metadatos del documento.
  • uri (STRING): Es el URI del documento, p.ej., https://docs.cloud.google.com/bigquery/docs/tables.

Los campos INTEGER admiten los operadores =, <, <=, >, y >=.

Los campos STRING admiten los operadores = (igual) y != (no igual) para la coincidencia exacta en toda la cadena. No se admiten la coincidencia parcial, la coincidencia de prefijo ni la coincidencia de expresiones regulares.

Los campos TIMESTAMP admiten los operadores =, <, <=, >, y >=. Las marcas de tiempo deben estar en formato RFC-3339, p.ej., "2025-01-01T00:00:00Z".

Puedes combinar expresiones con los operadores lógicos AND, OR y NOT (o -). OR tiene mayor prioridad que AND. Usa paréntesis para agrupar la prioridad explícita.

Ejemplos:

  • Filtra por Document.content_length_bytes: contentLengthBytes < 50000
  • dataSource = "docs.cloud.google.com" OR dataSource = "firebase.google.com"
  • dataSource != "firebase.google.com"
  • updateTime < "2024-01-01T00:00:00Z"
  • updateTime >= "2025-01-22T00:00:00Z" AND (dataSource = "developer.chrome.com" OR dataSource = "web.dev")
  • uri = "https://docs.cloud.google.com/release-notes"

La cadena filter no debe superar los 500 caracteres. Los valores que superen los 500 caracteres generarán un error INVALID_ARGUMENT.

Cuerpo de la respuesta

Mensaje de respuesta para DeveloperKnowledge.AnswerQuery.

Si se ejecuta correctamente, el cuerpo de la respuesta contiene datos con la siguiente estructura:

Representación JSON
{
  "answer": {
    object (Answer)
  }
}
Campos
answer

object (Answer)

Es la respuesta a la consulta.

Permisos de autorización

Se necesita uno de los siguientes permisos de OAuth:

  • https://www.googleapis.com/auth/devprofiles.full_control
  • https://www.googleapis.com/auth/developerprofiles.readonly
  • https://www.googleapis.com/auth/cloud-platform

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

Respuesta

Es una respuesta a una consulta.

Representación JSON
{
  "answerText": string,
  "citations": [
    {
      object (AnswerCitation)
    }
  ],
  "references": [
    {
      object (AnswerReference)
    }
  ]
}
Campos
answerText

string

Contiene el texto de la respuesta.

citations[]

object (AnswerCitation)

Solo salida. Contiene citas para la respuesta.

references[]

object (AnswerReference)

Solo salida. Contiene referencias para la respuesta.

AnswerCitation

Información de la cita para un segmento.

Representación JSON
{
  "startIndex": integer,
  "endIndex": integer,
  "sources": [
    {
      object (CitationSource)
    }
  ]
}
Campos
startIndex

integer

Solo salida. Indica el inicio del segmento, medido en bytes (Unicode UTF-8), incluido. Si hay caracteres multibyte, como caracteres que no son ASCII, la medición del índice es más larga que la longitud de la cadena.

endIndex

integer

Solo salida. Indica el final del segmento, medido en bytes (Unicode UTF-8), exclusivo. Si hay caracteres multibyte, como caracteres que no son ASCII, la medición del índice es más larga que la longitud de la cadena.

sources[]

object (CitationSource)

Solo salida. Contiene fuentes de citas para el segmento atribuido.

CitationSource

Fuente de la cita.

Representación JSON
{
  "referenceIndex": integer
}
Campos
referenceIndex

integer

Solo salida. Contiene el índice de Answer.AnswerReference en el campo repetido references.

AnswerReference

Representa una referencia a una fuente.

Representación JSON
{

  // Union field content can be only one of the following:
  "documentReference": {
    object (DocumentReference)
  }
  // End of list of possible types for union field content.
}
Campos
Campo de unión content. Contiene el contenido de la referencia. content puede ser solo uno de los parámetros siguientes:
documentReference

object (DocumentReference)

Solo salida. Es el documento de referencia.

DocumentReference

Representa una referencia a un documento.

Representación JSON
{
  "documentChunk": {
    object (DocumentChunk)
  }
}
Campos
documentChunk

object (DocumentChunk)

Solo salida. Contiene el fragmento del documento. El campo documentChunk.id no está configurado y estará vacío.