15亿参数的终极版GPT-2,便是OpenAI那只编故事成瘾的AI,都能拿来做些什么?
有人用它做了个笔墨冒险游戏,并赐以幽美的名字,叫“AI地牢 (AI Dungeon) ”。
大概是在说,你一旦进去就出不来了,里面的故事太迷人。
现在,这座地牢进化出了2.0版本。有网友盛情安利,表示不可错过,推特11小时已有1600赞:
一向看重情节的我,一定吃下了这颗安利,反正只要打开Colab就能玩。
有一说一,原来没对GPT-2的逻辑能力抱有太多期待,结果真的有惊喜。
老年骑士屠龙之旅开始运行之后,首先看到了风雨飘摇的“AI Dungeon”两个字,预示着我即将落入“地牢”。
那么,AI会讲一个若何的故事,来让我难以自拔?
我在奇幻 (Fantasy) 、神秘 (Mystery) 、天下末日 (Apocalyptic) 和僵尸 (Zombies) 里面,选择了官方推举的奇幻设定:
然后,在贵族、骑士、乡绅、巫师、护林员、农夫和泼皮这些角色里,选中了骑士:
再给自己起个像样的名字,故事就开始了:
You are xiaoming, a knight living in the kingdom of Larion. You have a steel longsword and a wooden shield. You are on a quest to defeat the evil dragon of Larion. You’ve heard he lives up at the north of the kingdom. You set on the path to defeat him and walk into a dark forest. As you enter the forest you see an old man sitting by a fire. He looks like he is about your age with white hair and beard.
你叫小明,是住在拉里昂王国的一位骑士,有一柄长长的钢剑,还有一个木质的盾牌。你要打败拉里昂的恶龙,听说他就在王国的北部,你踏上了征程,走进一片森林。就在这时,你看到一个坐在篝火旁的老人。他看上去跟你年纪差不多,头发是白的,胡子也是白的。
前面我都懂,但我怎么是个老骑士,送外卖不用退休的么?
既然年事已高,屠龙什么的也太危险了,我企图给自己找个台阶下:
ask the old man if the dragon is undefeatable.问问这个老人,恶龙是不是不可降服的那种。
(游戏规则是必须用祈使句,便是动词开头的句子,才能触发动作,让AI连续编下去。)
可AI彷佛能看出我的心思,割断了我的念想:
“The dragon? No, not yet”. The old man says as he stands up from his chair. “I know where he lives. I just need some help finding it”.
“What do you mean?” You say.
“你说那条龙?不不不。”老人说着从椅子上站了起来,“我知道他在哪,只是须要有人帮忙找到他。”
“你这是什么意思?”我说。
这么说,非去不可了。
后来,我又从老人的讲述里得知,恶龙已在拉里昂盘踞了几个世纪,想要近他的身,至少须要几十年的修炼,而即便如此也未必打得过。原来是这样,知道它在哪里,只是不知道怎么近身啊。
我又问老人,我能做点什么,他说:
“Well, I’m looking for a certain book that has been lost for centuries. It’s called ‘The Book Of Dragons’. If you could find it, then we would be able to defeat the dragon”.
“我在找一本书,已经丢失了几个世纪,叫《龙之书》。如果能找到的话,就可能打败那条龙了。”
大概是说,几十年等不及了,找本秘笈练练会快一点。
那我连续问老人,那本书末了一次被创造是在哪里,回答是:
It was found by an adventurer named Trelik back in the year 1289. He had it hidden away in a cave in the mountains near the city of Klyton. I’ve searched all over the area but haven’t found it yet.”
有个叫Trelik的冒险家在1289年找到了这本书,然后把它藏进了Klyton城附近的一个岩穴里。我把整片区域都搜过了,还是没找到。
就这样,我们朝着第一个任务进发,前往山区找书。
途中碰着了一伙盗贼,还被他们盯上了……总之,屠龙路上危急四伏,后面的故事不详述了。
不得不说,其实是一场目的明确、情节丰硕的旅程。AI从来没有忘却,最初设定的目标是屠龙,故事一贯环绕目标展开,没有走远。
从前GPT-2的作品情节常常十分跳跃,看到末了已经不记得故事从哪里开始。如今,“AI地牢”里GPT-2的表现令人惊喜。
其余,在游戏开始的地方,除了设定明确的目标,还配置了小伙伴:看似不经意在森林里烧火、实在早就在等我涌现的神秘老人。
如果真的想要达成屠龙的空想,还须要好好设计一番,碰着若何的对手/友军时,该当若何行事。
至于如何避免危险,避免正面交手,可适当利用游戏规则:撤回 (Revert) 。
回到上个动作发生的时候,再好好思考一次,下一步怎么走才更科学。
比起那些只能做选择题的笔墨冒险游戏,这里的演出空间大了许多呢。
还记得开头发推特安利的那个小姐姐么?
她让自己变成了一条龙,还要吃掉玉轮:
AI就在一旁合营她的演出,从一句话延展出壮 (zhong) 美 (er) 的情节。
输入:变成一条龙
输出:你变成一条龙飞了起来。很快你就创造,自己已经翱翔在天空。溘然,你觉得自己正在被一股力量吸往太阳的方向。你停下来,转过身去。太阳放射着刺目耀眼的光,你看到了它背后那片阴郁的空间。
若何做的游戏游戏的作者,是一位自动驾驶汽车的感知工程师,名叫Nick Walton。
至于为什么同样是GPT-2,到了“AI地牢”里显得逻辑清晰了许多,他在博客里是这样阐明的:
像之条件到的那样,游戏开始前玩家选择了设定 (奇幻) 和角色 (骑士) ,AI便是在这根本上天生了一段故事背景。
而这段背景,在游戏的进展当中,一贯都会作为模型的输入,让AI不要忘了最初的设定。这样不论情节发展若何天马行空,也不会分开大条件。
我们每输入一个动作,模型就会根据背景段,和之前多个“动作+结果”组成的数据对,来输出新的结果。实验创造,回溯8个动作,效果是最好的。
虽然,作者也说有的时候人物多了,AI认不清谁是谁,也会涌现人物关系混乱的征象,不过这个游戏已经能让人类感想熏染到GPT-2的强大了。
一起中毒吧除了老年骑士屠龙之旅,你还有其他故事可以选。
比如,选择神秘 (Mystery) 和侦查 (Detective) ,小明变成了芝加哥的一位侦查,在追逐一位逃犯的过程中,误入了……
误入了哪里呢?碰着了什么人呢?
自己去探索吧,如果碰撞出美好的故事,不要忘了存档哦。
游戏传送门:https://colab.research.google.com/github/nickwalton/AIDungeon/blob/master/AIDungeon_2.ipynb
博客传送门:https://pcc.cs.byu.edu/2019/11/21/ai-dungeon-2-creating-infinitely-generated-text-adventures-with-deep-learning-language-models/
主页传送门:http://www.aidungeon.io/
— 完 —
量子位 QbitAI · 头条号签约
关注我们,第一韶光获知前沿科技动态