擴充和優化訊息擴充功能以搭配 Microsoft 365 Copilot

已完成

在本單元中,您將瞭解如何擴充和優化訊息擴充功能,以便與 Microsoft 365 Copilot 搭配使用。

Copilot 協調器

Copilot 協調器決定是否呼叫您的外掛程式以取得數據以回應使用者提示。

此影像之後文字中循序步驟的可視化圖例。

  1. 自然語言輸入,用戶會透過Microsoft 365 聊天來輸入提示給 Copilot。
  2. 搜尋相關的外掛程式,Copilot 協調器會搜尋其已安裝和啟用的外掛程式目錄,以取得相關技能的初始清單。
  3. 推理,Copilot 會利用其 LLM (大型語言模型) 的結合知識,以及來自 Microsoft Graph 的組織數據來分析要求並判斷用戶的內容。 然後,它會將使用者的提示細分成意圖或目標。 每個目標接著會分成工作。
  4. 協調器會將使用者的意圖對應至位置,將使用者的工作對應至外掛程式技能和/或內建的 Copilot 技能函式、將隱含條件約束從使用者的提示對應到位置, (執行每個識別技能所需的參數值) 。
  5. 系統會呼叫 Execute plugin、Copilot 及其外掛程式來執行其選取的技能。
  6. 產生摘要、Copilot 合併、篩選或排名來自不同助理的回應,併為用戶產生單一回應。
  7. 自然語言輸出最後,Copilot 會將響應傳遞給使用者。

Microsoft 365 Copilot 可從數千人中唯一選擇正確的技能。 但是,您要如何確定 Copilot 選擇外掛程式來提供正確的技能?

答案在於您如何描述外掛程式、其技能,以及技能執行的參數。

優化應用程式、命令和參數描述

若要確保 Microsoft 365 Copilot 選取您的外掛程式來提供正確的技能,您必須提供外掛程式、其技能和技能執行參數的詳細描述。 Copilot 協調器會使用這些描述來比對使用者的提示與最相關的外掛程式和技能。

  • 外掛程式 (應用程式) 描述,應包含您外掛程式的使用者動作、輸入類型和輸出類型。

    {
        "description": {
            "short": "Product look up tool.",
            "full": "Get real-time product information and share them in a conversation. Search by product name or target audience. Contoso products works with Microsoft 365 Chat. Find products at Contoso. Find Contoso products called mark8. Find Contoso products named mark8. Find Contoso products related to Mark8. Find Contoso products aimed at individuals. Find Contoso products aimed at businesses. Find Contoso products aimed at individuals with the name mark8. Find Contoso products aimed at businesses with the name mark8."
        }
    } 
    
  • 技能 (命令) 描述,用來將使用者的提示解譯為意圖,然後將它對應至 Copilot 可用的最相關技能。 包含技能句柄的動作,以及輸出的預期輸入和描述格式。

    {
       "id": "Search",
       "type": "query",
       "title": "Products",
       "description": "Find products by name or by target audience",
       "initialRun": true,
       "fetchTask": false,
       "context": [...],
       "parameters": [...] 
    }
    
  • 參數描述 會說明參數是什麼,而不是參數的作用,以及預期的格式。

    {
        "parameters": [
          {
            "name": "ProductName",
            "title": "Product name",
            "description": "The name of the product as a keyword",
            "inputType": "text"
          },
          {
            "name": "TargetAudience",
            "title": "Target audience",
            "description": "Audience that the product is aimed at. Consumer products are sold to individuals. Enterprise products are sold to businesses",
            "inputType": "text"
          }
        ]
    }
    

複雜語句的多參數支援

直接用於Microsoft Teams 聊天和 Outlook 郵件撰寫時,您的郵件擴充功能外掛程式只能使用每個命令的單一參數來解譯簡單的使用者提示。

當做 Microsoft 365 Copilot 中的外掛程式使用時,copilot 協調器可以使用多個參數來解譯複雜的使用者提示,每個命令最多五個參數。

copilot 協調器可以使用語意推理,將使用者的提示對應至應用程式指令清單中定義的參數。

假設您有一個參數,其中包含 產品目標物件的描述。消費者產品會銷售給個人。企業產品會銷售給企業。 copilot 協調器可以根據應用程式指令清單中提供的描述,將使用者的提示對應至 參數 TargetAudience

當使用者輸入提示 尋找以個人為目標的 Contoso 產品時,copilot 協調器會將使用者的提示對應至 TargetAudience 參數,其值為 Consumer