QnA Maker 中的知識庫生命週期

QnA Maker 在反復的模型變更、語句範例、發佈和從端點查詢收集資料的迴圈中學習得最好。

Authoring cycle

注意

QnA Maker 服務將于 2025 年 3 月 31 日淘汰。 較新版的問題和解答功能現在隨附於 Azure AI 語言。 如需語言服務內的問題解答功能,請參閱 問題解答 。 從 2022 年 10 月 1 日起,您將無法建立新的 QnA Maker 資源。 如需將現有 QnA Maker 知識庫移轉至問題解答的相關資訊,請參閱 移轉指南

建立 QnA Maker 知識庫

QnA Maker 知識庫 (KB) 端點會根據 KB 的內容,提供使用者查詢的最佳比對答案。 建立知識庫是一次性動作,可設定問題、解答和相關聯中繼資料的內容存放庫。 您可以藉由編目預先存在的內容來建立 KB,例如下列來源:

  • 常見問題頁面
  • 產品手冊
  • Q-A 配對

瞭解如何 建立知識庫

測試及更新知識庫

知識庫準備好在內容填入內容之後進行測試,無論是編輯方式還是透過自動擷取。 您可以在 QnA Maker 入口網站中透過 [測試] 面板來完成互動式測試 。 您輸入常見的使用者查詢。 然後,您確認回應會以正確的回應和足夠的信賴分數傳回。

測試更新的這個緊密迴圈會繼續執行,直到您對結果感到滿意為止。 瞭解如何 測試您的知識庫

針對大型 KB,請搭配 generateAnswer API isTest body 屬性使用自動化測試,以查詢 test 知識庫而非已發佈的知識庫。

{
  "question": "example question",
  "top": 3,
  "userId": "Default",
  "isTest": true
}

發佈知識庫

完成測試知識庫之後,您就可以發佈它。 發佈會將最新版的測試知識庫推送至代表已發佈 知識庫的 專用 Azure AI 搜尋索引。 它也會建立可在您的應用程式或聊天機器人中呼叫的端點。

由於發佈動作,對測試版本所做的任何進一步變更知識庫讓發行的版本不會受到影響。 已發佈的版本可能存在於生產應用程式中。

每個知識庫都可以分別以測試為目標。 使用 API,您可以使用 generateAnswer 呼叫中的 body 屬性,以測試版本的 知識庫 isTest 為目標。

瞭解如何 發佈您的知識庫

監視器使用狀況

若要能夠記錄服務的聊天記錄,您必須在建立 QnA Maker 服務 啟用 Application Insights。

您可以取得服務使用量的各種分析。 深入瞭解如何使用 application insights 來取得 QnA Maker 服務 的分析。

根據您從分析中學到的內容,對知識庫 進行適當的 更新。

知識庫中資料的版本控制

資料的版本控制是透過 QnA Maker 入口網站中設定 頁面上的 匯入/匯出功能來提供。

您可以藉由以 或 .xls 格式匯出知識庫來備份知識庫 .tsv 。 匯出之後,請納入此檔案作為一般原始檔控制檢查的一部分。

當您需要回到特定版本時,您需要從本機系統匯入該檔案。 匯出的知識庫 只能 透過設定 頁面上的 匯入使用。 它不能當做檔案或 URL 檔資料來源使用。 這會將目前知識庫中的問題和解答取代為匯入檔案的內容。

測試和生產知識庫

知識庫是透過 QnA Maker 建立、維護及使用的問答集存放庫。 每個 QnA Maker 資源都可以保存多個知識庫。

知識庫有兩種狀態: 測試和 發行

測試知識庫

測試 知識庫 是目前編輯並儲存的版本。 測試版本已經過測試,以取得正確性,以及回應完整性。 對測試所做的變更知識庫不會影響應用程式或聊天機器人的終端使用者。 測試知識庫在 HTTP 要求中稱為 test 。 QnA test Maker 的入口網站互動式 測試 窗格提供知識。

生產知識庫

已發佈 知識庫 是聊天機器人或應用程式中所使用的版本。 發佈知識庫會將測試版本的內容放入其已發佈的版本。 已發佈知識庫是應用程式透過端點使用的版本。 請確定內容正確且經過良好測試。 已發佈的知識庫在 HTTP 要求中稱為 prod

下一步