Method: projects.locations.queryData

自然言語のユーザー クエリからデータをクエリします。

HTTP リクエスト


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

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
parent

string

必須。クエリを生成する親リソース。形式: projects/{project}/locations/{location}

リクエストの本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "prompt": string,
  "context": {
    object (QueryDataContext)
  },
  "generationOptions": {
    object (GenerationOptions)
  }
}
フィールド
prompt

string

必須。クエリを生成する自然言語クエリ。例: 「今月最も売れている商品の上位 5 つは何ですか?」

context

object (QueryDataContext)

必須。使用するデータソースなど、データクエリのコンテキスト。

generationOptions

object (GenerationOptions)

省略可。クエリの生成と実行の動作を制御するオプション。

レスポンスの本文

生成されたクエリと関連情報を含むレスポンス。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

JSON 表現
{
  "generatedQuery": string,
  "intentExplanation": string,
  "queryResult": {
    object (ExecutedQueryResult)
  },
  "naturalLanguageAnswer": string,
  "disambiguationQuestion": [
    string
  ]
}
フィールド
generatedQuery

string

指定されたユーザー プロンプトに対して生成されたクエリ。

intentExplanation

string

生成されたクエリの自然言語による説明。リクエストで options.generate_explanation が true の場合に設定されます。

queryResult

object (ExecutedQueryResult)

クエリの実行結果。リクエストで options.generate_query_result または options.generate_natural_language_answer が true で、実行が成功したか試行された場合に設定されます。

naturalLanguageAnswer

string

queryResult に基づく、クエリに対する自然言語の回答。リクエストで options.generate_natural_language_answer が true で、executeSql API からのレスポンスに基づいてクエリの実行が成功した場合に設定されます。

disambiguationQuestion[]

string

自然言語クエリとオプションで曖昧さが検出され、options.generate_disambiguation_question が true の場合、このフィールドにはユーザーに明確化を求める質問が含まれます。返される値は、曖昧な入力に基づいてサービスが最善を尽くした結果を表します。

認可スコープ

次の OAuth スコープが必要です。

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

詳細については、Authentication Overview をご覧ください。

QueryDataContext

クエリに使用するデータソースとコンテキストへの参照。

JSON 表現
{
  "datasourceReferences": {
    object (DatasourceReferences)
  }
}
フィールド
datasourceReferences

object (DatasourceReferences)

必須。クエリに使用するデータソース参照。

GenerationOptions

クエリの生成、実行、レスポンス形式を制御するオプション。

JSON 表現
{
  "generateQueryResult": boolean,
  "generateNaturalLanguageAnswer": boolean,
  "generateExplanation": boolean,
  "generateDisambiguationQuestion": boolean
}
フィールド
generateQueryResult

boolean

省略可。true の場合、生成されたクエリが実行され、結果データがレスポンスで返されます。

generateNaturalLanguageAnswer

boolean

省略可。true の場合、クエリ実行結果に基づく自然言語の回答が生成され、レスポンスで返されます。

generateExplanation

boolean

省略可。true の場合、生成されたクエリの説明がレスポンスで返されます。

generateDisambiguationQuestion

boolean

省略可。true の場合(デフォルトは false)、入力クエリがあいまいな場合、サービスは clarifying_question を返すことがあります。

ExecutedQueryResult

クエリ実行の結果。この設計はすべての言語に共通です。

JSON 表現
{
  "columns": [
    {
      object (Column)
    }
  ],
  "rows": [
    {
      object (Row)
    }
  ],
  "totalRowCount": string,
  "partialResult": boolean,
  "queryExecutionError": string
}
フィールド
columns[]

object (Column)

結果セットの列(順序付き)。

rows[]

object (Row)

クエリによって返された行。

totalRowCount

string (int64 format)

完全な結果セットの行の合計数(わかっている場合)。これは、推定値または正確なカウントである場合があります。

partialResult

boolean

queryResult で返された行が完全な結果のサブセットである場合は、true に設定します。これは、たとえば、クエリの実行が行の上限に達した場合に発生する可能性があります。true の場合、queryResult にすべての行が含まれていません。完全な結果を取得するには、QueryDataResponsegeneratedQuery を使用して、独自の環境で実行することを検討してください。

queryExecutionError

string

クエリの実行が失敗した場合のエラー メッセージ。

結果セット内の単一の列を記述します。

JSON 表現
{
  "name": string,
  "type": string
}
フィールド
name

string

列の名前。

type

string

列の型(例: "VARCHAR", "INT64", "TIMESTAMP")。

結果セット内の単一行を表します。

JSON 表現
{
  "values": [
    {
      object (Value)
    }
  ]
}
フィールド
values[]

object (Value)

行の値。列と位置的に対応しています。

行内の単一の値を表します。

JSON 表現
{
  "value": string
}
フィールド
value

string

文字列形式で表されるセル値。タイムスタンプは、たとえば RFC3339Nano を使用してフォーマットできます。このフィールドは、値が null でない場合に使用されます。