两个人工智能聊天机器人走进酒吧:电视作家 Joe Toplyn 教聊天机器人讲笑话
已发表: 2023-07-07我们已经谈论了很多关于人工智能和聊天机器人的话题; 对工作场所和我们生活的影响,以及人类的未来。 但今天,我们问一个非常简单的问题:聊天机器人可以开玩笑吗?
长期以来,幽默一直被认为是人工智能系统难以掌握的。 它需要对文本进行深入的语义理解,并且依赖于上下文因素以及文化和社会的细微差别。 然而,这并没有阻止研究人员尝试教授人工智能笑话。 例如,Binsted 和 Ritchie 的工作,他们在 1994 年开发了一个程序,可以根据简单的双关语生成谜语(例如,“你可以穿哪种树?一件冷杉外套。”)。 或者 Matthews 和 Petrovic,他们使用无监督机器学习方法按照“我喜欢我的 X 就像我喜欢我的 Y、Z”结构来生成笑话,从而产生诸如“我喜欢我的咖啡就像我喜欢我的战争一样”这样的俏皮话。 寒冷的。” 或者“我喜欢我的孩子们就像我喜欢我的部门一样,很糟糕。”
今天的嘉宾乔·托普林(Joe Toplyn)是最有资格谈论这个话题的人之一。 乔不仅获得了工程和应用物理学学士学位以及工商管理硕士学位(均来自哈佛大学),而且还担任杰·雷诺《今夜秀》的联合首席编剧以及《晚间秀》的首席编剧。大卫莱特曼。 近二十年来,他编写并制作了数千个剧本、片段和笑话,这一经历激发了他的书《深夜电视喜剧写作》 ,他在书中剖析了笑话,并为他所谓的笑点制作者提出了秘诀。
如果有人要教计算机拥有真正的幽默感,那一定是乔。 他将自己的笑话知识与工程知识相结合,创建了 Witscript,这是一种由 GPT-3.5 提供支持的混合人工智能系统,专为在对话中即兴发挥笑话而设计。
在今天的播客节目中,乔·托普林(Joe Toplyn)带我们踏上一段旅程,了解他作为喜剧作家和教授聊天机器人喜剧艺术的经历。
以下是一些关键要点:
- 研究表明,人们在接触具有人类品质的技术时会感到更自在。 例如,拥有一个具有幽默感的机器人可以创造令人愉快的体验。 然而,为了用于客户服务,它们必须遵循时间、语气、内容以及与品牌形象的一致性方面的准则。
- Witscript 利用受深夜脱口秀独白启发的三部分笑话结构,通过选取任何初始主题、执行笑话编写算法并生成笑点。
- 该系统通过一系列提示来执行笑话编写算法的步骤,生成五个候选笑话,并选择它认为最有趣的一个。
- 像 Witscript 这样的工具对于各种类型的作家来说都很有价值,使他们能够快速产生大量的想法,并为笑话写作过程提供更有效的方法。
如果您喜欢我们的讨论,请查看我们播客的更多剧集。 您可以关注 Apple 播客、Spotify、YouTube 或在您选择的播放器中获取 RSS 源。 以下是该集经过轻微编辑的文字记录。
逆向工程喜剧
Liam Geraghty:您好,欢迎来到 Inside Intercom。 我是利亚姆·杰拉蒂。 在过去的几周里,我们一直在讨论聊天机器人和人工智能,但我没有问或什至没有想过问的一个问题是,聊天机器人可以有幽默感吗? 聊天机器人至少能讲个笑话吗? 好吧,我今天的嘉宾乔·托普林(Joe Toplyn)非常有资格回答这个问题。 他不仅获得了工程和应用物理学学士学位以及工商管理硕士学位(均来自哈佛大学),而且还是《杰·雷诺今夜秀》的联合首席编剧以及《大卫·莱特曼晚间秀》的首席编剧。 他目前是 Witscript 的首席幽默工程师,Witscript 是一个混合人工智能系统,用于在对话中即兴发挥笑话。 乔,非常欢迎你来到这个节目。
乔·托普林:谢谢你邀请我。 嗨,利亚姆。
Liam:那么让我们直接进入 Witscript。 它是什么?它最初是如何产生的?
Joe: Witscript 是一个用于生成笑话的混合人工智能系统。 它是一种神经符号混合体,这意味着它结合了符号系统,该符号系统由我作为人类喜剧作家创建的笑话编写算法组成,并将这些算法与大型语言模型(即神经部分)结合起来。 所以基本上,你给它一个句子,它认为这是一个笑话的主题,它使用 GPT 3.5 来执行一个笑话编写算法中的步骤——实际上,这是我根据我的经验创建的几个笑话编写算法作为一名喜剧作家。
“好吧,作者用这些话做了什么来博人一笑? 作者是如何从主题句、笑话的主题,到角度和笑点的?”
利亚姆:我猜你是在这两件事碰撞在一起的背景下想出这个主意的。 其背后的工程和喜剧之间是如此具体。
乔:是的,我被邀请教授喜剧写作,我决定人们愿意听我谈论如何为大卫·莱特曼和杰·雷诺节目等深夜喜剧节目写作。 为此,我必须弄清楚如何写喜剧,如何写笑话、案头作品和草图,因为一旦我知道自己是如何做到的,我就可以教其他人这样做。 所以我想出了一个课程大纲,在这个过程中,我认真思考了人类如何写笑话,因为笑话是深夜喜剧谈话中许多其他短片喜剧作品的基石展示。 以前没有人真正这样做过。 我做了很多研究,读了很多书,但没有人有一套系统或秘诀来写出深夜喜剧独白中的那种笑话。
所以,我读了很多笑话并对它们进行了逆向工程。 我看着他们说:“好吧,作者用这些话做了什么来博人一笑? 作者是如何从主题句、笑话的主题,到角度和笑点的?” 我还考虑了自己写笑话的过程。 当我想写一个笑话时我的大脑会做什么? 我读新闻时说:“好吧,我必须想出笑话,因为这就是我拿钱做的事。 我该如何完成这项任务?” 所以我把这个过程简化为一堆食谱。 我称他们为笑点制造者——还涉及其他技巧——向学生们教授这一点,并最终决定可能还有其他人对我所说的感兴趣。
“最终,我决定,如果有人要教计算机拥有幽默感,那一定是我了”
因此,我写了一本书, 《深夜电视喜剧写作》 。 所有的算法都在那里。 人们正在购买它,我问自己,还有谁可能对书中的内容感兴趣? 我做了一些研究,发现有一个叫做“计算幽默”的学术领域。 我想,“哦,这很有趣。” 这是一个相当新的领域。 它只存在了大约20年。 我开始联系该领域的研究人员,介绍我的书,并说:“好吧,你可能对一本解释人类如何写笑话的书感兴趣,因为那样你也许可以教计算机这样做。”
我取得了一点进步,但进展不够快。 最终,我决定,如果有人要教计算机拥有幽默感,那一定是我了。 那时,人工智能工具开始发挥作用。 几年前,IBM 的 Watson 在电视节目 Jeopardy 中击败了人类,这是人工智能以及计算机使用语言的能力的一个重要里程碑。 我读了一篇相关论文,并认为如果沃森能够通过执行这些任务来击败处于危险之中的人类,那么它就可以写一个笑话,因为它使用了很多相同的任务。 这给了我鼓励。 然后,文本生成器开始出现,Word2Vec、词嵌入、向量空间,我使用了我所拥有的一切工具来想出一种非常粗略的方法来生成涉及双关语的笑话。
然后,人工智能工具变得越来越复杂。 当我得到一个更有才华的工具时,我会将它合并到 Witscript 软件中。 然后,大约一年半前,GPT-3 出来了,然后是 3.5,我尝试了一下并说:“这真的很棒。 与我以前使用的方法相比,这是一种执行笑话编写算法步骤更简单、更有效的方法。” 所以我插入了 GPT-3.5,这就是 Witscript 现在的样子。 这是一种使用我现在可以访问的最新、最有用的大型语言模型来编写笑话的方法。
俏皮地说
利亚姆:那太好了。 为什么聊天机器人在聊天时需要能够生成原创的相关笑话?
乔:有大量研究表明,如果聊天机器人等技术看起来更像人类,人们会更舒服地与它们互动。 让聊天机器人变得更像人类的一种方法是赋予它幽默感,让它能够识别并即兴发挥笑话。 因此,在适当的情况下,聊天机器人可以根据用户所说的内容在适当的时间偶尔讲一个笑话,这会让用户放松,让他们更舒服,体验更愉快。 因此,在这种情况下,聊天机器人拥有幽默感可能会很有用。
“你能让聊天机器人知道讲笑话的适当时间吗? 如果有一个愤怒的用户对着聊天机器人尖叫,开玩笑可能不是一个好主意”
像 Witscript 这样的系统也可以被那些只想写笑话的人使用——喜剧作家或在社交媒体上看到一些东西并想说一些有趣的东西的人。 该人不一定具备快速写笑话的能力,或者不想聘请喜剧作家来写笑话,因此他们可以使用 Witscript 来想出一个笑话,并将其用于该人需要该笑话的任何地方例如,进行一次演讲,或者为产品或类似的东西想出一个口号。
Liam:除此之外,您认为 Witscript 可以应用于哪些领域? 这样的东西可以用于客户服务聊天机器人吗?
乔:绝对有可能。 您能让聊天机器人知道讲笑话的适当时间吗? 如果有一个愤怒的用户对着聊天机器人尖叫,开玩笑可能不是一个好主意。 另一个因素是确保笑话合适。 如果它完全自己产生一个笑话,没有人为策划,你必须确保有一定的指导方针,并且这个笑话会被观众接受。
“如果该品牌有一个有趣的角色,你可能会说可以通过添加像 Witscript 这样的幽默模块来改进聊天机器人或使其更有趣”
只要我一直在测试 Witscript,它就从来没有真正想出过一个涉及爱希特勒或类似内容的笑话。 GPT-3.5 是在整个互联网、书籍和维基百科上进行训练的,因此 Witscript 对拜登总统或唐纳德·特朗普的看法基本上是每个人对拜登和特朗普看法的平均值,这使得它提出的笑话相当安全且普遍可接受。
另一个需要考虑的因素是聊天机器人所代表的品牌。 如果该品牌具有有趣的角色,您可能会说可以通过添加像 Witscript 这样的幽默模块来改进聊天机器人或使其更有趣。
Witscript 的对话幽默秘诀
利亚姆:任何深夜脱口秀的标志性部分之一就是独白。 独白笑话是 Witscript 笑话的典范。 为什么对话要用独白笑话?
乔:因为独白笑话的结构是主题、角度和妙语。 主题是笑话所基于的句子。 对于深夜脱口秀来说,它就是新闻。 角度是笑话到达笑点的方向,而笑点是观众突然解决的最后的不协调之处。 这就是产生笑声的原因。
Witscript 的灵感之一是,当你在对话中即兴讲一个笑话时,基本上就会发生这种结构。 你的朋友对你说了一些话——这可能是一个笑话的主题。 作为喜剧作家或笑话即兴创作者,您所要做的就是接受该主题并执行深夜喜剧节目作家根据该主题创建笑话所采用的笑话编写算法的步骤。 喜剧节目独白中的新闻主题与当有人对你说一句话时你会得到的设置相同。
“当我调试系统时,我试图弄清楚,‘好吧,为什么这些笑话不更有趣呢?’ 我可以说,‘好吧,它选择了错误的主题句柄。 我必须调整那个提示'”
Liam: Witscript 如何执行您在基本笑话编写算法中讨论的所有步骤?
乔:这是一系列七八个提示。 用户给出输入——它可以是一条新闻或一个有趣的观察结果,然后 Witscript 将其视为笑话的潜在主题。 然后,几乎从字面上看,该程序对我用作 Witscript 框架的人类笑话编写算法中的每一步都有提示。 例如,第一步是选择两个主题句柄。 主题句柄是主题中两个最重要的名词或名词短语。 写笑话的第一步是识别那些——这是大型语言模型可以做的事情。 你可以给GPT-3.5一个提示,“这个话题中最有趣的两个名词和名词短语是什么?” 它将执行该步骤。 这些主题句柄将进入笑话编写过程的下一步。
该过程的通用术语是提示链接——您得到的一个提示的输出将成为下一个提示的输入。 这是一系列步骤,使得系统非常透明。 当我调试系统时,我试图弄清楚,“好吧,为什么这些笑话不更有趣呢?” 我可以说:“好吧,它选择了错误的主题句柄。 我必须调整这个提示,”或者,“它为汤姆·克鲁斯产生的联想并不是我作为一名喜剧作家所关注的。 我怎样才能更好地联想到该提示?” 这只是一系列的即时设计以及调整和调整所有这些小杠杆。
“我可以依靠该系统不仅生成可能的妙语,还可以提出作为最终选择的妙语”
利亚姆:这很有趣。 系统如何评价自身? 它如何确定什么是好笑话?
乔:该系统的工作原理是生成五个候选笑话。 我有五种不同的技巧来想出潜在的妙语,作为一个人,我在写笑话时使用这些技巧,现在 Witscript 使用它们。 您可以看到五个候选笑话 - A、B、C、D、E。然后,它会选择它认为最有趣的候选笑话。 这正是我要求 GPT-3.5 做的事情。 机器认为什么对用户来说最有趣? 这也是一个很大的启示。 我可以依靠该系统不仅生成可能的妙语,还可以提出作为最终选择的妙语。 如果是在对话系统中,它无法向用户快速说出五个潜在的笑话并说“你选一个”,它必须选择一个然后传递。
看着这五个人并说:“哦,有趣。 这种做法就产生了那个笑话。” 很多时候,这根本不是一个笑话——这是特定算法的输出。 这很有帮助,因为如果您是喜剧作家,您可能不喜欢 Witscript 提供的最终选择。 你可能比 E 更喜欢 B。或者你可以拿 B 来改变这个词,那将是一个很好的笑话。 该系统还可以成为一个非常有用的写作助手,帮助您想出自己的笑话。
利亚姆:是的,我想说在那种情况下它是完美的,你可以稍微调整一下。 您能给我们举一些 Witscript 的笑话吗? 你是否将它们与你可能写的笑话进行了比较,并要求人们盲目地说哪个是哪个?
Joe:是的,我每天都会在 Twitter 上发布 Witscript 写的笑话。 让我读一下最近的一些内容。 这是我昨天发的一篇。 用户说:“今天是全国甜甜圈日,Krispy Kreme 提供免费甜甜圈。” Witscript 说:“为全国腹泻日做好准备。” 甜甜圈会导致腹泻。 我确实查了一下。 是的,它们确实是因为脂肪和糖。 另一条消息是,“Netflix 股东投票反对为公司高管提供巨额薪酬方案。” Witscript 说:“好吧,我想他们只能看 Netflix 放松一下。” 这些笑话与输入直接相关且上下文相关。
喜剧演员的工具箱
利亚姆:喜剧写作真是太迷人了。 关于艺术和人工智能有更广泛的讨论,我想这是你当时写作时会使用的东西? 有些人可能会对这样的事情产生抵触。
“我可以很容易地看到一个作家使用 Witscript 输入当天的新闻并说,‘好吧,给我一些想法’”
乔:深夜脱口秀节目中的独白作家的工作量很大,尤其是在《今夜秀》中为杰·雷诺工作。 他会做一个 30 个笑话的独白,这意味着编剧人员每天必须想出数百个笑话。 在那种数量和质量都重要的情况下,我很容易看到一个作家使用 Witscript 输入当天的新闻并说:“好吧,给我一些想法。” 有些笑话的字面意思是完美的,你根本不需要改变它们; 他们可以直接播出。 有些需要人类做一些工作,有些则毫无用处,但你可以忽略它们。 我可以看到专业作家,当然还有非专业作家使用 Witscript,但可能不承认这一点。 如果您是专业人士,您可能不会承认您正在从机器获得帮助。
几年前,有一个名为 Idea Fisher 的程序,一些喜剧作家使用它。 你基本上输入了像圣诞节这样的词,它就会给你带来很多联想。 当你想到圣诞节时你会想到什么? 圣诞颂歌,圣诞老人,北极,精灵。 写笑话过程的一部分就是建立关联。 我们在莱特曼秀上列出的十大名单之一是“十大圣诞老人最讨厌的事情”。 因此,拥有一个关联列表会很有用。 当你想到圣诞老人时你会想到什么? 然后就是关于红鼻子驯鹿鲁道夫和节日水果蛋糕或从烟囱下去的笑话。 这是软件如何帮助专业笑话作家的早期例子。 我认为这只是它的延伸。 我就是这样被介绍给Idea Fisher的。 有人说:“哦,这是我用的东西。” 因为,作为一个人,你无论如何都会这么做。 这只是一种更简单的方法。
利亚姆:我猜如果你现在正在为深夜脱口秀节目写独白,你会花很多时间写关于人工智能和聊天机器人的笑话。
乔:是的。 这是 Witscript 写的一篇相关文章。 该用户表示,“科技专家警告人工智能给人类带来灭绝的风险。” Witscript 表示:“如果我们能够利用人工智能来找出摆脱人工智能的方法就好了。” 这是另一则消息,“微软总裁表示,他预计美国政府今年将监管人工智能。” Witscript 表示:“别担心,政府会像监管其他一切一样监管人工智能。” 所以,很好的笑话。 如果你要为喜剧节目讲笑话的话,当然是可以推销的。
“有时我会就一个主题写一个笑话,将同一主题交给 Witscript,Witscript 会有自己的看法”
利亚姆:当然。 Witscript 现在在哪里? 您认为它的未来在哪里?
Joe:我仍在进行一些内部测试和调整。 它处于有限的 Beta 测试模式。 下一步是找出允许个人访问它的最佳方法,这意味着想出一种方法来跟踪用户并处理付款等类似的事情。 我正在探索有效地做到这一点的方法,以便将其交到可以使用它的人手中。
Liam:人们可以去哪里了解最新动态并了解更多相关信息?
乔:你可以访问 witscript.com。 如果您想查看 Witscript 的最新输出,请访问 Twitter @witscript。 您可以查看 Witscript 对当天新闻的看法。 我还写笑话并将其发布在 Twitter 上。 @joetoplyn 是我的 Twitter 账号。 有时我会就一个主题写一个笑话,将同一主题交给 Witscript,Witscript 会有自己的看法。
利亚姆:太棒了。 紧接着,我就关注你和 Witscript。 我们现在都可以在时间表中再讲几个笑话。 乔,非常感谢你今天加入我的行列。
乔:谢谢你,利亚姆。 这很有趣。