Method: projects.locations.queryData

Consulta dados de uma consulta do usuário em linguagem natural.

Solicitação HTTP


POST https://geminidataanalytics.googleapis.com/v1beta/{parent=projects/*/locations/*}:queryData

Os URLs usam a sintaxe de Transcodificação gRPC.

Parâmetros de caminho

Parâmetros
parent

string

Obrigatório. O recurso pai para gerar a consulta. Formato: projects/{project}/locations/{location}

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

Representação JSON
{
  "prompt": string,
  "context": {
    object (QueryDataContext)
  },
  "generationOptions": {
    object (GenerationOptions)
  }
}
Campos
prompt

string

Obrigatório. A consulta em linguagem natural para gerar a consulta. Exemplo: "Quais são os cinco produtos mais vendidos neste mês?"

context

object (QueryDataContext)

Obrigatório. O contexto da consulta de dados, incluindo as fontes de dados a serem usadas.

generationOptions

object (GenerationOptions)

Opcional. Opções para controlar a geração de consultas e o comportamento de execução.

Corpo da resposta

Resposta contendo a consulta gerada e informações relacionadas.

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

Representação JSON
{
  "generatedQuery": string,
  "intentExplanation": string,
  "queryResult": {
    object (ExecutedQueryResult)
  },
  "naturalLanguageAnswer": string,
  "disambiguationQuestion": [
    string
  ]
}
Campos
generatedQuery

string

Consulta gerada para o comando do usuário.

intentExplanation

string

Uma explicação em linguagem natural da consulta gerada. Preenchido se "options.generate_explanation" for verdadeiro na solicitação.

queryResult

object (ExecutedQueryResult)

O resultado da execução da consulta. Preenchido se "options.generate_query_result" ou "options.generate_natural_language_answer" for verdadeiro na solicitação e a execução tiver sido concluída ou tentada.

naturalLanguageAnswer

string

Uma resposta em linguagem natural para a consulta, com base no queryResult. Preenchido se "options.generate_natural_language_answer" for verdadeiro na solicitação e a execução da consulta for bem-sucedida com base na resposta da API executeSql.

disambiguationQuestion[]

string

Se uma ambiguidade foi detectada na consulta em linguagem natural e options.generate_disambiguation_question era verdadeiro, esse campo contém uma pergunta ao usuário para esclarecimento. O valor retornado representa o melhor esforço do serviço com base na entrada ambígua.

Escopos de autorização

Requer o seguinte escopo OAuth:

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

Para mais informações, consulte Authentication Overview.

QueryDataContext

Referências a fontes de dados e contexto a serem usados na consulta.

Representação JSON
{
  "datasourceReferences": {
    object (DatasourceReferences)
  }
}
Campos
datasourceReferences

object (DatasourceReferences)

Obrigatório. As referências de fonte de dados a serem usadas na consulta.

GenerationOptions

Opções para controlar a geração, a execução e o formato de resposta da consulta.

Representação JSON
{
  "generateQueryResult": boolean,
  "generateNaturalLanguageAnswer": boolean,
  "generateExplanation": boolean,
  "generateDisambiguationQuestion": boolean
}
Campos
generateQueryResult

boolean

Opcional. Se for "true", a consulta gerada será executada, e os dados de resultado serão retornados na resposta.

generateNaturalLanguageAnswer

boolean

Opcional. Se for "true", uma resposta em linguagem natural com base no resultado da execução da consulta será gerada e retornada na resposta.

generateExplanation

boolean

Opcional. Se for "true", uma explicação da consulta gerada será retornada na resposta.

generateDisambiguationQuestion

boolean

Opcional. Se for verdadeiro (o padrão é falso), o serviço poderá retornar uma clarifying_question se a consulta de entrada for ambígua.

ExecutedQueryResult

O resultado da execução de uma consulta. O design é genérico para todos os dialetos.

Representação JSON
{
  "columns": [
    {
      object (Column)
    }
  ],
  "rows": [
    {
      object (Row)
    }
  ],
  "totalRowCount": string,
  "partialResult": boolean,
  "queryExecutionError": string
}
Campos
columns[]

object (Column)

As colunas no conjunto de resultados, em ordem.

rows[]

object (Row)

As linhas retornadas pela consulta.

totalRowCount

string (int64 format)

O número total de linhas no conjunto de resultados completo, se conhecido. Pode ser uma estimativa ou uma contagem exata.

partialResult

boolean

Definido como "true" se as linhas retornadas em queryResult forem um subconjunto do resultado completo. Isso pode acontecer, por exemplo, se a execução da consulta atingir um limite de linhas. Quando verdadeiro, o queryResult não contém todas as linhas. Para recuperar o resultado completo, use o generatedQuery em QueryDataResponse e execute-o no seu próprio ambiente.

queryExecutionError

string

A mensagem de erro se a execução da consulta falhar.

Coluna

Descreve uma única coluna no conjunto de resultados.

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

string

O nome da coluna.

type

string

O tipo da coluna (por exemplo, "VARCHAR", "INT64", "TIMESTAMP").

Linha

Representa uma única linha no conjunto de resultados.

Representação JSON
{
  "values": [
    {
      object (Value)
    }
  ]
}
Campos
values[]

object (Value)

Os valores na linha, correspondendo posicionalmente às colunas.

Valor

Representa um único valor em uma linha.

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

string

O valor da célula, representado em formato de string. Os carimbos de data/hora podem ser formatados, por exemplo, usando RFC3339Nano. Esse campo é usado se o valor não for nulo.