共用方式為


Documents - Autocomplete Get

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

GET {endpoint}/indexes('{indexName}')/docs/search.autocomplete?api-version=2024-07-01&search={search}&suggesterName={suggesterName}
GET {endpoint}/indexes('{indexName}')/docs/search.autocomplete?api-version=2024-07-01&search={search}&suggesterName={suggesterName}&autocompleteMode={autocompleteMode}&$filter={$filter}&fuzzy={fuzzy}&highlightPostTag={highlightPostTag}&highlightPreTag={highlightPreTag}&minimumCoverage={minimumCoverage}&searchFields={searchFields}&$top={$top}

URI 參數

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

string

搜尋服務的端點 URL。

indexName
path True

string

索引的名稱。

api-version
query True

string

用戶端 API 版本。

search
query True

string

應該自動完成的不完整字詞。

suggesterName
query True

string

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

$filter
query

string

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

$top
query

integer

int32

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

autocompleteMode
query

AutocompleteMode

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

fuzzy
query

boolean

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

highlightPostTag
query

string

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

highlightPreTag
query

string

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

minimumCoverage
query

number

double

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

searchFields
query

string[]

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

要求標頭

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

string

uuid

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

回應

名稱 類型 Description
200 OK

AutocompleteResult

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

Other Status Codes

ErrorResponse

錯誤回應。

範例

SearchIndexAutocompleteDocumentsGet

範例要求

GET https://myservice.search.windows.net/indexes('myindex')/docs/search.autocomplete?api-version=2024-07-01&search=washington medic&suggesterName=sg&autocompleteMode=oneTerm&fuzzy=False&highlightPostTag=</em>&highlightPreTag=<em>&minimumCoverage=80&searchFields=title,description

範例回覆

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

定義

名稱 Description
AutocompleteItem

自動完成要求的結果。

AutocompleteMode

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

AutocompleteResult

自動完成查詢的結果。

ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

AutocompleteItem

自動完成要求的結果。

名稱 類型 Description
queryPlusText

string

查詢以及已完成的字詞。

text

string

已完成的字詞。

AutocompleteMode

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

名稱 類型 Description
oneTerm

string

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

oneTermWithContext

string

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

twoTerms

string

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

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 物件。