Documents - Autocomplete Post

根據索引中的輸入文字和比對字詞,自動完成不完整的查詢字詞。

POST {endpoint}/indexes('{indexName}')/docs/search.post.autocomplete?api-version=2024-07-01

URI 參數

名稱 位於 必要 類型 Description
endpoint
path True

string

搜尋服務的端點 URL。

indexName
path True

string

索引的名稱。

api-version
query True

string

用戶端 API 版本。

要求標頭

名稱 必要 類型 Description
x-ms-client-request-id

string

uuid

隨要求一起傳送的追蹤標識碼,以協助偵錯。

要求本文

名稱 必要 類型 Description
search True

string

要建立自動完成結果基礎的搜尋文字。

suggesterName True

string

建議工具的名稱,如建議工具集合中所指定,屬於索引定義的一部分。

autocompleteMode

AutocompleteMode

指定自動完成的模式。 預設值為 『oneTerm』。 使用 'twoTerms' 取得 shingles 和 'oneTermWithContext',以在產生自動完成的字詞時使用目前的內容。

filter

string

OData 表達式,篩選用來為自動完成結果產生已完成字詞的檔。

fuzzy

boolean

值,指出是否要使用自動完成查詢的模糊比對。 默認值為 false。 當設定為 true 時,即使搜尋文字中有替代字元或遺漏字元,查詢也會自動完成字詞。 雖然這在某些案例中提供較佳的體驗,但效能成本會因為模糊自動完成查詢速度較慢且耗用更多資源。

highlightPostTag

string

附加至叫用醒目提示的字串標記。 必須使用 highlightPreTag 進行設定。 如果省略,叫用醒目提示會停用。

highlightPreTag

string

在叫用醒目提示前面加上的字串標記。 必須使用 highlightPostTag 進行設定。 如果省略,叫用醒目提示會停用。

minimumCoverage

number

介於 0 到 100 之間的數位,表示自動完成查詢必須涵蓋的索引百分比,以便將查詢回報為成功。 此參數對於確保搜尋可用性,即使是只有一個複本的服務,也很有用。 預設值為80。

searchFields

string

查詢自動完成字詞時要考慮的功能變數名稱逗號分隔清單。 目標欄位必須包含在指定的建議工具中。

top

integer

要擷取的自動完成字詞數目。 這必須是介於 1 到 100 之間的值。 預設值為 5。

回應

名稱 類型 Description
200 OK

AutocompleteResult

包含完成部分輸入的建議查詢字詞的回應。

Other Status Codes

ErrorResponse

錯誤回應。

範例

SearchIndexAutocompleteDocumentsPost

範例要求

POST https://myservice.search.windows.net/indexes('myindex')/docs/search.post.autocomplete?api-version=2024-07-01

{
  "autocompleteMode": "oneTerm",
  "search": "washington medic",
  "suggesterName": "sg",
  "filter": "search.in(docId,'101,102,105')",
  "highlightPostTag": "</em>",
  "highlightPreTag": "<em>",
  "minimumCoverage": 80,
  "searchFields": "title,description",
  "top": 10
}

範例回覆

[
  {
    "text": "medicaid",
    "queryPlusText": "washington medicaid"
  },
  {
    "text": "medicare",
    "queryPlusText": "washington medicare"
  },
  {
    "text": "medicine",
    "queryPlusText": "washington medicine"
  }
]

定義

名稱 Description
AutocompleteItem

自動完成要求的結果。

AutocompleteMode

指定自動完成的模式。 預設值為 『oneTerm』。 使用 'twoTerms' 取得 shingles 和 'oneTermWithContext',以在產生自動完成字詞時使用目前的內容。

AutocompleteRequest

模糊比對和其他自動完成查詢行為的參數。

AutocompleteResult

自動完成查詢的結果。

ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

AutocompleteItem

自動完成要求的結果。

名稱 類型 Description
queryPlusText

string

查詢以及已完成的字詞。

text

string

已完成的字詞。

AutocompleteMode

指定自動完成的模式。 預設值為 『oneTerm』。 使用 'twoTerms' 取得 shingles 和 'oneTermWithContext',以在產生自動完成字詞時使用目前的內容。

名稱 類型 Description
oneTerm

string

建議只使用一個字詞。 如果查詢有兩個字詞,則只會完成最後一個字詞。 例如,如果輸入是「華盛頓醫生」,建議的詞彙可能包括「醫療補助」、「醫療保險」和「醫學」。

oneTermWithContext

string

使用兩個或多個字詞完成查詢中的最後一個字詞,其中最後兩個詞彙是索引中存在的片語。 例如,如果輸入是「華盛頓醫生」,建議的詞彙可能包括「華盛頓醫療補助」和「華盛頓醫療」。

twoTerms

string

將會建議在索引中比對兩個字詞的片語。 例如,如果輸入為「醫療」,建議的字詞可能包括「醫療保險」和「醫療助理」。

AutocompleteRequest

模糊比對和其他自動完成查詢行為的參數。

名稱 類型 Description
autocompleteMode

AutocompleteMode

指定自動完成的模式。 預設值為 『oneTerm』。 使用 'twoTerms' 取得 shingles 和 'oneTermWithContext',以在產生自動完成的字詞時使用目前的內容。

filter

string

OData 表達式,篩選用來為自動完成結果產生已完成字詞的檔。

fuzzy

boolean

值,指出是否要使用自動完成查詢的模糊比對。 默認值為 false。 當設定為 true 時,即使搜尋文字中有替代字元或遺漏字元,查詢也會自動完成字詞。 雖然這在某些案例中提供較佳的體驗,但效能成本會因為模糊自動完成查詢速度較慢且耗用更多資源。

highlightPostTag

string

附加至叫用醒目提示的字串標記。 必須使用 highlightPreTag 進行設定。 如果省略,叫用醒目提示會停用。

highlightPreTag

string

在叫用醒目提示前面加上的字串標記。 必須使用 highlightPostTag 進行設定。 如果省略,叫用醒目提示會停用。

minimumCoverage

number

介於 0 到 100 之間的數位,表示自動完成查詢必須涵蓋的索引百分比,以便將查詢回報為成功。 此參數對於確保搜尋可用性,即使是只有一個複本的服務,也很有用。 預設值為80。

search

string

要建立自動完成結果基礎的搜尋文字。

searchFields

string

查詢自動完成字詞時要考慮的功能變數名稱逗號分隔清單。 目標欄位必須包含在指定的建議工具中。

suggesterName

string

建議工具的名稱,如建議工具集合中所指定,屬於索引定義的一部分。

top

integer

要擷取的自動完成字詞數目。 這必須是介於 1 到 100 之間的值。 預設值為 5。

AutocompleteResult

自動完成查詢的結果。

名稱 類型 Description
@search.coverage

number

值,指出自動完成要求所考慮的索引百分比,如果要求中未指定minimumCoverage,則為 null。

value

AutocompleteItem[]

傳回的自動完成項目清單。

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細數據。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

error 物件。