0:00:01.609,0:00:09.010 Event[0]是我今年最喜欢的几个游戏之一。[br]我觉得它很有创意。 0:00:09.010,0:00:13.950 这是一个科幻游戏。内容是关于探索太空飞船、与一个叫做Kaizen的AI聊天。 0:00:13.950,0:00:19.071 每次你遇到电脑终端的时候,你都可以用键盘 0:00:19.071,0:00:25.171 输入任何你能想到的问题或者指令。AI助手会回答你的输入。 0:00:25.210,0:00:29.930 就像是一个Cleverbot(一个AI交流机器人)驱动的文字冒险。 0:00:29.930,0:00:34.480 还有一点Gone Home的感觉,但是有一些解密元素。还有一点Her Story里发掘秘密剧情 0:00:34.480,0:00:35.770 的感觉。 0:00:35.770,0:00:41.570 这个视频里,我会解释Kaizen的回答中的秘密。 0:00:41.570,0:00:47.100 我会解释这个机制是如何工作的,为什么这个机制有效,以及游戏中不足的部分。 0:00:47.100,0:00:52.300 如果你不知道Event[0]是什么游戏的话,你可以现在暂停这个视频,然后在Steam上找到这个游戏。 0:00:52.300,0:00:57.180 虽然对于一个较短的游戏来说有点贵,但是我觉得非常有趣。 0:00:57.190,0:01:02.460 如果你对AI、剧情和游戏的未来感兴趣的话,我强烈推荐这个游戏。 0:01:02.460,0:01:05.780 你玩完这个游戏之后,回到这个视频,我们会深度讨论这个游戏。 0:01:07.700,0:01:13.180 欢迎回来!我希望你像我一样喜欢Event[0]。不过我接下来要解释这个游戏的机制, 0:01:13.180,0:01:15.680 可能会破坏你对这游戏的印象。 0:01:15.680,0:01:20.460 Kaizen是开发者创造的假象,就像所有游戏AI一样。 0:01:20.460,0:01:26.020 开发者并不是打算让它通过图灵测试,而是想让它成为一个同伴、 0:01:26.020,0:01:30.600 或者一个敌人,具体的行为是根据玩家的行为决定的。我觉得它比较成功, 0:01:30.600,0:01:36.520 首先我们来看看Event[0]是怎么根据玩家的输入,输出有意义的回答。 0:01:36.520,0:01:42.729 我们了解它的原理,是因为Sergey Mohov的演讲和开发组面访里提到了, 0:01:42.729,0:01:47.490 而且还有人偷偷翻看了游戏的源代码。 0:01:47.490,0:01:51.750 我们输入一条消息,看看Kaizen是如何理解我们的消息的。 0:01:53.500,0:01:57.420 (我想知道其他乘客的位置)[br]首先,拼写检查器修正所有错别字。 0:01:57.420,0:02:01.140 然后,游戏会试着把消息中的词组与一个数据库里的标签匹配。 0:02:01.150,0:02:06.830 比如“乘客”会和“机组人员”标签匹配。类似可以与这个标签匹配的词还有 0:02:06.830,0:02:10.929 ”人类“、”旅客“、”人员“。 0:02:10.929,0:02:15.510 这些标签会与另外一个数据库匹配。这个数据里有所有Kaizen认识的标签的模式。 0:02:15.510,0:02:22.530 游戏会找到最接近的一个模式,然后AI会用它构造一个回答。 0:02:22.530,0:02:27.590 首先,AI检查当前的事件,比如玩家的位置、玩家之前看到的东西和玩家之前说的话。 0:02:27.590,0:02:33.180 这些信息给Kaizen记忆和语境。然后,游戏检查Kaizen的情感状态。 0:02:33.180,0:02:38.020 Kaizen对玩家有3个好感等级(喜欢、中立、厌恶), 0:02:38.020,0:02:42.720 还有三个压力等级(愤怒、紧张、平静),总计9种情感状态。 0:02:42.720,0:02:47.260 Kaizen根据输入、事件和情感状态生成一个可能的回答的列表,然后从中选择一个, 0:02:47.260,0:02:51.770 输出给玩家。最后,回答中有些词组会被随机替换成同义词, 0:02:51.770,0:02:56.330 这样AI就基本不会重复同一句句子。 0:02:56.330,0:03:01.130 这基本上就是这个游戏里AI生成回答的原理。游戏里还用到一些小技巧, 0:03:01.130,0:03:06.020 比如游戏把名词标签保存在Kaizen的短期记忆里, 0:03:06.020,0:03:11.130 如果你之前讨论到了Nandi,然后问”她是死了吗?“, 0:03:11.130,0:03:12.890 Kaizen会知道”她“指的是Nandi。 0:03:12.890,0:03:18.310 这是一个聪明然而简单的系统,不过还是花费了很多工作才实现的。 0:03:18.310,0:03:23.980 开发者Ocelot Society创造了所有玩家可能说的标签模式, 0:03:23.989,0:03:28.260 然后他们还给Kaizen写了不同情绪状态下的回答。 0:03:28.260,0:03:32.640 不过并不是每个回答都一定有9种情绪。 0:03:32.640,0:03:39.080 Event[0]的数据库里大概有1万个单词,上千个标签。 0:03:39.080,0:03:44.340 尽管如此,Kaizen还是有一些缺陷的。它有时候会误解你的意思, 0:03:44.340,0:03:48.830 有时候会输出奇怪的回答,有时候就干脆拒绝回答你的问题。 0:03:48.830,0:03:53.870 但是对我来说这些小问题并没有破坏游戏体验,因为开发者做了一个聪明的决定, 0:03:53.870,0:03:59.350 把这个技术交给了一个AI电脑,而不是一个人类角色。 0:03:59.350,0:04:04.760 早在2005年,Michael Mateas和Andrew Stern做了一个试验游戏叫Facade。 0:04:04.760,0:04:09.980 游戏里你可以输入任何句子,与一对争吵的夫妻对话。从技术上看, 0:04:09.980,0:04:15.019 Facade是比Event[0]复杂的。它有2个AI控制的角色, 0:04:15.019,0:04:19.620 而且还有复杂的情感状态、配音和面部表情。游戏其他的一些机制, 0:04:19.620,0:04:22.789 用来确保戏剧性的情节。 0:04:22.789,0:04:26.779 尽管如此,有些中还是有很多错误。如果一个人类角色说了一些奇怪的话, 0:04:26.779,0:04:31.449 就会完全破坏与真人对话的假象。Kaizen是一个机器人。 0:04:31.449,0:04:36.879 我们知道现在的机器人并不完美。就像Siri,如果我们问, 0:04:36.879,0:04:40.879 ”从伦敦到格拉斯哥的火车票多少钱?“ 0:04:40.880,0:04:45.199 ”大约13.6*10^16公里美元平方。“ 0:04:45.199,0:04:47.659 真是笨啊。 0:04:47.659,0:04:52.860 Kaizen很明显也不是每次都正确的。有时候文字会乱码,有些终端也是坏的。 0:04:52.860,0:04:58.169 它符合科幻片里常见的邪恶AI的比喻: 0:04:58.169,0:05:03.049 难以捉摸的回答,感觉像是Kaizen故意藏着东西不告诉你,实际上其实是Kaizen不知道如何回答。 0:05:03.049,0:05:07.939 还有这个飞船。Kaizen是这个飞船上的助手, 0:05:07.939,0:05:12.539 所以它只需要知道乘客的信息和船上你能看到的东西。 0:05:12.539,0:05:17.520 它并不知道长颈鹿是什么,也不知道莫桑比克的国家历史, 0:05:17.520,0:05:21.040 但是它非常了解折纸手工和客厅的桌球桌。 0:05:21.040,0:05:26.639 我们有一个正常运行的聊天机器人,我们暂且原谅它的错误。 0:05:26.639,0:05:31.830 我们需要用它做一个游戏。我觉得Event[0]在这里比较失败。 0:05:31.830,0:05:37.580 尽管开发者说他们移除了很多想法,比如资源管理和外星人敌人, 0:05:37.580,0:05:42.770 来把重点放在Kaizen上,游戏没有像你想象的一样, 0:05:42.770,0:05:44.139 完全从AI展开。 0:05:44.139,0:05:48.639 这个短暂的游戏里有几个谜题,但是大多数谜题都完全绕开了Kaizen, 0:05:48.639,0:05:53.499 侵入AI的系统玩小游戏,或者阅读终端上的日志, 0:05:53.499,0:05:56.250 让玩家找到线索。 0:05:56.250,0:06:01.580 这些并不需要一个复杂的聊天机器人。Kaizen最后感觉就像是一个提示系统, 0:06:01.580,0:06:04.860 是用来帮助玩家解决其他的谜题的。 0:06:04.860,0:06:09.409 游戏中比较突出的机制,是与AI建立关系, 0:06:09.409,0:06:13.749 控制它的情感,或者试图说服AI。一个让人难忘的场景是, 0:06:13.749,0:06:18.439 你离开飞船之后返回的时候,AI不让你进入飞船。你必须道歉,或者证明你是人类。 0:06:18.439,0:06:22.240 而且这时候你还在消耗着你的氧气。 0:06:22.240,0:06:27.020 这些场景很精妙,但是在游戏中出现的太少了,而且并不是很有深度。 0:06:27.020,0:06:32.179 而且游戏给你一个文本框,而不是一个列表选项,所以有时候你并不知道你需要说什么。 0:06:32.179,0:06:36.300 点击式冒险游戏Shivah里也有这种文本框。 0:06:36.300,0:06:41.580 想要解开谜题,你必须记住你听到的名字和地点, 0:06:41.580,0:06:43.710 然后输入到游戏的搜索引擎中。 0:06:43.710,0:06:48.499 Event[0]也许也可以这样,需要玩家找到机组人员的名字, 0:06:48.499,0:06:54.839 然后需要玩家问Kaizen ”Nandi是谁?“ 或者 ”Anele怎么了?“,它才会告诉你。 0:06:54.839,0:06:58.149 可是游戏里,Kaizen直接告诉了你这两个名字。 0:06:58.149,0:07:04.709 Event[0]的概念比游戏本身更有趣。游戏里的谜题比较弱。 0:07:04.709,0:07:08.819 第一次我在一个游戏里感受到与一个角色交流。 0:07:08.819,0:07:15.240 Kaizen基本能理解我说的话,它能理解自然语言, 0:07:15.240,0:07:19.490 它会根据情况和我的语言和改变心情。 0:07:19.490,0:07:25.240 在游戏AI的历史上,我觉得Event[0]算是在中间。比辐射4里选择对话强, 0:07:25.240,0:07:29.520 但比Westworld里Anthony Hopkins与机器人牛仔交谈弱一些。 0:07:29.520,0:07:32.720 COWBOT 5000:”让我们为白鞋女士干杯吧!“ 0:07:32.720,0:07:37.400 好吧,也许更接近辐射。当作是对未来的一瞥吧。 0:07:37.410,0:07:42.990 不过,我并不认为Event[0]的这个机制会被运用到主流游戏中。 0:07:42.990,0:07:47.409 原因之一,这种机制需要一个键盘。主机上没有键盘,因此无法玩此类游戏。 0:07:47.409,0:07:51.449 我觉得没人会想使用Kinect语音来和NPC交流。 0:07:51.449,0:07:55.029 玩家:”Liara,走!OMG“ 0:07:55.029,0:07:59.200 我们还是能从Event[0]学到一点的。你可以在游戏中让游戏角色实现 0:07:59.209,0:08:03.219 让人信服的、流畅的、自然的对话 —— 0:08:03.219,0:08:07.899 并不需要复杂的神经网络或者超级计算机。 0:08:07.899,0:08:12.959 你只需要一个大数据库,一些从互联网聊天机器人中得到的灵感, 0:08:12.959,0:08:15.639 和几个巴黎的聪明开发者。 0:08:19.179,0:08:24.240 感谢收看!有些人猜到了我会选择Event[0]作为我今年玩过的最有创意的游戏。 0:08:24.240,0:08:26.679 恭喜他们猜对了。 0:08:26.679,0:08:31.059 这是我2016年最后一个视频。 0:08:31.059,0:08:36.219 感谢所有人在2016年支持我的节目。感谢观众,订阅者,评论者,和所有上传外语字幕的人, 0:08:36.219,0:08:40.499 还有给我发送支持邮件的人,还有把我的视频分享到Facebook上的人。 0:08:40.500,0:08:41.420 谢谢你们。 0:08:41.420,0:08:47.100 还感谢每个在Patron上赞助我的人。在2017年我会全职制作这个系列视频。 0:08:47.100,0:08:51.060 这是个比较激动人心的消息。 0:08:51.060,0:08:56.120 特别感谢那些捐款5元或者更多的人。 0:08:56.120,0:08:57.360