備註
這項功能目前處於公開預覽狀態。 此預覽版在沒有服務等級協議的情況下提供,不建議用於生產工作負載。 可能不支援特定功能,或可能已經限制功能。 如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款。
知識來源指定用於代理檢索的內容。 它要麼封裝一個由外部資料填充的搜尋索引,要麼是直接連接到遠端目標(如 Bing 或 SharePoint)並直接查詢的連結。 知識來源是知識庫中必須定義的定義。
建立知識來源作為搜尋服務上的最上層資源。 每個知識來源都指向一個資料結構,無論是 符合代理檢索條件 的搜尋索引,或是支援的外部資源。
在 知識庫中引用一個或多個知識來源。 在代理式檢索管線中,你可以在單一請求中查詢多個知識來源。 會針對每個知識來源產生子查詢。 最佳結果會在擷取回應中傳回。
對於某些知識來源,你可以使用知識來源定義來產生完整的索引器管線(資料來源、技能集、索引器和索引),以支援代理檢索。 與其手動建立多個物件,不如利用知識來源中的資訊產生所有物件,包括填充、分塊且可搜尋的索引。
在建立知識庫之前,務必至少有一個知識來源。 知識來源與知識庫的完整規範可參考 預覽版 REST API 參考資料。
利用知識庫
創建路徑:先建立知識來源,再建立知識庫。
刪除路徑:更新或刪除知識庫以移除對知識來源的引用,然後最後刪除該知識來源。
知識來源、其索引與知識庫必須存在於同一個搜尋服務中。 外部內容可透過公共網際網路(Bing)或 Microsoft 租戶(遠端 SharePoint)存取。
支援的知識來源
在這個預覽中,你可以建立以下知識來源:
| 種類 | 索引化或遠端 |
|---|---|
"searchIndex" API 封裝現有索引。 |
索引 |
"azureBlob" API 會產生一個索引器管線,從 blob 容器中拉取資料。 |
索引 |
"indexedOneLake" API 會生成一個索引器管道,從 lakehouse 中提取資料。 |
索引 |
"indexedSharePoint" API 會產生一個索引器管線,從 SharePoint 網站拉取資料。 |
索引 |
"remoteSharePoint" API 直接從 SharePoint 擷取內容。 |
Remote |
"webParameters" API 從 Microsoft Bing 取得即時基礎數據。 |
Remote |
索引化的知識來源指向 Azure AI Search 上的目標索引。 查詢執行是針對你搜尋服務的搜尋引擎進行的。 關鍵字(全文搜尋)、向量及混合查詢功能用於從索引知識來源擷取資料。
你可以在查詢時存取遠端知識來源。 代理檢索引擎會呼叫平台原生的檢索 API(Bing 或 SharePoint API)。
所有檢索的內容,不論是已索引或遠端,都會被拉入 Azure AI Search 的排名流程,並根據相關性評分、合併(假設有多個查詢)、重新排序,最後在檢索回應中回傳。
建立知識來源
將知識來源作為獨立物件建立。 接著,在「knowledgeSources」陣列的知識庫中指定它們。
要在搜尋服務中建立物件,你需要搜尋服務貢獻者權限。 如果你使用的是建立索引器管線的知識來源,你還需要搜尋 索引資料貢獻 者的權限來載入索引。 或者,您可以使用 API 管理員金鑰 而不是角色。
使用 REST API 或 Azure SDK 預覽套件來建立知識來源。 Azure 入口網站支援僅限特定知識來源使用。 下列連結提供建立知識來源的指示:
- 如何建立搜尋索引知識來源(包裝現有索引)
- 如何建立 Blob 知識庫(產生索引器管線)
- 如何建立 OneLake 知識來源(產生索引器管線)
- 如何建立 SharePoint(已索引化)知識來源(產生索引器管線)
- 如何建立 SharePoint(遠端)知識來源(直接查詢 SharePoint)
- 如何建立一個網路知識來源資源(連接 Bing 的公開端點)
建立知識來源後,請在知識庫中引用它。
使用知識資源
你可以透過設定 alwaysQuery 知識來源定義或在查詢規劃時使用引導指令,明確控制知識來源的使用。 引導指令指的是索引上的描述,或知識來源中明確的檢索指令,提供何時使用索引的指引。 查詢規劃發生在你使用大語言模型(LLM)的低或中等檢索推理工作負荷時。 為了最小的推理工作,知識庫中列出的所有知識來源都包含在每個查詢的範圍內。 對於低階與中等型,知識庫與大型語言模型可在查詢時判斷哪些知識來源最有可能提供最佳的搜尋語料庫。
知識來源選擇邏輯基於以下因素:
設置好
alwaysQuery了嗎? 如果是,知識來源每次查詢都會被使用。知識來源的某個部分
name。description假設是一個索引的知識來源。retrievalInstructions檢索動作或知識庫定義中指定的指引,提供包括或排除知識來源的指導。 這有點像提示。 你可以指定簡潔、語氣和格式作為檢索指示。outputMode在知識庫中,不僅會影響查詢輸出,還會影響回應中的內容。
使用檢索推理方法來控制 LLM 的使用
並非所有解決方案都受益於 LLM 查詢規劃與執行。 如果簡單與速度超過LLM查詢規劃與上下文工程帶來的好處,請指定最小的推理努力以防止LLM在你的流程中被處理。
對於低於和中等的處理層級,LLM 處理要麼採用平衡的方法,要麼採用最大化的方法,以提升相關性。 欲了解更多資訊,請參閱 設定檢索推理努力。
備註
如果你在之前的預覽中使用 attemptFastPath 過,那個方法現在會被 retrievalReasoningEffort set 到 minimal取代。