聊天机器人有了长期记忆,遇到不懂的还能上网搜索,网友:像极了不懂装懂时偷偷百度的我...

QbitAl QbitAl     2022-12-07     742

关键词:

梦晨 发自 凹非寺
量子位 报道 | 公众号 QbitAI

聊天机器人一直是人工智障的代表。

尽管从GPT-3开始,AI生成的文本已经能做到以假乱真,但这仅限于生成一段话。

连续聊天中,AI不会记得自己之前说过的话,就像下面这样:

AI这种前后矛盾的表现,在人类看来就是没有稳定的身份个性,好像聊着聊着换人了,也难怪一直被当作人工智障。

现在,Facebook AI团队终于推出BlenderBot2.0,在1.0基础上添加了长期记忆即时搜索功能。

首先要记住自己说过的话:

记下自己说过的“我喜欢很多种音乐”,和“Kanye West是我最喜欢的说唱歌手”这样的信息,避免后续聊天中出现矛盾。

人类说的话也要记住,比如最喜欢的专辑:

最后,如果人类提到了AI不知道的东西怎么办?

趁没人发现悄悄去网上搜索,还能把搜出来的信息显摆出来:

查到对方喜欢的艺人Beyonce的出生地,并用“我去过那里几次”接上对话。

是不是像极了在群里聊天吹水时偷偷百度的你?

如何告别智障

Facebook AI去年发布的BlenderBot1.0就已经做到了94亿参数,在单轮对话生成上取得了出色的效果。

这次升级的重点是一个检索增强算法,能从过去对话记忆和互联网上的资料中提取出能用在当前对话的信息。

对于训练数据,Facebook在众包平台上发布了任务。

让参与者在对话中扮演一个特定的人格,并隔几小时、隔几天对同一个话题进行讨论,收集成多轮对话数据集。

AI从网上搜索资料并用于聊天的能力,也是从人类那里学来的。

同样是在众包平台上,这次的任务是让一个人描述自己的兴趣开启话题,另一个人可以上网搜索并接上对话。

这样AI不仅能学到人类在面对不同话题的适合搜索什么关键词,还能学到最后什么样的信息可以用在聊天上。

实验结果上,BlenderBot2.0对之前对话内容的使用率提高了55%,在对话中的事实一致性提高了12%,而人类评估员打出的分数提高了17%

能上网搜索信息还让AI能够参与人类世界中最新的话题,比如谈论新上映的电视剧。

如果和BlenderBot1.0聊起今年新片《旺达幻视》,他只能说我没看过,这天就聊死了。

Blender2.0就可以搜索后说出片中最喜欢的角色是谁,让人更有把对话继续下去的欲望。

AI的记忆不再静止于它完成训练的那一刻。

LeCun点赞,马斯克担忧它的三观

三巨头之一的LeCun第一时间转发了BlenderBot2.0并评价为“首个能对任意话题Hold住多轮对话的聊天机器人”

马斯克所担心的,是AI从开放互联网上获取信息很快会变得三观不正

他举的例子是微软推出的Tay机器人在16小时左右就被网友聊成了纳粹支持者,最后被迫下架。

对于和AI讨论“最喜欢的作品”这回事,有人表现出了不信任:

AI不会喜欢某个作品,只是自动把最流行的作品当成最好的,和网上追逐热点的大多数人一样。

有人看出了潜在的隐私风险:

你们说让AI上网搜索,不会是在Facebook上搜索我发的帖子吧。

如果你感兴趣,可以到Facebook的Parlai平台下载模型和它聊聊看。

开源项目地址:
https://parl.ai/projects/blenderbot2/

相关论文:
[1]https://github.com/facebookresearch/ParlAI/blob/master/projects/sea/Internet_Augmented_Dialogue.pdf
[2]https://github.com/facebookresearch/ParlAI/blob/master/projects/msc/msc.pdf

参考链接:
[1]https://ai.facebook.com/blog/blender-bot-2-an-open-source-chatbot-that-builds-long-term-memory-and-searches-the-internet

递归(字符串)遇到一个不懂的问题

defreverse_s(s):iflen(s)<=1:returnselse:#如果只写s[1:],只能返回n,returnreverse_s(s[1:])+s[0]s="ilikepython"printreverse_s(s) 查看详情

遇到不懂的,摘抄了好的文章

一、getchar的两点总结:1.  getchar是以行为单位进行存取的。    当用getchar进行输入时,如果输入的第一个字符为有效字符(即输入是文件结束符EOF,Windows下为组合键Ctrl+Z,Unix/Linux下为组合键Ctrl+D),那么只有... 查看详情

原码反码补码详解!不懂的请看过来!(转)

本篇文章讲解了计算机的原码、反码和补码,并且进行了深入探求了为何要使用反码和补码,以及更进一步的论证了为何可以用反码、补码的加法去计算原码的减法。论证部分如有不对的地方请各位牛人帮忙指正!希望本文对大... 查看详情

