[人工智能]
本文编译自:BBCnewslabs
一些新闻机构正在投入大量的自动化写作,而另一些新闻机构正在通过自动化的消息类用户界面传递内容。Facebook,Slack和Telegram打开了强大的API来构建各种新的交付方式,而BBC新闻实验室已经与三个平台Facebook,Twitter和Telegram合作,通过API接口方式分发其机器人服务和新闻内容。
BBC Messenger 新闻机器人
BBC Mundo与Facebook Messenger合作旅程的第一站是Lei He's Facebook 机器人,利用Facebook发布的Messenger API,机器人通过自动化消息与用户进行沟通。西班牙语是世界上最广泛使用的语言之一,所以BBC Mundo及其充满热情的社交媒体团队成为机器人实验的起点,而Facebook Messenger来自世界上最大的社交媒体平台之一,我们都认为这样的合作是一个巨大的新机会。
我们发现Messenger将通过新发布的API来启用机器人,我们开始思考是否可以使用这个功能来接触更广泛的用户,他们可能不会来到BBC的网站,或者想要在Messenger平台里找寻更方便的新闻获取方式。
该机器人允许用户阅读并订阅Messenger应用程序中的BBC Mundo热门事件,并获得自动回复,订阅者将获得每日两次更新。除了自动化的消息之外,它还允许BBC Mundo编辑人员向订阅者手动推送突发新闻。
虽然我们一直在尝试使用文字到语音技术和人工智能服务,但我们的Mundo bot具有非常基本的功能。用户可以看到四个命令:
1. 订阅。这使得机器人允许每天通过新闻头条发送通知。
2. 获取故事。当用户请求新闻时,他们会收到到BBC Mundo顶级故事链接的转盘。他们可以选择与Messenger中的朋友分享故事,或阅读BBC网站上的全文。他们还可以向机器人询问更多的故事,这些故事会自动生成一批新的链接。
3. 得到帮助。即使我们试图保持简单,我们希望为用户提供指示,以防他们感到失落。当用户键入“Ayuda”时,会显示四个命令选项的说明,以及可用于访问Mundo团队成员的电子邮件地址。
4. 取消订阅。此命令停止从机器人的推送通知。
我们决定保持机器人简单因为我们意识到从活动和快速原型会话,用户并不总是知道如何与由AI驱动的“智能机器人”进行交互。其他的新闻机构为他们的实验机器人创建了独立的项目页面,而我们的则有260万的关注者,当他们向我们的Mundo Facebook页面发送消息时,他们会直接与之互动。此外,我们还担心黑盒算法和有偏见的分发平台,因此我们想给用户提供清晰、简单的命令来控制他们接收到的新闻。
我们与Dario Ramalho,BBC news的UX设计师以及爱德华·怀特,设计了最好的机器人体验,并为交互设定了正确的基调。以下是我们关注用户体验的一些方法:
1. 机器人的问候消息清楚地说明了机器人的功能,使我们的用户知道预期。
2. 我们通过名称来对用户进行个性化处理。
3. 我们考虑到可能的打字错误。例如,用户仍然会收到新闻报道的总结,无论他们是否输入“noticias”或“noticisa”。
4. 我们多样化通知消息,因此用户每天都不会收到完全相同的措辞。我们希望这样使互动更自然和更有吸引力。
工作原理:
用户在他们的移动/ Web端Messenger应用程序上发送消息,该消息通过Facebook的内部API路由到我们的机器人服务以进行响应。我们的机器人服务将响应发送给提供给我们的特殊回叫网址。
下一步计划:
1. 我们想使用机器学习技术,并使用Wit.ai 机器人引擎(一种将自然语言转换为可操作数据的API)训练我们的机器人。通过实现这一点,我们希望能够与用户建立更个性化的信息,更好更有效的沟通。
2. 假设人们会问我们的机器人关于某个话题的消息。我们想利用BBC新闻已经具备的主题标签系统来提取关于某个主题的最新或最热的文章 - 例如,如果有人说“告诉我关于戴维·卡梅隆”,我们可以拉起最近有一篇关于他的文章。
3. 如果BBC Mundo Messenger机器人被证明是成功的话,我们可能会将机器人扩展到其他BBC World Service语言。
我们计划与世界服务团队合作,引入更多的度量标准,比如哪些文章是最受关注的,以及用户在与机器人交互时阅读了多少文章。我们希望这能教会我们更多关于观众行为和偏好的信息,然后我们就可以应用到机器人的未来工作中去。
现在,我们高兴地看到,我们的新闻机器人可以利用最常用的消息传递平台之一(总共10亿个用户,每月大约11%的世界人口使用)和最大数量的对话者交流,它直接解决了世界服务的目标,那就是扩大覆盖面和获取新闻。
我们面临的挑战是让机器人的个性化,并以正确的语气构建信息,使他们感到自然和人性化。
我们加入了欧盟的公民投票工作,以开发人员的一套工具为基础提供了投票成果的交付服务,是视觉新闻团队的Paul Sargeant和新闻实验室的Jacqui Maher之间的一次精彩合作。
公民投票结果的晚上,由结果数据馈送触发的每个局部区域的动画图像被生成并显示在电视上,生成这些动画的服务器也被设置为拍摄每个动画的静止图像并将其保存到共享文件夹。除了其他相关工作,新闻实验室还参与了另一个方面:视觉新闻团队致力于在@BBCRe投票twitter帐户里分享每个图像并附带一个简短的摘要。手动执行这样做会耗费时间,很明显需要尝试一些自动化。新闻实验室响应编辑的需求,编写了能够处理每个图像,并为每个结果自动构建摘要的机器人。
面临的挑战:
任何生成句子的代码,特别是对于这样一个非常重要的投票,都可能出现错误,所以我们尽力避免误导社交媒体。在尝试构建推文之前,除了存在于“tweetable”目录中,计数区域的图像状态已被验证为“处理”。但不仅这样,在此基础上我们还需检查:
1. 通过GSSID查找数据库中计数区的名称长度正确,短期,中期或长期的变化应该都提前存在。如果在数据库中找不到名称,那么只需简单地将其从映像文件名中解析出来。
2. 该地区的结果值是空白的,换句话说,这是该地点首次报告的结果 。如果没有,并且传入的结果已经改变 - 例如从LEAVE到REMAIN,则会发出几个警报。该地区的状态将被设置为“翻转”,其先前报告的结果存储为“past_result”,传入的结果取代了较早的结果,最重要的是,任何内容都不会被推送。这种情况是不太可能的,需要可以合理整理并做出决定的人进行人为干预。
3. 如果传入的结果与以前报告的结果相同 - 例如,它是REMAIN,仍然是REMAIN,我们会将该地区的状态更新为“更新”,因为这种情况通常意味着我们的一个来源发出更准确的数据。为了问责的缘故,我们将之前的结果和结果存储起来就像“翻转”的情景一样,以便非常清楚,这不是一个领域的第一个结果报告。最后,如果这确实是第一个结果报告,我们将其状态设置为“新”
Telegram
无论是政府还是其他方式,我们如何在BBC被审查或阻止的地方接触受众?我们注意到Telegram是乌兹别克斯坦最受欢迎的消息应用程序,但这里BBC被阻止。当Telegram发布其Bot API时,我们意识到就在这个平台上有机会以自动方式分发我们的报道。
该项目有两个主要组成部分:一是机器人本身,通过API与Telegram集成,处理来自平台用户的消息,创建一个能够响应基本静态文本回复命令的Telegram机器人需要编写相当数量的代码。因此,我们构建了一个友好的基于Web的管理,我们的编辑器可以使用一系列自定义命令和功能来配置机器人。每个机器人都与我们的一项语言服务相关联,而这些服务又有一系列的RSS提要,主要是围绕着各个部分和主题进行的。
我们的Web管理员支持多种类型的命令。订阅:向注册用户发送每日文章摘要;取消订阅:允许用户管理收到的摘要;按需新闻:立即发送最新文章;简单的文本:向用户发送消息,实时更改。
面临的挑战:
安全;易于配置 - 例如,提出了诸如“命令类型”之类的东西来封装“订阅”请求中涉及的所有内容;强大的,快速的幕后机器人服务,可实时获取配置更改;可扩展性和可靠性;针对移动目标开发(电报API随内部供给更改而变化);集成到BBC生产流水线,特别是部署平台,流程和工具;该项目还推动了新闻实验室从粗糙的原型转变为生产就绪应用程序的专业知识,将其集成到BBC部署工具和流程中。