机器人(Bot)

机器人是一个光看名字就让人很兴奋的技术,在经历过几十年的起起伏伏后,在过去的几年,人类社会加速进入了人工智能的时代,虽然很多地方还不完善,但基于大数据和机器学习构建出来的机器人解决方案忽如一夜春风来,在人们的工作和生活的各个方面都在逐渐发挥举足轻重的作用。

Microsoft Teams 内置支持机器人的能力,你可以基于微软的认知服务平台或者使用你所喜欢的任何框架和平台,在几分钟内就搭建出来一个机器人,并且将它添加到Teams中去使用。虽然要真正做一个非常完善的机器人是一个很长期(甚至可以说很困难)的过程,但只要恰当地利用这种能力,可以用少量的代价,来解决80%左右的重复性的工作,何乐而不为呢?

在Microsoft Teams中,机器人也分为两大类:

  1. 一类是个人机器人,它可以单独为某个用户安装,这个机器人就好像一个正常的联系人一样,你直接就可以跟它对话,进行交互。
  2. 另一类则是团队机器人,它需要安装在某个团队、群聊、会议工作区中,就好像一个团队成员一样。

下面我们分别来看一下他们的使用场景。

个人机器人

当你添加一个 ”个人机器人“,它就相当于是你的一个数字化助手一样,可以根据你的指令完成很多有意思的工作。典型的场景如下所示:

1,查询信息,例如知识库,订单记录等。这些知识库可以是预先定义好的,也可以动态查询网络或者数据库的。机器人可以回复简单的文字,也可以回复富文本(用Markdown语法定义),甚至带有一些可以进一步操作的按钮的形式让用户可以交互,提供多轮查询(上下文关联)的体验。通过导入某些预定义的特色知识库,还可以实现闲聊的场景呢。

查询知识库,多轮对话,富文本的场景

闲聊解闷的场景

2 ,收集信息或完成任务。机器人还可以用来收集用户输入信息,并且根据这些信息完成任务,这可能是更加有意义的场景。借助全新的自适应卡片(Adaptive Card)技术,机器人可以在回复消息时提供一个可供输入(或选择)的定制卡片界面,并且提供一个或者多个操作按钮。

这些卡片消息,可以是在你与机器人对话过程中,它被动地回复你的,也可以是由机器人主动地推送过来的通知,例如当外部的一个工作流程,需要某个用户人为的干预一下,提供必要的信息后继续下一步操作的情况。

这些卡片消息,是可以就地更新的,例如下图所示。

团队机器人

团队机器人在功能上其实跟个人机器人很类似,都可以查询信息和收集信息、完成操作。事实上,某些时候,同一个机器人,既可以作为个人机器人,也可以作为一个团队机器人,例如上面已经看到这个”Flow“的机器人。但它们之间有两个基本的区别:

  1. 团队机器人可以通过接口读取到当前团队的一些信息,例如成员列表等,然后可以基于此去设计一些有意思的场景。也正因为如此,团队机器人比较适合于需要团队成员共同参与的场景,而不仅仅是简单的处理单一信息。
  2. 团队机器人在团队中相当于一个普通的团队成员,所以如果用户需要跟这个机器人打交道,需要想呼唤其他团队成员一样,通过 @ (at) 这样的方式进行操作。

一个典型的场景是我们需要在团队对话中收集大家对某个活动安排的意见,我们可以使用 ”Polly“ 或者 ”Forms“ 等多个不同的机器人来完成这样的工作。

下图这个例子,我使用了 Forms 这个机器人(输入 @Forms 然后加上空格),按照一定格式的语法发出指令后,机器人会自动创建一个或多个可操作、且会更新的卡片,让当前团队所有成员都可以对自己满意的选项进行投票,并且实时看到最新的结果。

有些美中不足的地方,多个卡片分别在不同的对话中(如上图显示有三个消息),显得有些复杂。另外,如果一个人投票后,它看到的界面仍然有 “提交投票” 这个按钮,容易造成困扰。这个跟自适应卡片的设计有些关系,希望后面能继续完善改进吧。

与机器人的交互,除了通过上面的纯文本指令外,对于某些复杂的场景,可以借助任务模块(Task Module)的技术来弹出一个对话框,然后设计一个可视化的界面来完成配置。

点击上图的 ”创建新的投票“ 菜单,即可弹出下面的对话框。

这些菜单是由机器人开发者定义的。

同理,在群聊,会议聊天中,也都可以使用团队机器人,这里就不再赘述了。

results matching ""

    No results matching ""