关闭了5g消息,还能使用聊天机器人(chatbot)吗?给聊天机器人(chatbot)发短信是不是会

用户关闭5G消息后,不能使用聊天机器人(Chatbot)。如果前期已经用过的聊天机器人(Chatbot),会在短信列表内,但是即使给聊天机器人(Chatbot)发送消息成功,也无法收到聊天机器人(Chatbot)回复。即可以查看历史消息,不可以进行新... 查看详情

高手请进!如何利用openvpn共享上网?

...一台机器通过内网连接另外一台可以连接外网的机器共享上网。望专业人士分析下可行性,以及实现的步骤。谢谢啦!1、在内网机器上安装openvpn作为服务端2、在本机上安装客户端3、在内网机器上设置ip转发和nat转发具体的,网... 查看详情

uva10599lisdp,记忆化搜索

...599题意:  给出r*c的网格,其中有些格子里面有垃圾,机器人从左上角移动到右下角,只能向右或向下移动。问机器人能清扫最多多少个含有垃圾的格子,有多少中方案,输出其中一种方案的格子编号。格子编号是从左上角第... 查看详情

对于编程和软件工程我还不懂的问题

VSCode里Git有什么用?百科:“分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(gitclone),在本地机器上拷贝一个完整的Git仓库。”网博:“用了git最方便的就是比如在公司写了很多代码后回到... 查看详情

centos内网机器利用iptables共享公网ip上网(代码片段)

...上。但是每次都这样搞太麻烦了。于是想到了iptables桥接上网。搜了下,来源于网络。不知道出处。所 查看详情

如何提高学习效率?

...习时的干扰。在使用电脑学习时,不要开QQ、微信之类的聊天工具,最大限度的减少网络干扰。手机最好也关掉或改为静音,放在不被打扰的地方。清理桌面,把能干扰你的东西都收起来。4.心烦的时候 查看详情

聊天机器人项目遇到的问题couldn'tresolveresource@id/visiblewhenusingtextinputlayout

解决方法:在colors.xml 或者 strings.xml中加两个item<?xmlversion="1.0"encoding="utf-8"?><resources><itemname="visible"type="id"/><itemname="masked"type="id"/></resources>  解 查看详情

hdu1978howmanyways(记忆化搜索)(代码片段)

这是一个简单的生存游戏,你控制一个机器人从一个棋盘的起始点(1,1)走到棋盘的终点(n,m)。游戏的规则描述如下:1.机器人一开始在棋盘的起始点并有起始点所标有的能量。2.机器人只能向右或者向下走,并且每走一步消耗一单... 查看详情

记忆化搜索(代码片段)

记忆化搜索什么是记忆化搜索?百度百科:算法上依然是搜索的流程,但是搜索到的一些解用动态规划的那种思想和模式作一些保存。个人理解:就是每求到一个状态就保存下来,下次再遇到这个状态直接调用即可它有什么好处... 查看详情

不懂的问题

...花了五天时间大致翻了一下这本书,说实话百分之七十都不懂,但是以下几个是我比较关注的问题。   第一:我们为什么要去构建之法现代软件工程?   第二:学习这门课对我们有什么帮助?   ... 查看详情

《学习之道》第三章工作记忆和长期记忆

  在大脑中对正在处理的信息进行瞬间以及有意识加工的这部分记忆,叫做工作记忆。  工作记忆只能容纳四个组块。要学习数学和科学知识,工作记忆非常重要。它就像大脑中的一块黑板,你在上面可以写写画画,记录那... 查看详情

搞不懂的github

...学渣来说,上这个英语网站真的是太“刺激”了,啥也看不懂,每点击一下之前,都得查查,真的是 查看详情

通过iptables实现共享上网及端口代理转发

...3:LAN网:10.0.0.200目标:虚拟机器2和3通过虚拟机器1共享上网操作步骤:以上完成,即可上网(共享上网,不需要开启防火墙)。目标:通过访问虚拟机器1的80端口,代理访问虚拟机2的nginx80端口操作步骤:此时,在浏览器上,... 查看详情

全网最详细中英文chatgpt-gpt-4示例文档-最强js助手聊天机器人应用从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)(代码片

...,让我们的工作更加高效。TOCChatGPT是目前最先进的AI聊天机器人,它能够理解图片和文字,生成流畅和有趣的回答。如果你想跟上AI时代的潮流,你一定要学会使用ChatGPT。如果你想了解OpenAI最新发布的GPT-4模型,以及它如何为Chat... 查看详情

一个不懂的段错误

testdwordptr[eax],eax;probepage.我在main里定义了a[2000][2000]=0,发现溢出情况,查找后发现: 这跟局部数组变量定义所分配的最大空间设置大小有关。局部变量的申请空间是存放于栈中,windows里默认栈内存是1M,所以当申请空间大于1M... 查看详情