Azure 認知搜尋中的 AI 擴充

AI 擴充 是機器學習模型在其原始格式無法搜尋的內容上套用。 透過擴充、分析和推斷,可用來建立先前不存在的可搜尋內容和結構。

因為Azure 認知搜尋是全文檢索搜尋解決方案,所以 AI 擴充的目的是要改善搜尋相關案例中內容的公用程式:

  • 多語系搜尋的翻譯和語言偵測
  • 實體辨識會從大量文字區塊擷取人員、地點和其他實體
  • 關鍵字組擷取會識別並輸出重要詞彙
  • 光學字元辨識 (OCR) 辨識二進位檔案中的印刷和手寫文字
  • 影像分析描述影像內容,並將描述輸出為可搜尋的文字欄位

AI 擴充是 索引子管線的延伸。 擴充管線具有索引子管線的所有元件 (索引子、資料來源、索引) ,以及指定不可部分完成擴充步驟 的技能集

下圖顯示 AI 擴充的進度:

擴充管線的圖表。

入是第一個步驟。 在這裡,索引子會連線到資料來源,並將檔 () 提取至搜尋服務。 Azure Blob 儲存體是 AI 擴充案例中最常使用的資源,但任何支援的資料來源都可以提供內容。

豐富 & 索引 涵蓋大部分的 AI 擴充管線:

  • 擴充會在索引子 「破解檔」 並擷取影像和文字時啟動。 接下來發生的處理類型將取決於您的資料,以及您已新增至技能集的技能。 如果您有影像,則可以將它們轉送到執行影像處理的技能。 文字內容會排入佇列以用於文字和自然語言處理。 在內部,技能會建立 「擴充的檔」 ,以在轉換發生時收集轉換。

  • 擴充的內容會在技能集執行期間產生,除非您儲存它,否則為暫時內容。 您可以啟用 擴充快取 來保存破解的檔和技能輸出,以便在未來的技能集執行期間進行後續重複使用。

  • 若要將內容放入搜尋索引中,索引子必須有對應資訊,才能將擴充的內容傳送至目標欄位。 欄位對應 (明確或隱含) 將資料路徑從來源資料設定為搜尋索引。 輸出欄位對應會將 擴充檔的資料路徑設定為索引。

  • 索引編制是原始內容和擴充內容內嵌到 搜尋索引 的實體資料結構 (其檔案和資料夾) 的程式。 語彙分析和標記化會在此步驟中發生。

探索 是最後一個步驟。 輸出一律是可從用戶端應用程式查詢的 搜尋索引 。 輸出可以是 知識存放區 ,其中包含透過資料探索工具或下游程式存取的 Azure 儲存體中的 Blob 和資料表。 如果您要建立知識存放區, 投影會 決定擴充內容的資料路徑。 相同的擴充內容可以同時出現在索引和知識存放區中。

使用 AI 擴充的時機

如果原始內容是非結構化文字、影像內容,或需要語言偵測和翻譯的內容,擴充就很有用。 透過 內建技能 套用 AI 可以解除鎖定此內容,以進行全文檢索搜尋和資料科學應用程式。

您也可以建立 自訂技能 來提供外部處理。 開放原始碼、協力廠商或第一方程式碼可以整合至管線中作為自訂技能。 識別各種檔案類型之顯著特性的分類模型屬於此類別,但可以使用任何將價值新增至您內容的外部套件。

內建技能的使用案例

內建技能是以認知服務 API為基礎:電腦視覺語言服務。 除非您的內容輸入很小,否則預期 會附加可計費的認知服務資源 來執行較大的工作負載。

使用內建技能組合的 技能集 非常適合下列應用程式案例:

自訂技能的使用案例

自訂技能 會執行您提供的外部程式碼。 自訂技能可支援更複雜的案例 (例如辨識表單) 或使用您在自訂技能 Web 介面中提供及包裝的模型來進行自訂實體偵測。 自訂技能的數個範例包括:

自訂技能不一定複雜。 例如,如果您有提供模式比對或檔分類模型的現有套件,您可以將它包裝在自訂技能中。

儲存輸出

在Azure 認知搜尋中,索引子會儲存它所建立的輸出。 單一索引子執行最多可以建立三個包含擴充和索引輸出的資料結構。

