Method: corpora.documents.query

Выполняет семантический поиск по Document .

HTTP-запрос

POST https://generativelanguage.googleapis.com/v1beta/{name=corpora/*/documents/*}:query

URL-адрес использует синтаксис транскодирования gRPC .

Параметры пути

Параметры
name

string

Необходимый. Имя Document для запроса. Пример: corpora/my-corpus-123/documents/the-doc-abc

Тело запроса

Тело запроса содержит данные следующей структуры:

JSON-представление
{
  "query": string,
  "resultsCount": integer,
  "metadataFilters": [
    {
      object (MetadataFilter)
    }
  ]
}
Поля
query

string

Необходимый. Строка запроса для выполнения семантического поиска.

resultsCount

integer

Необязательный. Максимальное количество возвращаемых Chunk . Служба может возвращать меньшее количество Chunk .

Если не указано, будет возвращено не более 10 Chunk . Максимальное указанное количество результатов — 100.

metadataFilters[]

object ( MetadataFilter )

Необязательный. Фильтровать метаданные Chunk . Каждый объект MetadataFilter должен соответствовать уникальному ключу. Несколько объектов MetadataFilter соединяются логическими операторами «И».

Примечание. Фильтрация на уровне Document для этого запроса не поддерживается, поскольку имя Document уже указано.

Пример запроса: (год >= 2020 ИЛИ год < 2010) И (жанр = драма ИЛИ жанр = боевик)

Список объектов MetadataFilter : MetadataFilters = [ {key = "chunk.custom_metadata.year" условия = [{int_value = 2020, Operation = GREATER_EQUAL}, {int_value = 2010, Operation = LESS}}, {key = "chunk.custom_metadata.genre" " условия = [{stringValue = "драма", операция = EQUAL}, {stringValue = "действие", операция = EQUAL}}]

Пример запроса для числового диапазона значений: (год > 2015 И год <= 2020)

Список объектов MetadataFilter : MetadataFilters = [ {key = "chunk.custom_metadata.year" условия = [{int_value = 2015, Operation = GREATER}]}, {key = "chunk.custom_metadata.year" условия = [{int_value = 2020, операция = LESS_EQUAL}]}]

Примечание. Операторы «И» для одного и того же ключа поддерживаются только для числовых значений. Строковые значения поддерживают только операторы «ИЛИ» для одного и того же ключа.

Тело ответа

Ответ от documents.query , содержащий список соответствующих фрагментов.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "relevantChunks": [
    {
      object (RelevantChunk)
    }
  ]
}
Поля
relevantChunks[]

object ( RelevantChunk )

Возвращенные соответствующие фрагменты.

Области авторизации

Требуется одна из следующих областей OAuth:

  • https://www.googleapis.com/auth/generative-language.retriever
  • https://www.googleapis.com/auth/generative-language.retriever.readonly

Для получения дополнительной информации см. Обзор аутентификации .