3月16日,微軟發佈了微軟365 Copilot[1]。 Microsoft 365 Copilot 將您現有的 Word、Excel、PowerPoint、Outlook 和 Teams 與大型語言模型 (LLM) 的強大功能以及來自 Microsoft Graph 和 Microsoft 365 應用的數據相結合,以創建前所未有的體驗。正如您在官方視頻中看到的那樣,Microsoft 365 Copilot的核心是一個名爲Copilot System的編排器。 今天Semantic Kernel 博客上發佈了一篇文章介紹了Copilot 聊天示例程序[2]。 我認爲很容易從這個Copilot 聊天示例程序開始 實現這樣的一個架構。
1、Copilot 系統
讓我們先簡單介紹一下M365 Copilot系統的處理流程。 該系統由Copilot系統,Microsoft 365 Apps,Microsoft Graph[3] 和LLM(GPT-4)組成.
Copilot 系統首先接收來自 Microsoft 365 Word、Excel、PowerPoint、Outlook、Teams 等的用戶提示。 這些指令不會作爲提示直接發送到 GPT-4,而是通過 Microsoft Graph 提供必要的上下文。 這稱爲接地,如果是電子郵件回覆提示,例如,您的電子郵件帳戶信息。
接地上下文提示通過Copilot系統發送到LLM。
Copilot 系統接收來自LLM的響應並執行後處理。 此後處理包括對 Microsoft Graph 的其他調用、負責任的 AI 檢查、安全性、合規性和隱私審查,以及 Microsoft 365 應用交互的命令生成。
已通過後處理步驟的處理結果和應用操作命令將返回到 Microsoft 365 中的調用應用。應用交互命令是用於處理添加圖片或調整 PowerPoint 文本大小等功能的內部命令。
2、使用Semantic Kernel實現
在Semantic Kernel的示例中,可以通過內置的 Microsoft Graph 連接器在上下文中添加的: 連接器是技能的一部分,您還可以使用Memory函數從Memory中的鍵值存儲和矢量數據庫中檢索和添加內存和先驗知識。 當然,您可以自己自定義技能和連接器。 還可以將其連接到 Azure 認知搜索。
對於 Microsoft 365 應用(如商務聊天)和跨用戶數據(日曆、電子郵件、聊天、文檔、會議和聯繫人)工作的應用),後端需要一個規劃器來確定用戶的問題意向,將其分解爲任務,並將其與操作相關聯。 語義內核包括一個計劃器,用於將用戶的複雜指令分解爲任務。 使用規劃器將公司系統的每個功能映射到您的技能。
Copilot Chat建立在微軟的Semantic Kernel 之上,允許開發人員輕鬆地將大型語言模型(LLM)的強大功能集成到自己的應用程序中。通過我們的完整示例,你可以利用高級功能,例如多個對話主題、語音識別、文件上傳,通過你自己的最新信息使聊天更智能,持久內存存儲允許機器人在每次使用時變得越來越智能,甚至可以下載機器人與他人共享,加入他們的對話。
無論您是在構建客戶服務工具、個性化推薦系統、人力資源助理、教育工具還是電子商務助手,我們的 Copilot Chat 都可以提供幫助。我們認爲,從示例應用下載和生成會有很多好處。
改善用戶體驗:通過提供個性化幫助和自然語言處理,您自己的聊天機器人可以改善客戶、學生和員工的用戶體驗。用戶可以快速輕鬆地獲得所需的信息,而無需瀏覽複雜的網站或等待客戶服務代表的幫助。
提高效率: 通過處理客戶服務或人力資源任務的聊天機器人,您可以讓員工專注於需要人工干預的更復雜的任務。這可以提高組織的效率並降低成本。
個性化推薦:通過自然語言處理和持久內存存儲,您的聊天機器人可以爲產品、服務或教育資源提供個性化推薦。這可以提高客戶滿意度並推動銷售。
改進的可訪問性:通過語音識別和文件上傳,您的聊天機器人可以爲用戶提供更準確和個性化的幫助。例如,難以瀏覽網站的患者可以更輕鬆地使用聊天,並快速有效地接收所需的信息。
可擴展性:通過處理客戶服務或教育任務的聊天機器人,您可以輕鬆擴展以滿足不斷增長的需求,而無需僱用更多員工。這可以降低成本並增加收入。
總結
Semantic Kernel 支持快速開發用於編排企業中各種系統的內核。 要使用的模型是 Azure OpenAI 服務,它具有豐富的企業安全性,我們可以從Copilot Chat示例程序開始。
相關鏈接:
[1] 微軟365 Copilot: https://www.microsoft.com/en-us/microsoft-365/blog/2023/03/16/introducing-microsoft-365-copilot-a-whole-new-way-to-work/
[2]Copilot 聊天示例程序: https://devblogs.microsoft.com/semantic-kernel/announcing-copilot-chat/
[3]Microsoft Graph: https://learn.microsoft.com/graph/overview