Documents - Suggest Post
Sugeruje dokumenty w indeksie, które są zgodne z podanym częściowym tekstem zapytania.
POST {endpoint}/indexes('{indexName}')/docs/search.post.suggest?api-version=2025-09-01
Parametry identyfikatora URI
| Nazwa | W | Wymagane | Typ | Opis |
|---|---|---|---|---|
|
endpoint
|
path | True |
string |
Adres URL punktu końcowego usługi wyszukiwania. |
|
index
|
path | True |
string |
Nazwa indeksu. |
|
api-version
|
query | True |
string |
Wersja interfejsu API klienta. |
Nagłówek żądania
| Nazwa | Wymagane | Typ | Opis |
|---|---|---|---|
| x-ms-client-request-id |
string (uuid) |
Identyfikator śledzenia wysłany z żądaniem, aby pomóc w debugowaniu. |
Treść żądania
| Nazwa | Wymagane | Typ | Opis |
|---|---|---|---|
| search | True |
string |
Tekst wyszukiwania, który ma być używany do sugerowania dokumentów. Musi mieć co najmniej 1 znak i nie więcej niż 100 znaków. |
| suggesterName | True |
string |
Nazwa sugestu określona w kolekcji sugestiów, która jest częścią definicji indeksu. |
| filter |
string |
Wyrażenie OData, które filtruje dokumenty uwzględniane pod kątem sugestii. |
|
| fuzzy |
boolean |
Wartość wskazująca, czy dla kwerendy sugestii ma być używane dopasowanie rozmyte. Wartość domyślna to „false”. Po ustawieniu wartości true zapytanie znajdzie sugestie, nawet jeśli w wyszukiwanym tekście znajduje się podstawiony lub brakujący znak. Chociaż zapewnia to lepsze środowisko w niektórych scenariuszach, wiąże się to z kosztem wydajności, ponieważ rozmyte wyszukiwania sugestii są wolniejsze i zużywają więcej zasobów. |
|
| highlightPostTag |
string |
Znacznik ciągu, który jest dołączany w celu przeznaczenia trafień. Musi być ustawiony za pomocą highlightPreTag. Jeśli ta opcja zostanie pominięta, podświetlanie sugestii w działaniu będzie wyłączone. |
|
| highlightPreTag |
string |
Znacznik ciągu, który jest poprzedzany w celu trafienia w podświetlenia. Musi być ustawiony za pomocą highlightPostTag. Jeśli ta opcja zostanie pominięta, podświetlanie sugestii w działaniu będzie wyłączone. |
|
| minimumCoverage |
number (double) |
Liczba z zakresu od 0 do 100 wskazująca procent indeksu, który musi zostać objęty kwerendą sugestii, aby kwerenda została zgłoszona jako powodzenie. Ten parametr może być przydatny do zapewnienia dostępności wyszukiwania nawet w przypadku usług z tylko jedną repliką. Wartość domyślna to 80. |
|
| orderby |
string |
Rozdzielona przecinkami lista wyrażeń OData $orderby, według których mają być sortowane wyniki. Każde wyrażenie może być nazwą pola lub wywołaniem funkcji geo.distance() lub search.score(). Po każdym wyrażeniu może następować asc, aby wskazać rosnąco, lub desc, aby wskazać malejąco. Wartość domyślna to kolejność rosnąca. Remisy zostaną rozstrzygnięte na podstawie wyników meczów w dokumentach. Jeśli nie zostanie określona żadna $orderby, domyślna kolejność sortowania jest malejąca według wyniku dopasowania dokumentu. Klauzule $orderby mogą składać się z maksymalnie 32. |
|
| searchFields |
string |
Rozdzielona przecinkami lista nazw pól służąca do wyszukiwania określonego tekstu wyszukiwania. Pola docelowe muszą być uwzględnione w określonej sugestii. |
|
| select |
string |
Rozdzielona przecinkami lista pól do pobrania. Jeśli nie zostanie określony, w wynikach zostanie uwzględnione tylko pole klucza. |
|
| top |
integer (int32) |
Liczba sugestii do pobrania. Musi to być wartość z zakresu od 1 do 100. Wartość domyślna to 5. |
Odpowiedzi
| Nazwa | Typ | Opis |
|---|---|---|
| 200 OK |
Odpowiedź zawierająca sugerowane dokumenty, które są zgodne z częściowymi danymi wejściowymi. |
|
| Other Status Codes |
Odpowiedź na błąd. |
Przykłady
SearchIndexSuggestDocumentsPost
Przykładowe żądanie
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
}
Przykładowa odpowiedź
{
"@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"
}
]
}
Definicje
| Nazwa | Opis |
|---|---|
|
Error |
Dodatkowe informacje o błędzie zarządzania zasobami. |
|
Error |
Szczegóły błędu. |
|
Error |
Odpowiedź na błąd |
|
Suggest |
Odpowiedź zawierająca wyniki zapytania sugestii z indeksu. |
|
Suggest |
Parametry filtrowania, sortowania, dopasowywania rozmytego i innych sugestii dotyczących zachowań zapytań. |
|
Suggest |
Wynik zawierający dokument znaleziony przez kwerendę sugestii oraz skojarzone metadane. |
ErrorAdditionalInfo
Dodatkowe informacje o błędzie zarządzania zasobami.
| Nazwa | Typ | Opis |
|---|---|---|
| info |
object |
Dodatkowe informacje. |
| type |
string |
Dodatkowy typ informacji. |
ErrorDetail
Szczegóły błędu.
| Nazwa | Typ | Opis |
|---|---|---|
| additionalInfo |
Dodatkowe informacje o błędzie. |
|
| code |
string |
Kod błędu. |
| details |
Szczegóły błędu. |
|
| message |
string |
Komunikat o błędzie. |
| target |
string |
Element docelowy błędu. |
ErrorResponse
Odpowiedź na błąd
| Nazwa | Typ | Opis |
|---|---|---|
| error |
Obiekt błędu. |
SuggestDocumentsResult
Odpowiedź zawierająca wyniki zapytania sugestii z indeksu.
| Nazwa | Typ | Opis |
|---|---|---|
| @search.coverage |
number (double) |
Wartość wskazująca procent indeksu, który został uwzględniony w zapytaniu, lub wartość null, jeśli minimumCoverage nie zostało ustawione w żądaniu. |
| value |
Sekwencja wyników zwracanych przez zapytanie. |
SuggestRequest
Parametry filtrowania, sortowania, dopasowywania rozmytego i innych sugestii dotyczących zachowań zapytań.
| Nazwa | Typ | Opis |
|---|---|---|
| filter |
string |
Wyrażenie OData, które filtruje dokumenty uwzględniane pod kątem sugestii. |
| fuzzy |
boolean |
Wartość wskazująca, czy dla kwerendy sugestii ma być używane dopasowanie rozmyte. Wartość domyślna to „false”. Po ustawieniu wartości true zapytanie znajdzie sugestie, nawet jeśli w wyszukiwanym tekście znajduje się podstawiony lub brakujący znak. Chociaż zapewnia to lepsze środowisko w niektórych scenariuszach, wiąże się to z kosztem wydajności, ponieważ rozmyte wyszukiwania sugestii są wolniejsze i zużywają więcej zasobów. |
| highlightPostTag |
string |
Znacznik ciągu, który jest dołączany w celu przeznaczenia trafień. Musi być ustawiony za pomocą highlightPreTag. Jeśli ta opcja zostanie pominięta, podświetlanie sugestii w działaniu będzie wyłączone. |
| highlightPreTag |
string |
Znacznik ciągu, który jest poprzedzany w celu trafienia w podświetlenia. Musi być ustawiony za pomocą highlightPostTag. Jeśli ta opcja zostanie pominięta, podświetlanie sugestii w działaniu będzie wyłączone. |
| minimumCoverage |
number (double) |
Liczba z zakresu od 0 do 100 wskazująca procent indeksu, który musi zostać objęty kwerendą sugestii, aby kwerenda została zgłoszona jako powodzenie. Ten parametr może być przydatny do zapewnienia dostępności wyszukiwania nawet w przypadku usług z tylko jedną repliką. Wartość domyślna to 80. |
| orderby |
string |
Rozdzielona przecinkami lista wyrażeń OData $orderby, według których mają być sortowane wyniki. Każde wyrażenie może być nazwą pola lub wywołaniem funkcji geo.distance() lub search.score(). Po każdym wyrażeniu może następować asc, aby wskazać rosnąco, lub desc, aby wskazać malejąco. Wartość domyślna to kolejność rosnąca. Remisy zostaną rozstrzygnięte na podstawie wyników meczów w dokumentach. Jeśli nie zostanie określona żadna $orderby, domyślna kolejność sortowania jest malejąca według wyniku dopasowania dokumentu. Klauzule $orderby mogą składać się z maksymalnie 32. |
| search |
string |
Tekst wyszukiwania, który ma być używany do sugerowania dokumentów. Musi mieć co najmniej 1 znak i nie więcej niż 100 znaków. |
| searchFields |
string |
Rozdzielona przecinkami lista nazw pól służąca do wyszukiwania określonego tekstu wyszukiwania. Pola docelowe muszą być uwzględnione w określonej sugestii. |
| select |
string |
Rozdzielona przecinkami lista pól do pobrania. Jeśli nie zostanie określony, w wynikach zostanie uwzględnione tylko pole klucza. |
| suggesterName |
string |
Nazwa sugestu określona w kolekcji sugestiów, która jest częścią definicji indeksu. |
| top |
integer (int32) |
Liczba sugestii do pobrania. Musi to być wartość z zakresu od 1 do 100. Wartość domyślna to 5. |
SuggestResult
Wynik zawierający dokument znaleziony przez kwerendę sugestii oraz skojarzone metadane.
| Nazwa | Typ | Opis |
|---|---|---|
| @search.text |
string |
Tekst wyniku sugestii. |