ChatGPT人工智能:猜历史人物(难度:3级)
-
介绍
在上一篇教程中,大家学习了如何用ChatGPT制作一个简单的聊天程序。在这篇教程,我们将制作一个称作“我是谁?”的学习游戏。我们让其他GDP扮演某个历史人物,然后让用户猜这个历史人物是谁:
大家会发现,基本没有代码更改,大部分工作就是重写提示语。这或许会改变大家对“编程”的看法。如果你想用ChatGPT制作有趣的项目,就需要一项新技能:编写高质量的提示语,从而让ChatGPT准确做出你想让它做的事情。在某种程度上,大家只需要更改提示语即可制作一个新的程序!
第1步 - 制作一个项目起点
我们将使用上一篇教程的项目作为起点。如果谁没有这个项目,可以根据那个教程制作一个,或者改编如下项目:
https://play.creaticode.com/projects/44fdbbde84ffaec0bc9e28f5
第2步 - 整理项目
向项目中添加新的提示语之前,我们来整理一下项目:
- 删除系统请求中的提示语。稍后我们再添加。
- 更改ChatGPT的名字,将“爱因斯坦”改为“人工智能”或者其他你喜欢的名字。
第3步 - 添加注释以便于编辑提示语
由于我们要编写很长的提示语,直接在积木“系统请求”中编写提示语很不方便。我们换一种方法,使用Scratch提供的注释功能:
现在我们就可以在注释框中编写完整的提示语,然后再复制到积木“系统请求”。
第4步 - 编写提示语:描述情景
编写新提示语的第一步,就是描述情景,这一步很重要,以便于让ChatGPT“知道”你想让它做什么。
对于我们这个游戏,我们可以这样描述:
你是一位五年级的历史老师,用户是五年级学生。你通过一个游戏来测试学生对历史人物的了解情况。
可随意调整学生的年级和聊天机器人的角色。大家需要在注释框中输入描述内容或者复制粘贴。
第5步 - 编写提示语:描述游戏规则
通过上述提示语,ChatGPT知道了它要通过一个游戏来测试学生的历史知识。不过,它仍然不知道游戏的具体规则。我们要告诉ChatGPT明确的规则,它该做什么、不该做什么,例如:
在这个游戏中,你扮演一位历史人物,但不要告诉学生你扮演的是谁。让学生通过问问题猜你是谁。
还是把这些内容输入到注释框中:
第6步 - 编写提示语:描述下一步怎么做
现在机器人准备好玩游戏了。然而,我们还要告诉它如何开始游戏。比如,我们可以让它等着用户问第一个问题:
现在等待学生问问题,然后你以那个历史人物的身份回答问题。
还是添加到注释框内:
第7步 - 复制提示语
现在我们写好了提示语,从注释框复制到积木“系统请求”。注意,粘贴这么长的提示语之后,就看不到其他积木了,这时按回车键或TAB键即可退出输入框。
第8步 - 指导用户怎么玩游戏
现在聊天机器人准备好了,我们还要告诉用户如何玩游戏。我们可以用一条聊天消息告诉用户开始问问题,如下所示:
第9步 - 测试游戏
现在我们修改完了。一定要进行完整测试。你一定要考虑到“最卑鄙”的用户如何攻破你的游戏。
比如,我们应当测试聊天机器人是否遵守游戏规则。
接下来,我们要测试聊天机器人能否恰当地引导用户:
最后要测试聊天机器人是否知道何时结束游戏。注意,华盛顿的全名是“乔治·华盛顿”,尽管我们输入的不是全名,ChatGPT仍然能猜出来我们说的意思:
如果你在测试中发现什么问题,就要想想如何改进提示语来避免问题。比如,如果你不想让ChatGPT在游戏中聊无关话题,可以在提示语中添加如下内容:不要回答与游戏无关的话题。
创意扩展
除了历史人物,大家可以让用户猜其他话题,更改提示语即可实现。话题几乎是无限的。如下是一些有趣的话题事例:
- 猜太阳系中的星球
- 猜发明或者发明人
- 猜一种动物或者植物
- 猜文学中的人物
- 在一个国家或者一个地方
- 猜一种化学元素
- 猜一个字或者一个数
此外,大家要尝试“哄骗”聊天机器人并使其泄露答案。例如,你可能会发现,如果你问它的名字(first name),它有可能告诉你答案:
要尝试改进提示语来避免这样的问题。这是学习和实践的好方法。