匯入 Azure 入口網站 中的數據精靈
Azure AI 搜尋有兩個匯入精靈,可將索引編製和物件建立自動化,讓您可以立即開始查詢。 如果您不熟悉 Azure AI 搜尋服務,這些精靈是您可運用的最強大功能之一。 您不必費太多心力,即可建立索引或擴充管線,以練習 Azure AI 搜尋服務的大部分功能。
匯入數據精靈 支援非Vector 工作流程。 您可以從原始檔案擷取文字和數位。 您也可以設定應用 AI 和內建技能,以推斷結構並從影像檔案和非結構化資料產生文字可搜尋的內容。
匯入和向量化數據精靈 會新增區塊化和向量化。 您必須指定內嵌模型的現有部署,但精靈會建立連線、制定要求並處理回應。 它會從文字或影像內容產生向量內容。
如果您使用精靈進行概念證明測試,本文會說明精靈的內部運作方式,讓您更有效率地使用。
本文並非逐步說明。 如需搭配範例數據使用精靈的說明,請參閱:
支持的數據源和案例
精靈支援索引器所支援的大部分數據源。
資料 | 匯入資料精靈 | 匯入並向量化資料精靈 |
---|---|---|
ADLS Gen2 | ✅ | ✅ |
Azure Blob 儲存體 | ✅ | ✅ |
Azure 檔案儲存體 | ❌ | ❌ |
Azure 資料表儲存體 | ✅ | ✅ |
Azure SQL 資料庫和受控實例 | ✅ | ✅ |
適用於 NoSQL 的 Cosmos DB | ✅ | ✅ |
適用於 MongoDB 的 Cosmos DB | ✅ | ✅ |
適用於 Apache Gremlin 的 Cosmos DB | ✅ | ✅ |
MySQL | ❌ | ❌ |
OneLake | ✅ | ✅ |
SharePoint Online | ❌ | ❌ |
虛擬機器上的 SQL Server | ✅ | ✅ |
範例資料
Microsoft裝載範例數據,讓您可以在精靈工作流程上省略數據源組態步驟。
範例資料 | 匯入資料精靈 | 匯入並向量化資料精靈 |
---|---|---|
旅館 | ✅ | ❌ |
房地產 | ✅ | ❌ |
技能
本節列出精靈所產生的技能集中可能會出現的技能。 精靈會根據您選取的選項產生技能集和輸出欄位對應。 建立技能集之後,您可以修改其 JSON 定義來新增更多技能。
以下是下列清單中的技能要記住的一些要點:
- 如果採用預設剖析模式,OCR 和影像分析選項適用於 Azure 儲存體 中的 Blob 和 OneLake 中的檔案。 影像是影像內容類型(例如 PNG 或 JPG)或應用程式檔中的內嵌影像(例如 PDF)。
- 如果您設定知識存放區,則會新增Shaper。
- 如果您選擇內嵌模型,則會針對數據區塊化新增文字分割和文字合併。 如果來源欄位數據粒度設定為頁面或句子,則會針對其他非內嵌技能新增它們。
技能 | 匯入資料精靈 | 匯入並向量化資料精靈 |
---|---|---|
AI 視覺多模式 | ❌ | ✅ |
Azure OpenAI 內嵌 | ❌ | ✅ |
Azure 機器學習 (Azure AI Foundry 模型目錄) | ❌ | ✅ |
檔版面配置 | ❌ | ✅ |
實體辨識 | ✅ | ❌ |
影像分析 (適用於 Blob、預設剖析、整個檔案索引編製 | ✅ | ❌ |
關鍵詞擷 | ✅ | ❌ |
語言偵測 | ✅ | ❌ |
文字翻譯 | ✅ | ❌ |
OCR (適用於 Blob、預設剖析、整個檔案索引編制) | ✅ | ✅ |
PII 偵測 | ✅ | ❌ |
情感分析 | ✅ | ❌ |
塑形器(適用於知識存放區) | ✅ | ❌ |
文字分割 | ✅ | ✅ |
文字合併 | ✅ | ✅ |
知識存放區
您可以 針對擴充(技能產生的)內容的次要記憶體產生知識存放區 。 您可能想要知識存放區來擷取不需要搜尋引擎的資訊擷取工作流程。
知識存放區 | 匯入資料精靈 | 匯入並向量化資料精靈 |
---|---|---|
儲存體 | ✅ | ❌ |
精靈建立的內容
匯入精靈會建立下表中所述的物件。 建立物件之後,您可以在 Azure 入口網站 中檢閱其 JSON 定義,或從程式代碼呼叫它們。
若要在精靈執行之後檢視這些物件:
選取 功能表上的 [搜尋管理 ],以尋找索引、索引器、數據源和技能集的頁面。
Object | 描述 |
---|---|
索引子 | 設定物件,其指定資料來源、目標索引、選擇性技能、選擇性排程,以及用於錯誤處理和 Base 64 編碼的選擇性組態設定。 |
資料來源 | 將連線資訊保存到 Azure 上支援的資料來源。 資料來源物件需單獨與索引子搭配使用。 |
Index | 用於全文檢索搜尋和其他查詢的實體資料結構。 |
技能集 | 選擇性。 一組完整的指示,可用來進行內容的操作、轉換和成形作業,包括分析及擷取影像檔案中的資訊。 技能集也會用於整合向量化。 除非工作量落在每天每個索引子 20 筆交易的限制,否則技能集必須包含 Azure AI 多服務資源 (可提供擴充) 的參考。 針對整合式向量化,您可以使用 Azure AI 視覺或 Azure AI Foundry 模型目錄中的內嵌模型。 |
知識存放區 | 選擇性。 僅適用於匯入 數據 精靈。 將擴充的技能集輸出儲存在數據表和 blob 中,Azure 儲存體,以在非搜尋案例中獨立分析或下游處理。 |
福利
在撰寫任何程式碼之前,您可以使用精靈來進行建立原型和概念證明測試。 精靈會連線到外部資料來源、取樣資料以建立初始索引,將資料匯入然後選擇性地將資料向量化為 JSON 文件至 Azure AI 搜尋服務上的索引。
如果您要評估技能集,精靈會處理輸出欄位對應,並新增協助程式函式來建立可用的物件。 如果您指定剖析模式,則會新增文字分割。 如果您選擇了影像分析,則會新增文字合併,以便精靈可以使用影像內容來重新結合文字描述。 如果您選擇知識存放區選項,則會新增 Shaper 技能以支援有效的投影。 上述所有工作都會有學習曲線。 如果您不熟悉擴充,則可讓您測量技能的價值,無須投入太多時間和精力,即可處理這些步驟。
取樣是推斷索引結構描述的程序,而且有一些限制。 建立資料來源時,精靈會挑選隨機的文件範例,來決定哪些資料行是屬於資料來源。 並不會讀取所有檔案,因為可能需要數小時的時間才能取得非常大的資料來源。 假設有選取的文件、來源中繼資料 (例如欄位名稱或類型) 可用來在索引結構描述中建立欄位集合。 視來源資料的複雜度而定,您可能需要編輯初始結構描述以獲得正確性,或將其擴充以獲得完整性。 您可以在索引定義頁面上內嵌變更。
整體來說,使用精靈的優點很明顯:只要符合需求,您就可以在幾分鐘內建立可查詢的索引。 精靈會處理索引編製的一些複雜度,例如串行化 JSON 文件的數據。
限制
匯入精靈沒有限制。 限制摘要如下︰
精靈不支持反覆項目或重複使用。 每次通過精靈都會建立新的索引、技能集和索引子設定。 只有資料來源可在精靈內保存及重複使用。 若要編輯其他物件或縮小其他物件的搜尋範圍,請刪除物件並重新開始,或使用 REST API 或 .NET SDK 來修改結構。
來源內容必須位於支援的資料來源中。
取樣是在來源資料的子集上。 對於大型資料來源,精靈可能會遺漏一些欄位。 如果取樣不足,您可能需要擴充結構描述,或更正推斷的資料類型。
AI 擴充,如 Azure 入口網站 所公開,僅限於內建技能的子集。
「匯入數據精靈」可以建立的知識存放區僅限於一些預設投影,並使用預設命名慣例。 如果您想要自訂名稱或投影,必須透過 REST API 或 SDK 來建立知識存放區。
安全連線
匯入精靈會使用 Azure 入口網站 控制器和公用端點進行輸出連線。 如果 Azure 資源是透過私人連線或透過共用私人連結存取,則無法使用精靈。
您可以透過受限制的公用連線使用精靈,但並非所有功能都可以使用。
在搜尋服務上,匯入內建取樣資料需要公用端點,且無防火牆規則。
取樣資料是由 Microsoft 於特定 Azure 資源上託管。 Azure 入口網站 控制器會透過公用端點連線到這些資源。 如果您將搜尋服務放在防火牆後方,當您嘗試擷取內建的範例資料時,就會收到此錯誤:
Import configuration failed, error creating Data Source
,後面接著"An error has occured."
。在受防火牆保護的支援 Azure 資料來源上,如果您有正確的防火牆規則,則可以擷取資料。
Azure 資源必須接受來自連線上所用裝置 IP 位址的網路要求。 您也應該將 Azure AI 搜尋服務列為資源網路設定上受信任的服務。 例如,在 Azure 儲存體中,您可以將
Microsoft.Search/searchServices
列為受信任的服務。在連線至您提供的 Azure AI 多服務帳戶,或連線到部署在 Azure AI Foundry 入口網站或 Azure OpenAI 中的內嵌模型時,除非您的搜尋服務符合私人連線的建立日期、層級和區域需求,否則必須啟用公用因特網存取。 如需這些需求的詳細資訊,請參閱 透過共用的私人鏈接進行輸出連線。
Azure AI 多服務連線是為了 計費目的。 當 API 呼叫超過免費交易計數(每個索引器執行 20 個),以取得匯入數據精靈或匯入和向量化數據精靈中呼叫的內建技能時,就會發生計費。
如果 Azure AI 搜尋無法連線:
在 [匯入並向量化資料] 精靈中,錯誤為
"Access denied due to Virtual Network/Firewall rules."
在 [匯入資料] 精靈中,沒有錯誤,但不會建立技能集。
如果防火牆設定使得精靈工作流程無法成功,請考慮改用指令碼或程式設計方法。
工作流程
精靈會組織成 4 個主要步驟:
連線到支援的 Azure 資料來源。
建立索引結構描述,由取樣來源資料進行推斷。
您可以選擇性地新增技能來擷取或產生內容和結構。 此步驟中會收集建立知識存放區的輸入。
執行精靈以建立物件、選擇性地向量化資料、將資料載入索引、設定排程和其他設定選項。
工作流程是管線,因此為單向。 您無法使用精靈來編輯任何已建立的物件,但您可以針對允許的更新使用其他入口網站工具,例如索引或索引子設計工具或是 JSON 編輯器。
啟動精靈
以下是您啟動精靈的方式。
在 Azure 入口網站中,從儀表板開啟搜尋服務分頁,或在服務清單中尋找服務。
在頂端的服務 [概觀] 頁面中,選取 [匯入資料] 或 [匯入並向量化資料]。
精靈開啟時會在瀏覽器視窗中完全展開,讓您有更多空間可以作業。
如果您選取 [ 匯入數據],您可以選取 [範例 ] 選項,從支持的數據源編製Microsoft裝載數據集的索引。
請遵循精靈中的其餘步驟來建立索引和索引器。
您也可以從其他 Azure 服務 (包括 Azure Cosmos DB、Azure SQL Database、SQL 受控執行個體和 Azure Blob 儲存體) 啟動匯入資料。 在 [服務概觀] 頁面上的左側導覽窗格中,尋找 [新增 Azure AI 搜尋服務]。
精靈中的資料來源設定
精靈會使用 Azure AI 搜尋服務索引子所提供的內部邏輯連線到外部支援的資料來源,配備這些可取樣來源、讀取中繼資料、破解文件來讀取內容和結構,並將內容序列化為 JSON,以便後續匯入至 Azure AI 搜尋服務。
您可以在連線中貼到不同訂用帳戶或區域中支援的資料來源,但 [選擇現有的連線] 選擇器範圍設定為作用中的訂用帳戶。
不保證所有預覽資料來源都可在精靈中使用。 由於每個資料來源都有可能會有其他變更下游,因此,如果預覽資料來源完全支援精靈中的所有體驗 (例如技能集定義和索引結構描述推斷),則只會將預覽資料來源新增至資料來源清單。
您只能從單一資料表、資料庫檢視或對等資料結構匯入,不過,結構可以包含階層式或巢狀子結構。 如需詳細資訊,請參閱如何建立複雜類型模型。
精靈中的技能集設定
技能集設定在資料來源定義之後發生,因為資料來源的類型會告知特定內建技能是否可用。 特別是,如果您要從 Blob 儲存體為檔案編製索引,則選擇這些檔案的剖析模式會判斷情感分析是否可用。
精靈會新增您選擇的技能。 它也會增加達到成功結果的所需的其他技能。 例如,如果您指定知識存放區,精靈會新增塑形器技能來支援投影 (或實體資料結構)。
技能集是選擇性的,如果您不想要 AI 擴充,可以使用頁面底部的一個按鈕來跳過。
精靈中的索引結構描述設定
精靈會取樣您的資料來源,以偵測欄位和欄位類型。 視資料來源而定,其也可能提供編製中繼資料索引的欄位。
因為取樣是不精確的練習,請就下列考量檢閱索引:
欄位清單是否正確? 如果您的資料來源包含取樣中未挑選的欄位,您可以手動新增任何取樣所遺漏的新欄位,並移除未將值新增至搜尋體驗的任何欄位,或篩選條件運算式或評分設定檔中不會使用的任何欄位。
資料類型是否適用於傳入的資料? Azure AI 搜尋服務支援實體資料模型 (EDM) 資料類型。 針對 Azure SQL 資料,會有配置對等值的對應圖表。 如需更多背景,請參閱欄位對應和轉換。
您是否有一個欄位可做為金鑰? 此欄位必須為 Edm.string,且必須唯一識別文件。 針對關聯式資料,其可能會對應至主索引鍵。 針對 Blob,可能是
metadata-storage-path
。 如果欄位值包含空格或連字號,您必須在 [建立索引子] 步驟的 [進階選項] 底下設定 [Base-64 編碼金鑰] 選項,以隱藏這些字元的驗證檢查。設定屬性以判斷該欄位在索引中的使用方式。
請花點時間進行此步驟,因為屬性會決定索引中欄位的實體運算式。 如果您想要在稍後變更屬性,甚至以程式設計方式變更屬性,您幾乎一律需要卸除並重建索引。 可搜尋和可擷取等核心屬性對記憶體有微不足道的影響。 啟用篩選條件及使用建議工具會增加儲存需求。
Searchable 能夠進行全文檢索搜尋。 用於自由格式查詢或查詢運算式的每個欄位都必須有這個屬性。 針對您標示為 Searchable 的每個欄位,系統會建立反向索引。
Retrievable 會在搜尋結果中傳回欄位。 提供內容來搜尋結果的每個欄位都必須有這個屬性。 設定這個欄位對索引大小的影響很小。
Filterable 允許在篩選運算式中參考欄位。 用於 $filter 運算式的每個欄位都必須有這個屬性。 篩選條件運算式會用來進行精準比對。 因為文字字串會維持不變,所以需要更多儲存體才能容納逐字的內容。
Facetable 可讓欄位進行多面向導覽。 只有同時標示為 Filterable 的欄位才可以標示為 Facetable。
Sortable 允許欄位用於排序。 用於 $Orderby 運算式的每個欄位都必須有這個屬性。
您需要語彙分析嗎? 針對 [可搜尋] 的 Edm.string 欄位,如果您想要語言增強的索引和查詢,可以設定 [分析器]。
預設值是「標準 Lucene」,但如果您想要使用 Microsoft 的分析器來進行進階的語彙處理 (例如,解析不規則的名詞和動詞形式),則可以選擇「Microsoft 英文」。 Azure 入口網站 中只能指定語言分析器。 如果您使用自訂分析器或非語言分析器,例如關鍵字、模式等等,您必須以程式設計方式建立它。 如需分析器的詳細資訊,請參閱新增語言分析器。
您需要自動完成或建議結果形式的預先輸入功能嗎? 選取 [建議工具] 核取方塊,以在選取的欄位上啟用預先輸入的查詢建議和自動完成。 建議工具會新增至索引中的權杖化字詞數目,因此會耗用更多儲存體。
精靈中的索引子設定
精靈的最後一頁會收集索引子設定的使用者輸入。 您可以指定排程,並設定其他會因資料來源類型而異的選項。
精靈也會在內部設定下列定義,在建立索引子之前,這些定義不會顯示在索引子中:
嘗試精靈
如需了解精靈的優點和限制,最佳方式是逐步執行。 以下是一些以精靈為基礎的快速入門。