共用方式為


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 (double)

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

searchFields

string

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

top

integer (int32)

要擷取的自動完成字詞數目。 這必須是介於 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

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

oneTermWithContext

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

twoTerms

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

AutocompleteRequest

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

名稱 類型 Description
autocompleteMode

AutocompleteMode

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

filter

string

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

fuzzy

boolean

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

highlightPostTag

string

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

highlightPreTag

string

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

minimumCoverage

number (double)

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

search

string

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

searchFields

string

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

suggesterName

string

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

top

integer (int32)

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

AutocompleteResult

自動完成查詢的結果。

名稱 類型 Description
@search.coverage

number (double)

值,指出自動完成要求所考慮的索引百分比,如果要求中未指定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 物件。