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示例程序开始。

使用 Semantic Kernel 实现 Microsoft 365 Copilot 分析的更多相关文章

  1. Semantic Kernel 入门系列:🪄LLM的魔法

    ChatGPT 只是LLM 的小试牛刀,让人类能够看到的是机器智能对于语言系统的理解和掌握. 如果只是用来闲聊,而且只不过是将OpenAI的接口封装一下,那么市面上所有的ChatGPT的换皮应用都差不 ...

  2. Semantic Kernel 入门系列:📅 Planner 计划管理

    Semantic Kernel 的一个核心能力就是实现"目标导向"的AI应用. 目标导向 "目标导向"听起来是一个比较高大的词,但是却是实际生活中我们处理问题的 ...

  3. Semantic Kernel 知多少 | 开启面向AI编程新篇章

    引言 在ChatGPT 火热的当下, 即使没有上手亲自体验,想必也对ChatGPT的强大略有耳闻.当一些人在对ChatGPT犹犹豫豫之时,一些敏锐的企业主和开发者们已经急不可耐的开展基于ChatGPT ...

  4. Semantic Kernel 入门系列:🛸LLM降临的时代

    不论你是否关心,不可否认,AGI的时代即将到来了. 在这个突如其来的时代中,OpenAI的ChatGPT无疑处于浪潮之巅.而在ChatGPT背后,我们不能忽视的是LLM(Large Language ...

  5. Semantic Kernel 入门系列:🔥Kernel 内核和🧂Skills 技能

    理解了LLM的作用之后,如何才能构造出与LLM相结合的应用程序呢? 首先我们需要把LLM AI的能力和原生代码的能力区分开来,在Semantic Kernel(以下简称SK),LLM的能力称为 sem ...

  6. Semantic Kernel 入门系列:💬Semantic Function

    如果把提示词也算作一种代码的话,那么语义技能所带来的将会是全新编程方式,自然语言编程. 通常情况下一段prompt就可以构成一个Semantic Function,如此这般简单,如果我们提前可以组织好 ...

  7. Semantic Kernel 入门系列:💾Native Function

    语义的归语义,语法的归语法. 基础定义 最基本的Native Function定义只需要在方法上添加 SKFunction 的特性即可. using Microsoft.SemanticKernel. ...

  8. Semantic Kernel 入门系列:🥑突破提示词的限制

    无尽的上下文 LLM的语言理解和掌握能力在知识内容的解读和总结方面提供了强大的能力. 但是由于训练数据本身来自于公共领域,也就注定了无法在一些小众或者私有的领域能够足够的好的应答. 因此如何给LLM ...

  9. Semantic Kernel 入门系列:🥑Memory内存

    了解的运作原理之后,就可以开始使用Semantic Kernel来制作应用了. Semantic Kernel将embedding的功能封装到了Memory中,用来存储上下文信息,就好像电脑的内存一样 ...

  10. Semantic Kernel 入门系列:🍋Connector连接器

    当我们使用Native Function的时候,除了处理一些基本的逻辑操作之外,更多的还是需要进行外部数据源和服务的对接,要么是获取相关的数据,要么是保存输出结果.这一过程在Semantic Kern ...

随机推荐

  1. CAS无锁机制

    1. 背景 传统Synchronized锁:悲观,如果没有获取到锁的情况下,会让当前线程变为阻塞的状态,释放CPU执行权,效率非常低. 乐观锁(自旋):本质上没有锁,没有死锁现象,而且效率比较高,不会 ...

  2. 非常有用的python单行代码

    1 推导式应用 1.1 列表推导式(一行for循环) #For循环在一行 mylist = [200, 300, 400, 500] #正常方式 result = [] for x in mylist ...

  3. Linux shell字符操作总结

    各符号介绍 字符串长度统计 ${#string}: 字符串string的长度 字符串截取 ${string#*substring}: 从左到右截取特定字符substring第一次出现位置之后的字符串 ...

  4. Docker-应用部署案例

    1.Docker部署mysql 拉取mysql镜像 # 查询mysql镜像 docker search mysql # 拉取镜像命令 docker pull centos/mysql-57-cento ...

  5. jQuery下载步骤以及相关使用

    jQuery下载 进入相关网址执行下载操作,网址在这里:http://www.jq22.com/jquery-info122 进入页面之后,页面的左侧,会有这样的显示: 我们需要自主在这里选择自己需要 ...

  6. Spring--案例:测试业务层接口万次执行效率

    案例来袭 这样,并不能够分辨出哪个的效率是哪个 可以利用pjp进行这样的操作: 结果:

  7. 第六章 C控制语句:分支和跳转

    6.1if语句 程序 #define _CRT_SECURE_NO_WARNINGS 1 //coladays.c -- 求出温度低于零度的天数 #include<stdio.h> int ...

  8. Jan Ozer:高清直播互动场景下的硬编码如何选型?

    前言 高清直播逐渐普及,硬编码也成为大势所趋.在 RTE 2022 大会上,来自 NETINT 的 Jan Ozer 通过一系列的对比测试结果,详细分享了如何为高清直播互动场景进行硬编码的技术选型. ...

  9. 如何针对海外不同地区进行音视频自动化测试?丨Dev for Dev 专栏

    近年来由于全球性的新冠疫情,世界各地对实时音视频的需求猛增.不同国家和地区由于经济发展.国家政策等原因,网络环境有很大不同,如果要做好音视频体验,就需要分地域进行音视频指标测试.但是不论是外包,还是云 ...

  10. 声网 MetaKTV 技术揭秘之“声临其境”:3D 空间音效+空气衰减+人声模糊

    声网近期发布了"MetaChat 元语聊"."MetaKTV"解决方案,致力于提供一种全新的元宇宙互动社交.K 歌方式,其中都提到了"3D 空间音频& ...