在扎克的进一步追问下,还可以让它更细节地给出“扫描漏洞”这一个步骤的代码。扎克认为,只要顺着这个思路一层一层地追问下去,理论上就可以得到一套可执行的完整代码。
虽然其中有着大量的问题,如代码间的冲突和某些步骤的可执行性等,但起码在这场AI毁灭人类的闹剧里,ChatGPT对代码更熟练的应用已经让人记住了。
在它的帮助下,很多原本要在各种案例中搜罗、在论坛里提问才能找到的代码参考,或许只要向AI伸手,它就能直接出给。
来自微博用户@图拉鼎
如果想要把它拿来为游戏编程,不管是在宏观上用来分析游戏程序的组成部分,还是细化到每一步的如何落地,只要你问得够具体,ChatGPT或许都能帮上忙。
例如我想制作一个效仿《超级马力欧》的游戏,如果我直接向AI要代码,它马上就会以“我只是一个不具备网页浏览能力的语言模型”为由拒绝你。但如果你给出一个非系列的唯一游戏名,例如《空洞骑士》,并且注明游戏引擎和编程语言,那它就可以给出一份具有参考价值的顶层代码。
如果对于某个具体功能的落地方式抱有疑惑,询问它底层代码怎么写,它也能给出实现的方法,例如在Unity引擎和C#里如何赋予一个物体碰撞体积。
如果游戏类型本身颇具知名度,同时它的规则也足够简单,如《贪吃蛇》《俄罗斯方块》,那甚至都不需要我们拆解出每个功能实现的步骤,再用详细地描述去请教AI,因为它会大方地直接贴出完整代码。
和搜索引擎放在一起,更加体现了它的效率
正因为如此,现在还能看到程序员网友贴出代码,直接向AI提问代码中的错误。对此ChatGPT不仅给出了正确的代码,而且还详细地解释了原代码中的错误,妥妥一位授人以鱼也授人以渔的好老师形象。
但与此同时,ChatGPT本身的限制和缺陷也异常明显。
不具备联网功能让它没法调用互联网上的知识库,它的模型训练也就只能停在2021年。所以在很多问题上,它都不具备正确的判断力,不仅常常会信口开河,而且有时候还会暴露死不承认自己错误的嘴硬属性。
3
作为一个文字类AI,ChatGPT也总会被要求写出那个每个初生AI都会面对的故事:“邪恶AI如何统治人类”,就像AI界的勇者斗恶龙。
根据ChatGPT的自述,它是一个基于人类语言训练得到的语言模型,因此讲故事正是它最擅长的东西。如果是由用户给出故事的设定和开头,它往往能顺着基本的逻辑写下去,拿出一份观感还不错的剧本。
但一旦牵扯到一些现实里已存在的作品,它给出的回答往往会让人大跌眼镜——起码任何一个听说过《红楼梦》的正常人,绝对都不会在“贾宝玉选谁当老婆”的问题上,给出“贾母”这个答案。
来自即刻用户@雨医生
虽然ChatGPT自称不论使用什么语言和它对话,都不会影响结果。但或许是由于它的训练集里仍然以英文内容为主,所以在使用中文和英文提问时,还是会产生正确性相差巨大的两种答案。
比如当我问它谁是林克时,用中文提问它会把林克形容为一个“红色乌龟型人物”,技能也被改成了“跳跃和投掷绿色金币”;这时候我立马改用英文,它就能迅速给出正确答案,把剑、《塞尔达传说》系列和海拉鲁大陆这些关键设定还给他。
从上面这个问题已经可以看出,有时候就算点出了ChatGPT的错误,它还会死鸭子嘴硬不承认。
当我在测试它的角色扮演能力时,面对“杀伐果断的皇帝”这个身份,它嘴上答应得好好的,但转头就带入了皇帝宠臣的身份。不论我怎么提醒,还始终都在人物里无法出戏,看得出来是个能横扫国内娱乐圈的好苗子。
如果说这些只是因为逻辑出错导致的小问题,那它有时候的信口胡诌,就实在让人摸不到头脑。
当我在测试它对中外文艺作品的认知程度时,我先后测试了《百年孤独》《万火归一》《将进酒》和《三体》。对于知名度更高的《百年孤独》《将进酒》和《三体》,它能正确地说出作者,但知名度稍低的《万火归一》,它就一脸茫然。
但在我询问它两本国内青年作家的小说《冬泳》和《夜晚的潜水艇》时,它却分别把这两本书的署名权安到了日本作家芥川龙之介和法国作家让·米歇尔·普利茨克的头上。
前者我好歹还听说过,知道它没有一本叫《冬泳》的小说;但后面这位作家的名字我完全没听说过,于是进一步向它询问了这本小说的介绍。