共用方式為


建立和編輯主題

在 Copilot Studio 中,主題定義了副手交談的進展方式。

若要製作主題,您可以自訂提供的範本、從頭開始建立主題或描述您想要的內容,並讓 AI 為您建立主題

在 Copilot Studio 中,主題表示使用者和副手間交談的一部分。 您可以在製作畫布上定義和使用主題。主題包含一個或多個交談節點,其共同定義主題可以採用的交談路徑。 每個節點都會執行一項動作,例如傳送訊息或提出問題。

通常,一個主題有一組觸發字詞,這是客戶可能會輸入的與特定問題相關的字詞、關鍵字或問題。 Copilot Studio 副手可使用自然語言理解、客戶訊息和所有主題的觸發字詞來找到要觸發的最佳主題。 訊息不需要完全符合主題的觸發字詞就能觸發主題。 例如,儲存時數的主題可能包括觸發字詞 check store hours。 如果客戶輸入「查看商店營業時間」,此字詞會觸發您的商店營業時間主題。

先決條件

自然語言理解

副手會使用自然語言理解 (NLU) 來剖析客戶輸入的內容,並尋找最佳觸發字詞或節點。

例如,使用者可能會輸入「營業時間」,副手會將其與營業時間主題比對,並開始交談,詢問客戶感興趣的商店,然後顯示該商店的營業時間。

測試副手窗格會顯示副手交談在每個步驟中的進展。 您可以使用測試副手窗格微調主題,而不必離開 Copilot Studio 入口網站。

對於副手和主題限制,請參閱配額、限制、應用程式註冊、憑證和設定值

Copilot Studio 中的主題

主題類型

副手可以包括兩種類型的主題:系統自訂主題。 每個新的副手都從一組預先定義的系統和自訂主題開始。

  • 系統主題支援基本行為,例如與某人交談或結束交談的自訂要求。 某些系統主題具有觸發字詞,您可以對其進行自訂以滿足副手的需求。

    • 您無法建立系統主題。
    • 您無法刪除系統主題,但可加以停用。
    • 您可以對系統主題進行變更。 但在您能夠輕鬆建立完整的副手體驗之前,不建議編輯系統主題。

    如需詳細資訊,請參閱使用系統主題

  • 預先定義的自訂主題涵蓋常見行為,例如問候客戶、結束對話或重新開始對話。

    • 您可以變更預先定義的自訂主題或將其從副手中完全移除。
    • 所有您建立的主題都是自訂主題。

節點類型

可以使用以下類型的節點:

選項 Description
傳送訊息 傳送訊息給客戶。
提出問題 向客戶提出問題。
使用調適型卡片詢問 建立 JSON 片段以與其他應用程式交換。
使用條件製作 根據條件將交談分支。
變數管理 設定值、剖析值或清除所有變數。
管理主題 重新導向、轉移或結束主題或交談。
呼叫流程 呼叫類似 Power Automate 或 Excel Online 的流程,或者使用連接器或外掛程式。
進階者 生成式答案 HTTP 要求事件等。

提示

重新命名節點以使其更易於識別。 選擇節點的名稱欄位以直接更新名稱,或選擇節點的更多圖示 (...),並從功能表中選擇重新命名您還可以在代碼編輯器中重新命名節點

無法重命名 發射鍵 nodes 和 Go to step 節點。

節點名稱的長度最多可達 500 個字元。

建立主題

  1. 副手頁面上的清單中打開副手。 為了獲得更好的可見性,請暫時關閉測試副手面板。

  2. 在頂端功能表列,選取主題

  3. 選取新增主題,然後選取從空白開始

    觸發程序節點將顯示在創作畫布上,否則為空白主題。

  4. 選取觸發程序節點的更多圖示 (...),然後選取屬性。 將顯示識別的意圖屬性面板。

  5. 辨識意圖屬性面板中,選取字詞區域。 此時將顯示字詞輔助面板。

  6. 新增字詞下,輸入主題的觸發字詞。

    您的副手需要 5 到 10 個觸發字詞來訓練 AI 理解客戶的反應。 若要新增更多觸發字詞,您可以:

    • 選取文字欄位旁邊的新增圖示 ,然後輸入所需的字詞。
    • 貼上一組觸發字詞 (每個觸發字詞佔一行),然後選擇輸入
    • 輸入一組觸發字詞,在每個觸發字詞後按 Shift+Enter 將其放在單獨的行上,然後選擇輸入

    您可以在觸發字詞中包括標點符號,但是最好使用短片語而不是長句。

  7. 選取工具列上的詳細資料,以開啟主題詳細資料面板。

  8. 新增您的副手主題詳細資訊:

    • 輸入用於辨識主題的名稱,例如「商店營業時間」。主題頁面會根據此名稱列出您副手中定義的所有主題。
    • 如果需要,請輸入一個 顯示名稱,當 Copilot 無法確定哪個 主題 與客戶的消息匹配時向客戶顯示。
    • 如果需要,請使用描述欄位為您自己和團隊中的其他副手製作者描述該主題的用途。 客戶永遠不會看到主題描述。
  9. 選取頂端功能表列上的儲存以儲存您的主題。

