最佳化觸發字詞與自然語言理解

重要

在對生成式 AI 進行大量投資並增強 Microsoft Copilot 的整合後,Power Virtual Agents 的功能和特性現已成為 Microsoft Copilot Studio 的一部分

當我們更新文件和培訓內容時,某些文章和螢幕擷取畫面可能會參考 Power Virtual Agents。

Microsoft Copilot Studio 中的觸發字詞是什麼

  • 觸發字詞可訓練副手的自然語言理解 (NLU) 模型。

  • 觸發字詞在主題層級設定,並向副手指示應觸發特定主題的典型使用者表達。

  • 觸發字詞通常能掌握終端使用者提出問題或議題的詢問方式。 例如,草坪中雜草的問題

提示

建立新主題時,製作者只需提供幾個範例字詞 (最好介於五到十個之間)。 當使用副手時,AI 會剖析使用者所說的話,並觸發與使用者表達意義最接近的主題。

觸發內容的重要性

Microsoft Copilot Studio NLU 的行為因交談狀態而異,這有時可能會導致相同的使用者表達產生不同的行為。

以下是不同的交談狀態:

  • 交談開始:副手沒有上下文,因此使用者表達預計會:直接觸發主題 (IntentRecognition)、如果有多個相符主題,則觸發「您的意思是不是」(多個主題相符) 消除歧義問題 (IntentCandidates),或者如果無法識別意圖,則觸發回退 (UnknownIntent)。
  • 在觸發「您的意思是不是」(符合多個主題) 之後:NLU 進行最佳化以符合其中一個建議的主題,並以較高的閾值來移出所提供的選項。
  • 從目前的主題中切換至其他主題:如果 NLU 正在嘗試填充主題中的槽位,而使用者正在提供可能觸發另一個主題的使用者查詢 (主題切換)。

關於標點符號

NLU 模型與標點符號 (包括問號) 無關。

建立新的觸發字詞

可能的話,請從實際生產資料開始,而不是編造自己的觸發字詞。 最好的觸發字詞是那些與來自終端使用者的實際資料相似的字詞。 這些字詞是使用者向部署的副手詢問的字詞。

無需省略特定詞語:模型的設計目的是要減少對不必要詞語 (例如停用字詞) 的加權 (因其無關緊要而於自然語言資料處理前篩除的詞語)。

最佳化觸發字詞

# 提示 範例
1 每主題至少有 5-10 個觸發字詞
隨著從使用者那裡獲悉更多資訊,不斷反覆並新增更多內容。
尋找我最近的商店
檢查商店位置
尋找商店
給我找到離您最近的位置
我附近的商店
2 改變語句結構與關鍵字詞
模型會自動考慮這些字詞的變化。
何時結束營業
每日營業時間
3 使用簡短觸發字詞
少於 10 個字
何時開始營業
4 避免只有一字的觸發字詞
這會增加主題觸發中特定字的權數。
這可能會在類似的主題之間造成混淆。
儲存
5 使用完整字詞 我可以跟人類助理說話嗎
6 具有唯一的動詞和名詞或這些詞性的組合 我需要客戶服務
我想要與顧問交談
7 避免使用相同的實體變化
您不需要使用實體值中所有的範例。
NLU 會自動考慮所有的變化。
我想要訂購漢堡
我想要披薩
我想要雞塊

平衡每個主題的觸發字詞數目

嘗試平衡主題之間的觸發字詞數目。

提示

如此一來,NLU 功能就不會根據設定的觸發字詞偏重於一個主題,而使另一個主題的權數偏低。

評定變更的影響

更新觸發字詞時,或者合併或分割主題時,有多種方法可以評定變更:

  • 副手行為立即發生變化,可以透過「測試副手」畫布觀察到 (例如,現在觸發或不基於觸發字詞更新的主題)。
  • 副手部署和面對交通後的變化,這會轉化為更高或更低的偏轉 (非升級) 率。 這可以從 Microsoft Copilot Studio 的分析索引標籤中進行觀察。

提示

您可以利用 Copilot Test Framework,來測試主題觸發,以及 NLU 模型如何針對測試資料大量執行。

儘管完全支援用於建立 Copilot Test Framework 的底層功能和元件 (例如與 Direct Line API 互動),但 Copilot Test Framework 本身就代表了這些功能的範例實作。

我們的客戶和社群可以使用和調整 Copilot Test Framework 來實作大量測試。 如果您在使用 Copilot Test Framework 時遇到問題,請在此處報告問題:https://aka.ms/PVASamples (Microsoft 支援服務無法協助您處理與這些範例相關的問題,但會在相關的基礎平台及功能問題上協助您)。