主動式學習
「主動式學習建議」功能可根據使用者提交的內容來針對問題解答組建議替代問題,以改善知識庫的品質。 您可以檢閱這些建議,並將其新增至現有的問題或加以拒絕。
您的知識庫不會自動變更。 您必須接受建議,變更才能生效。 這些建議會新增問題,但不會變更或移除現有的問題。
注意
QnA Maker 服務即將於 2025 年 3 月 31 日淘汰。 較新版的問題和解答功能現在隨附於 Azure AI 語言。 如需瞭解語言服務內的問題解答功能,請參閱問題解答。 從 2022 年 10 月 1 日開始,您將無法建立新的 QnA Maker 資源。 如需將現有的 QnA Maker 知識庫移轉至問題解答的相關資訊,請參閱移轉指南。
何謂主動式學習?
QnA Maker 可透過隱含和明確的意見反應學習新演變出來的問題。
- 隱含的意見反應 – 排名工具了解使用者問題有多個答案且分數非常接近,並將其視為意見反應。 您不需要執行任何動作,就會產生這個效果。
- 明確的意見反應 – 從知識庫傳回分數變化很小的多個答案時,用戶端應用程式會詢問使用者哪個問題是正確的問題。 使用者的明確意見反應會透過訓練 API 傳送至 QnA Maker。
這兩種方法都會向排名工具提供叢集化的類似查詢。
主動式學習的運作方式
系統會根據 QnA Maker 傳回的前幾個答案分數,觸發主動式學習。 如果符合查詢之 QnA 配對的分數差落在一個小範圍內,查詢即會視為每個可能 QnA 配對的可能建議 (替代問題)。 一旦針對某個特定 QnA 配對接受建議的問題,其他配對就會拒絕此建議。 接受建議之後,請務必記得儲存及訓練。
當端點取得合理數量和足夠類型的使用查詢時,主動式學習可提供最佳的可能建議。 集合五個或以上的類似查詢後,QnA Maker 每 30 分鐘就會建議知識庫設計者接受或拒絕以使用者為基礎的問題。 所有建議會依相似度叢集化在一起,並根據使用者發出特定查詢的頻率顯示替代問題的最高排名建議。
當在 QnA Maker 入口網站中建議問題後,即必須檢閱並接受或拒絕這些建議。 沒有可管理建議的 API。
QnA Maker 隱含意見反應的運作方式
QnA Maker 的隱含意見反應會使用演算法來判斷分數鄰近性,然後提供主動式學習建議。 判定相近程度的演算法並非簡單的計算。 下列範例中的範圍非為固定,僅應作為了解演算法影響的指引。
當問題的分數具有高信賴度時 (例如 80%),可考慮進行主動式學習的分數範圍較廣,大約在 10% 以內。 信賴分數下降時 (例如 40%),分數的範圍也會隨之降低,大約在 4% 以內。
在下列從查詢到 QnA Maker generateAnswer 的 JSON 回應中,A、B 和 C 的分數非常相近,會視為建議。
{
"activeLearningEnabled": true,
"answers": [
{
"questions": [
"Q1"
],
"answer": "A1",
"score": 80,
"id": 15,
"source": "Editorial",
"metadata": [
{
"name": "topic",
"value": "value"
}
]
},
{
"questions": [
"Q2"
],
"answer": "A2",
"score": 78,
"id": 16,
"source": "Editorial",
"metadata": [
{
"name": "topic",
"value": "value"
}
]
},
{
"questions": [
"Q3"
],
"answer": "A3",
"score": 75,
"id": 17,
"source": "Editorial",
"metadata": [
{
"name": "topic",
"value": "value"
}
]
},
{
"questions": [
"Q4"
],
"answer": "A4",
"score": 50,
"id": 18,
"source": "Editorial",
"metadata": [
{
"name": "topic",
"value": "value"
}
]
}
]
}
但是 QnA Maker 不知道哪個才是最佳答案。 請使用 QnA Maker 入口網站的建議清單選取最佳答案,然後再訓練一次。
如何使用訓練 API 提供明確的意見反應
QnA Maker 需要有明確的意見反應,指出哪些答案是最佳答案。 您決定如何判斷最佳答案,其可包括:
- 使用者意見反應,選取其中一個答案。
- 商務邏輯,例如判斷可接受的分數範圍。
- 結合使用者意見反應和商務邏輯。
在使用者選取答案後,使用訓練 API 將正確的答案傳送至 QnA Maker。
升級執行階段版本以使用主動式學習
執行階段 4.4.0 版和更新版本可支援主動式學習。 如果您的知識庫是在舊版中建立的,請升級執行階段以使用這項功能。
開啟替代問題的主動式學習
依預設會關閉主動式學習。 開啟它以查看建議的問題。 開啟主動式學習之後,您必須將用戶端應用程式的資訊傳送至 QnA Maker。 如需詳細資訊,請參閱從 Bot 使用 GenerateAnswer 和訓練 API 的架構流程。
選取 [發佈] 以發佈知識庫。 主動式學習查詢只會從 GenerateAnswer API 預測端點收集。 QnA Maker 入口網站 [測試] 窗格中的查詢不會影響主動式學習。
若要在 QnA Maker 入口網站中開啟主動式學習,請在右上角選取 [名稱],然後移至 的 [服務設定]。
尋找 QnA Maker 服務,然後切換主動式學習。
注意
上圖中的確切版本僅供作為範例。 您的版本可能會不同。
在啟用主動式學習後,知識庫將根據使用者提交的問題定期建議新的問題。 您可以再次切換設定以停用主動式學習。
檢閱建議的替代問題
在每個知識庫的 [編輯] 頁面上檢閱替代的建議問題。