Documents - Suggest Post

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

POST {endpoint}/indexes('{indexName}')/docs/search.post.suggest?api-version=2025-09-01

Параметры URI

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

string

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

indexName
path True

string

Имя индекса.

api-version
query True

string

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

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

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

string (uuid)

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

Текст запроса

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

string

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

suggesterName True

string

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

filter

string

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

fuzzy

boolean

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

highlightPostTag

string

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

highlightPreTag

string

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

minimumCoverage

number (double)

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

orderby

string

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

searchFields

string

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

select

string

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

top

integer (int32)

Количество предложений для извлечения. Это значение должно быть в диапазоне от 1 до 100. Значение по умолчанию равно 5.

Ответы

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

SuggestDocumentsResult

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

Other Status Codes

ErrorResponse

Ответ на ошибку.

Примеры

SearchIndexSuggestDocumentsPost

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

POST https://stableexampleservice.search.windows.net/indexes('stable-test')/docs/search.post.suggest?api-version=2025-09-01


{
  "filter": "ownerId eq 'sam' and id lt '15'",
  "fuzzy": true,
  "highlightPostTag": "</em>",
  "highlightPreTag": "<em>",
  "minimumCoverage": 80,
  "orderby": "id desc",
  "search": "p",
  "searchFields": "category",
  "select": "id,name,category,ownerId",
  "suggesterName": "sg",
  "top": 10
}

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

{
  "@search.coverage": 100,
  "value": [
    {
      "@search.text": "<em>pu</em>rple",
      "id": "14",
      "name": "test",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.text": "<em>pu</em>rple",
      "id": "13",
      "name": "test",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.text": "<em>pu</em>rple",
      "id": "11",
      "name": "test",
      "category": "purple",
      "ownerId": "sam"
    },
    {
      "@search.text": "<em>pu</em>rple",
      "id": "1",
      "name": "test",
      "category": "purple",
      "ownerId": "sam"
    }
  ]
}

Определения

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

Дополнительные сведения об ошибке управления ресурсами.

ErrorDetail

Сведения об ошибке.

ErrorResponse

Ответ на ошибку

SuggestDocumentsResult

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

SuggestRequest

Параметры для фильтрации, сортировки, нечеткого сопоставления и других вариантов поведения запросов.

SuggestResult

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

ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

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

object

Дополнительная информация.

type

string

Тип дополнительной информации.

ErrorDetail

Сведения об ошибке.

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

ErrorAdditionalInfo[]

Ошибка дополнительная информация.

code

string

Код ошибки.

details

ErrorDetail[]

Сведения об ошибке.

message

string

Сообщение об ошибке.

target

string

Цель ошибки.

ErrorResponse

Ответ на ошибку

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

ErrorDetail

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

SuggestDocumentsResult

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

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

number (double)

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

value

SuggestResult[]

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

SuggestRequest

Параметры для фильтрации, сортировки, нечеткого сопоставления и других вариантов поведения запросов.

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

string

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

fuzzy

boolean

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

highlightPostTag

string

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

highlightPreTag

string

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

minimumCoverage

number (double)

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

orderby

string

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

search

string

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

searchFields

string

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

select

string

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

suggesterName

string

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

top

integer (int32)

Количество предложений для извлечения. Это значение должно быть в диапазоне от 1 до 100. Значение по умолчанию равно 5.

SuggestResult

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

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

string

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