分享方式:


快速入門:在 Azure 入口網站中建立搜尋索引

在本 Azure AI 搜尋服務快速入門中,使用匯入資料精靈,以及由 Microsoft 所裝載虛構飯店資料的內建範例資料來源,建立您的第一個「搜尋索引」。 此精靈會引導您完成無程式碼的搜尋索引建立,以協助您在幾分鐘內寫出有趣的查詢。

此精靈會在您的搜尋服務上建立多個物件 - 可搜尋的索引 - 但也會建立索引子和資料來源,進行自動資料擷取。 在本快速入門結束時,我們會檢閱每個物件。

注意

[匯入資料] 精靈包含本快速入門未涵蓋的 OCR、文字翻譯和其他 AI 擴充選項。 如需著重於所套用 AI 的類似逐步解說,請參閱快速入門:在 Azure 入口網站中建立技能 (英文)。

必要條件

在本快速入門中,由於使用內建的範例資料,請確定搜尋服務沒有網路存取控制。 入口網站控制器會使用公用端點,從 Microsoft 所裝載的內建範例資料來源擷取資料和中繼資料。 如需詳細資訊,請參閱在匯入精靈中保護連線

檢查空間

許多客戶開始使用此免費服務。 免費層的限制為三個索引、三個資料來源,以及三個索引子。 開始之前,請先確定您有空間可容納額外的項目。 本快速入門會建立各一個物件。

檢查服務的 [概觀]>[使用量] 索引標籤,以查看您已有多少個索引、索引子和資料來源。

Azure 入口網站中 Azure AI 搜尋服務執行個體 [概觀] 頁面的螢幕擷取畫面,其中顯示索引、索引子和資料來源的數目。

啟動精靈

  1. 使用您的 Azure 帳戶登入 Azure 入口網站,然後移至您的 Azure AI 搜尋服務。

  2. 在 [概觀] 頁面上,選取 [匯入資料] 以啟動精靈。

    顯示如何在 Azure 入口網站中開啟匯入資料精靈的螢幕擷取畫面。

建立並載入索引

在本節中,以四個步驟建立並載入索引。

連線到資料來源

精靈會建立資料來源連線,以連線至 Microsoft 在 Azure Cosmos DB 上裝載的範例資料。 此範例資料會透過公用端點來擷取。 您不需要自己的 Azure Cosmos DB 帳戶或來源檔案,即可執行本快速入門。

  1. 在 [連線至您的資料] 上,展開 [資料來源] 下拉式清單,然後選取 [範例]

  2. 在內建範例清單中,選取 [飯店範例]

    顯示如何在匯入資料精靈中選取 hotels-sample 資料來源的螢幕擷取畫面。

  3. 選取 [下一步: 新增認知技能 (選用)] 以繼續。

略過認知技能的設定

[匯入資料] 精靈支援在編製索引時建立技能集和 AI 擴充

  1. 針對本快速入門,請忽略 [新增認知技能] 索引標籤上的 AI 擴充設定選項。

  2. 選取 [跳至: 自訂目標索引] 以繼續。

    顯示如何跳至匯入資料精靈中 [自訂目標索引] 索引標籤的螢幕擷取畫面。

提示

對 AI 擴充有興趣嗎? 請嘗試此快速入門:在 Azure 入口網站中建立技能集

設定索引

精靈會推斷內建飯店範例索引的結構描述。 請遵循下列步驟來設定索引:

  1. 接受 [索引名稱] (hotels-sample-index) 和 [索引鍵] 欄位 (HotelId) 的系統產生值。

  2. 接受所有欄位屬性的系統產生值。

  3. 選取 [下一步: 建立索引子] 以繼續。

此螢幕擷取畫面顯示在匯入資料精靈中為 hotel-sample 資料來源產生的索引定義。

索引至少需要 [索引名稱] 和 [欄位] 的集合。 必須將一個欄位標示為「文件索引鍵」,以專門識別每份文件。 值一律為字串。 精靈會掃描唯一的字串欄位,並為索引鍵選擇一個欄位。

每個欄位都有名稱、資料類型,以及控制如何在搜尋索引中使用欄位的「屬性」。 核取方塊會啟用或停用下列屬性:

  • 可擷取:查詢回應中傳回的欄位。
  • 可篩選:接受篩選條件運算式的欄位。
  • 可排序:接受 orderby 運算式的欄位。
  • 可 Facet:多面向導覽結構中使用的欄位。
  • 可搜尋:在全文檢索搜尋中使用的欄位。 字串可以搜尋。 數字欄位和布林值欄位通常會標示為不可搜尋。

字串的屬性為 [可擷取] 和 [可搜尋]。 整數的屬性為 [可擷取]、[可篩選]、[可排序] 和 [可 Facet]

屬性會影響儲存體。 [可篩選] 欄位會耗用額外的儲存體,但 [可擷取] 則不會。 如需詳細資訊,請參閱示範屬性和建議工具對儲存體影響的範例

如果您想要自動完成或建議的查詢,請指定語言分析器建議工具

設定和執行索引子

最後一個步驟會設定和執行索引子。 此物件定義可執行的程序。 在這個步驟中會建立資料來源、索引和索引子。

  1. 接受 [索引子名稱] (hotels-sample-index) 的系統產生值。

  2. 針對本快速入門,請使用預設選項立即執行索引子一次。 裝載的資料是靜態的,因此不會為其啟用任何變更追蹤。

  3. 選取 [提交] 以建立並同時執行索引子。

    此螢幕擷取畫面顯示如何在匯入資料精靈中設定 hotels-sample 資料來源的索引子。

監視索引子進度

