Поделиться через


Documents - Suggest Get

Предлагает документы в индексе, которые соответствуют заданному частичному тексту запроса.

GET {endpoint}/indexes('{indexName}')/docs/search.suggest?search={search}&suggesterName={suggesterName}&api-version=2023-11-01
GET {endpoint}/indexes('{indexName}')/docs/search.suggest?search={search}&suggesterName={suggesterName}&$filter={$filter}&fuzzy={fuzzy}&highlightPostTag={highlightPostTag}&highlightPreTag={highlightPreTag}&minimumCoverage={minimumCoverage}&$orderby={$orderby}&searchFields={searchFields}&$select={$select}&$top={$top}&api-version=2023-11-01

Параметры URI

Имя В Обязательно Тип Описание
endpoint
path True

string

URL-адрес конечной точки службы поиска.

indexName
path True

string

Имя индекса.

api-version
query True

string

Версия API клиента.

search
query True

string

Текст поиска, используемый для предложения документов. Минимальная длина — 1 символ, максимальная — 100 символов.

suggesterName
query True

string

Имя средства подбора, указанное в коллекции средств подбора, которая является частью определения индекса.

$filter
query

string

Выражение OData, которое фильтрует документы, рассматриваемые по предложениям.

$orderby
query

string[]

Список выражений OData $orderby, по которым сортируются результаты. Каждое выражение может быть именем поля или вызовом функций geo.distance() или search.score(). За каждым выражением может следовать asc для указания возрастания, или desc, чтобы обозначить по убыванию. По умолчанию результаты сортируются по возрастанию. При равенстве позиций порядок определяется по показателю совпадения документа. Если $orderby не указан, порядок сортировки по умолчанию убывания по оценке соответствия документа. Может быть не более 32 $orderby предложений.

$select
query

string[]

Список извлекаемых полей. Если значение не указано, в результаты будет включено только ключевое поле.

$top
query

integer

int32

Число предложений, которое необходимо получить. Значение должно быть числом от 1 до 100. Значение по умолчанию — 5.

fuzzy
query

boolean

Значение типа , указывающее, следует ли использовать нечеткое сопоставление для запроса предложений. Значение по умолчанию — false. Если задано значение true, запрос найдет термины, даже если в тексте поиска есть заменяющий или отсутствующий символ. Хотя в некоторых сценариях это обеспечивает лучшие возможности, это снижает производительность, так как запросы нечетких предложений выполняются медленнее и потребляют больше ресурсов.

highlightPostTag
query

string

Строковый тег, добавляемый к выделенному нажатию. Должно быть задано значение highlightPreTag. Если этот параметр опущен, выделение подсказок отключается.

highlightPreTag
query

string

Строковый тег, который добавляется к выделению нажатия. Должен быть задан с параметром highlightPostTag. Если этот параметр опущен, выделение подсказок отключается.

minimumCoverage
query

number

double

Число от 0 до 100, указывающее процент индекса, который должен быть охвачен запросом предложений, чтобы запрос сообщал об успешном выполнении. Этот параметр может быть полезен для обеспечения доступности поиска даже для служб с одним реплика. Значение по умолчанию — 80.

searchFields
query

string[]

Список имен полей для поиска указанного текста поиска. Целевые поля должны быть включены в указанный средство подбора.

Заголовок запроса

Имя Обязательно Тип Описание
x-ms-client-request-id

string

uuid

Идентификатор отслеживания, отправленный с запросом на помощь в отладке.

Ответы

Имя Тип Описание
200 OK

SuggestDocumentsResult

Ответ, содержащий предлагаемые документы, которые соответствуют частичным входным данным.

Other Status Codes

SearchError

Ответ об ошибке.

Примеры

SearchIndexSuggestDocumentsGet

Образец запроса

GET https://myservice.search.windows.net/indexes('myindex')/docs/search.suggest?search=hote&suggesterName=sg&$filter=rating gt 10&fuzzy=False&highlightPostTag=</em>&highlightPreTag=<em>&minimumCoverage=80&$orderby=search.score() desc,rating desc&searchFields=title&$select=docId,title,description&$top=10&api-version=2023-11-01

Пример ответа

{
  "value": [
    {
      "@search.text": "Nice <em>Hotel</em>",
      "description": "Cheapest hotel in town",
      "docId": "1",
      "title": "Nice Hotel"
    },
    {
      "@search.text": "Fancy <em>Hotel</em>",
      "description": "Best hotel in town",
      "docId": "2",
      "title": "Fancy Hotel"
    }
  ]
}

Определения

Имя Описание
SearchError

Описывает условие ошибки для API.

SuggestDocumentsResult

Ответ, содержащий результаты запроса предложения из индекса.

SuggestResult

Результат, содержащий документ, найденный запросом предложения, а также связанные метаданные.

SearchError

Описывает условие ошибки для API.

Имя Тип Описание
code

string

Один из определяемого сервером набора кодов ошибок.

details

SearchError[]

Массив сведений о конкретных ошибках, которые привели к этой сообщаемой ошибке.

message

string

Удобочитаемое представление ошибки.

SuggestDocumentsResult

Ответ, содержащий результаты запроса предложения из индекса.

Имя Тип Описание
@search.coverage

number

Значение , указывающее процент индекса, включенного в запрос, или значение NULL, если параметр minimumCoverage не был задан в запросе.

value

SuggestResult[]

Последовательность результатов, возвращаемых запросом.

SuggestResult

Результат, содержащий документ, найденный запросом предложения, а также связанные метаданные.

Имя Тип Описание
@search.text

string

Текст результата предложения.