重要

避免在主題名稱中使用句點 (.)。 無法匯出包含任何主題名稱中帶有句點之副手的解決方案。

設計主題交談路徑

建立主題時,這會自動在製作畫布上顯示觸發程序節點。 然後,您可以新增不同類型的節點,以實現主題所需的交談路徑。

若要在主題製作畫布上的另一個節點之後或兩個節點之間新增節點,請執行以下操作:

  1. 在要新增節點的節點下方,選擇新增節點圖示

  2. 從顯示的清單中選擇所需的節點類型

    可用於選擇在觸發程序節點後插入節點的選項螢幕擷取畫面。

刪除節點

選擇要刪除的節點的 More 圖示(...),然後選擇 Delete

編輯畫布上節點的控制項

您可以使用工具列中的控制項,剪下、複製、貼上和刪除選取的節點或選取的相鄰節點。

製作畫布中用於編輯節點的工具列控制項螢幕擷取畫面。

工具列還有一個用於復原編輯的控制項。 開啟復原功能表,將所有動作還原到上次儲存或重做先前的動作。

[復原] 功能表的螢幕擷取畫面。

貼上節點

使用剪下複製工具將一個或多個節點放置到剪貼簿後,有兩種方法可將它們貼到畫布中:

  • 如果選取節點,然後選取貼上,就會在選取的節點之後插入剪貼簿中的節點。

  • 如果您選取「+」查看新增節點功能表,然後選取 貼上,則剪貼簿上的節點將插入到那個位置。

為主題新增輸入和輸出參數

主題可以有輸入和輸出參數。 當主題重新導向到另一個主題時,您可以使用這些參數在主題之間傳遞資訊。

此外,如果您的副手使用生成模式,它可以自動從對話內容填寫主題輸入或在生成問題後填寫主題輸入,以收集使用者的值。 此行為類似於動作的生成空格填寫的運作方式。

若要了解有關主題輸入和輸出參數的詳細資訊,請參閱管理主題輸入和輸出

使用程式碼編輯器編輯主題

程式碼編輯器會以 YAML 這個易於閱讀和理解的標記語言來顯示主題。 您可以使用程式碼編輯器,從其他 Bot (甚至是由其他作者所建立的 Bot) 複製和貼上主題。

重要

不完全支援在程式碼編輯器中整體設計主題和貼上複雜主題。

在此範例中,您將 YAML 複製並貼上到程式碼編輯器中,以快速新增詢問客戶運送資訊的主題。

  1. 主題頁面上,選擇 + 建立>從空白

  2. 在創作區域的右上角,選擇 更多,然後選擇打開代碼編輯器

    如何打開 主題 的代碼編輯器的屏幕截圖。

  3. 選取並刪除程式碼編輯器的內容。 然後複製並貼上以下 YAML 程式碼:

    kind: AdaptiveDialog
    beginDialog:
      kind: OnRecognizedIntent
      id: main
      intent:
        displayName: Lesson 3 - A topic with a condition, variables and a prebuilt entity
        triggerQueries:
          - Buy items
          - Buy online
          - Buy product
          - Purchase item
          - Order product
    
      actions:
        - kind: SendMessage
          id: Sjghab
          message: I am happy to help you place your order.
    
        - kind: Question
          id: eRH3BJ
          alwaysPrompt: false
          variable: init:Topic.State
          prompt: To what state will you be shipping?
          entity: StatePrebuiltEntity
    
        - kind: ConditionGroup
          id: sEzulE
          conditions:
            - id: pbR5LO
              condition: =Topic.State = "California" || Topic.State = "Washington" || Topic.State     = "Oregon"
    
          elseActions:
            - kind: SendMessage
              id: X7BFUC
              message: There will be an additional shipping charge of $27.50.
    
            - kind: Question
              id: 6lyBi8
              alwaysPrompt: false
              variable: init:Topic.ShippingRateAccepted
              prompt: Is that acceptable?
              entity: BooleanPrebuiltEntity
    
            - kind: ConditionGroup
              id: 9BR57P
              conditions:
                - id: BW47C4
                  condition: =Topic.ShippingRateAccepted = true
    
              elseActions:
                - kind: SendMessage
                  id: LMwySU
                  message: Thank you and please come again.
    
  4. 選取儲存,然後選取關閉程式碼編輯器問題節點現在對有關運送的問題有許多條件。

    在 Copilot Studio 程式碼編輯器中從 YAML 所建立之交談的螢幕擷取畫面。

測試並發佈您的副手

當您變更主題時請測試您的副手,以確保一切都能如期運作。

在設計並測試副手之後,請將其發佈至 Web、行動裝置或原生應用程式或 Microsoft Bot Framework 管道