資料存放區 必要 Location 描述
可搜尋的索引 必要 搜尋服務 用於全文檢索搜尋和其他查詢表單。 指定索引是索引子需求。 索引內容會從技能輸出填入,以及任何直接對應至索引中欄位的來源欄位。
知識存放區 選擇性 Azure 儲存體 用於下游應用程式,例如知識採礦或資料科學。 知識存放區是在技能集內定義。 其定義會決定擴充的檔是否投影為數據表或物件, (Azure 儲存體中的檔案或 Blob) 。
擴充快取 選擇性 Azure 儲存體 用於快取擴充,以便在後續的技能集執行中重複使用。 快取會儲存匯入、未處理的內容, (破解的檔) 。 它也會儲存在技能集執行期間所建立的擴充檔。 如果您使用影像分析或 OCR,而且想要避免重新處理影像檔的時間和費用,快取特別有用。

索引和知識存放區彼此完全獨立。 雖然您必須附加索引以滿足索引子需求,但如果您的唯一目標是知識存放區,您可以在索引填入之後忽略索引。 不過,請避免刪除它。 如果您想要重新執行索引子和技能集,您需要索引子才能執行索引。

探索內容

定義並載入 搜尋索引知識存放區之後,您可以探索其資料。

查詢搜尋索引

執行查詢 以存取管線所產生的擴充內容。 索引就像您為Azure 認知搜尋建立的任何其他專案一樣:您可以使用自訂分析器來補充文字分析、叫用模糊搜尋查詢、新增篩選或實驗評分設定檔,以微調搜尋相關性。

在知識存放區上使用資料探索工具

在 Azure 儲存體中, 知識存放區 可以假設下列形式:JSON 檔的 Blob 容器、映射物件的 Blob 容器,或資料表儲存體中的資料表。 您可以使用儲存體總管Power BI或任何連線到 Azure 儲存體的應用程式來存取您的內容。

  • Blob 容器會完整擷取擴充的檔,如果您要建立其他進程的摘要,這會很有用。

  • 如果您需要擴充檔的配量,或是想要包含或排除輸出的特定部分,資料表會很有用。 若要在 Power BI 中進行分析,資料表是 Power BI 中資料探索和視覺效果的建議資料來源。

可用性和價格

擴充可在具有 Azure 認知服務的區域中使用。 您可以在 依區域提供的 Azure 產品 頁面上檢查擴充的可用性。 擴充適用于所有區域,但下列情況除外:

  • 澳大利亞東南部
  • 中國北部 2
  • 德國中西部

計費遵循隨用隨付定價模式。 在技能集中指定多區域認知服務金鑰時,會傳遞使用內建技能的成本。 影像擷取也有與影像擷取相關聯的成本,如認知搜尋計量。 不過,文字擷取和公用程式技能無法計費。 如需詳細資訊,請參閱如何支付Azure 認知搜尋費用。

檢查清單:一般工作流程

擴充管線是由具有技能集索引子所組成。 編制索引後,您可以查詢索引來驗證結果。

支援的資料來源中的資料子集開始。 索引子和技能集設計是反復的程式。 使用小型代表性資料集,工作會更快速。

  1. 建立指定資料連線的 資料來源

  2. 建立技能集。 除非您的專案很小,否則您會想要 附加認知服務資源。 如果您要 建立知識存放區,請在技能集內加以定義。

  3. 建立定義搜尋索引的索引架構

  4. 建立並執行索引子 ,將所有上述元件整合在一起。 此步驟會擷取資料、執行技能集,並載入索引。

    索引子也是您指定欄位對應和輸出欄位對應的位置,可設定搜尋索引的資料路徑。

    選擇性地在索引子組態中 啟用擴充快取 。 此步驟可讓您稍後重複使用現有的擴充。

  5. 執行查詢 來評估結果或 啟動偵錯會話 ,以處理任何技能集問題。

若要重複上述任何步驟,請在執行 索引子之前重設索引子 。 或者,如果您使用免費層) ,請在每次執行時刪除並重新建立物件 (建議。 如果您啟用快取,如果來源的資料未變更,而且您對管線的編輯不會使快取失效,索引子就會從快取提取。

下一步