您可以在入口網站中監視索引子或索引的建立。 服務 [概觀] 頁面會提供連結,以連結至 Azure AI 搜尋服務中建立的資源。

  1. 選取左邊的 [索引子]

    顯示 Azure 入口網站中正在建立索引子的螢幕擷取畫面。

    可能需要幾分鐘的時間,才能在 Azure 入口網站中更新頁面結果。 您應該會在清單中看到新建立的索引子,其狀態為 [進行中] 或 [成功]。 此清單也會顯示已編製索引的文件數目。

檢查搜尋索引結果

  1. 選取左邊的 [索引]

  2. 選取 hotels-sample-index

    等待 Azure 入口網站頁面重新整理。 您應該會看到具有文件計數和儲存體大小的索引。

    此螢幕擷取畫面顯示 Azure 入口網站中 Azure AI 搜尋服務儀表板上的索引清單。

  3. 選取 [欄位] 索引標籤來檢視索引結構描述。

    檢查哪些欄位是 [可篩選] 或 [可排序],以便您知道要撰寫的查詢。

    此螢幕擷取畫面顯示 Azure 入口網站中 Azure AI 搜尋服務中索引的結構描述定義。

新增或變更欄位

在 [欄位] 索引標籤上,您可以使用 [新增欄位],搭配名稱、支援的資料類型和屬性來建立新的欄位。

變更現有欄位比較困難。 現有欄位在索引中具有實體表示法,因此無法修改這些欄位,甚至是在程式碼中也無法修改。 若要從根本上變更現有的欄位,您需要建立取代原始欄位的新欄位。 其他建構 (例如評分設定檔和 CORS 選項) 可以隨時新增至索引。

若要清楚地了解您在索引設計期間可以編輯和無法編輯的項目,請花點時間檢視索引定義選項。 欄位清單中呈現灰色的選項表示無法修改或刪除的值。

使用搜尋總管進行查詢

您現在具有可使用搜尋總管查詢的搜尋索引。 [搜尋總管] 會傳送符合搜尋 POST REST API 的 REST 呼叫。 此工具支援簡易查詢語法完整 Lucene 查詢語法

  1. 在 [搜尋總管] 索引標籤上,輸入要搜尋的文字。

    顯示如何在搜尋總管工具中輸入和執行查詢的螢幕擷取畫面。

  2. 使用縮圖快速跳至看不見的輸出區域。

    此螢幕擷取畫面顯示搜尋總管工具和迷你地圖中查詢的長結果。

  3. 若要指定語法,請切換至 JSON 檢視。

    螢幕擷取畫面,其中顯示 JSON 檢視選取器。

飯店範例索引的範例查詢

下列範例假定 JSON 檢視和 2024-05-01-preview REST API 版本。

提示

JSON 檢視現在針對參數名稱完成支援 Intellisense。 將游標放在 JSON 檢視內,並輸入空格字元以顯示所有查詢參數的清單,或輸入單一字母 (例如 "s"),以只顯示開頭為 "s" 的查詢參數。 Intellisense 不會排除無效的參數,因此請自行判斷。

篩選範例

停車、標籤、裝修日期、評等和位置是可篩選的。

{
    "search": "beach OR spa",
    "select": "HotelId, HotelName, Description, Rating",
    "count": true,
    "top": 10,
    "filter": "Rating gt 4"
}

布林篩選條件預設會假定 "true"。

{
    "search": "beach OR spa",
    "select": "HotelId, HotelName, Description, Rating",
    "count": true,
    "top": 10,
    "filter": "ParkingIncluded"
}

地理空間搜尋是以篩選條件為基礎。 geo.distance 函式會根據指定的 Locationgeography'POINT 座標,篩選位置資料的所有結果。 查詢會搜尋位於經緯度座標 -122.12 47.67 5 公里以內的飯店,也就是 "Redmond, Washington, USA"。此查詢會顯示相符項目總數 &$count=true,以及飯店名稱和地址。

{
    "search": "*",
    "select": "HotelName, Address/City, Address/StateProvince",
    "count": true,
    "top": 10,
    "filter": "geo.distance(Location, geography'POINT(-122.12 47.67)') le 5"
}

完整 Lucene 語法範例

預設語法是簡易語法,但如果您想要模糊搜尋或字詞提升或規則運算式,請指定完整語法

{
    "queryType": "full",
    "search": "seatle~",
    "select": "HotelId, HotelName,Address/City, Address/StateProvince",
    "count": true
}

根據預設,拼錯的查詢字詞 (例如將 seatle 誤拼為 Seattle) 無法在一般搜尋中傳回相符項目。 queryType=full 參數會叫用完整 Lucene 查詢剖析器,其支援 ~ 運算元。 當這些參數存在時,查詢會針對指定的關鍵詞執行模糊搜尋。 查詢會搜尋相符結果,以及類似於關鍵詞但與其不完全相符的結果。

請花一分鐘的時間,為您的索引嘗試其中一些範例查詢。 若要深入了解查詢,請參閱在 Azure AI 搜尋服務中查詢

清除資源

當您以自己的訂用帳戶運作時,最好在專案結束時確定您是否仍需要您建立的資源。 資源若繼續執行,將需付費。 您可以個別刪除資源,或刪除資源群組以刪除整組資源。

在 Azure 入口網站中,您可以在左側窗格的 [所有資源] 或 [資源群組] 底下為您的服務尋找和管理資源。

如果您使用免費服務,請記住限制為三個索引、索引子和資料來源。 您可以在 Azure 入口網站中刪除個別項目,以避免超出限制。

下一步

試用 Azure 入口網站,以產生可在瀏覽器中執行的立即可用 Web 應用程式。 請在您已於本快速入門中建立的小型索引上使用此精靈,或使用其中一個內建的資料集範例,來獲得更豐富的搜尋體驗。