ChatGPT人工智能:与爱因斯坦聊天
-
介绍
ChatGPT是OpenAI开发的人工智能模型,能够像真人一样与我们聊天。ChatGPT能回答我们问题,还能帮我们做很多任务(例如翻译、概括等等)。很多新软件会建立在ChatGPT之类的人工智能模型之上:软件会根据用户需求创建一份详细、准确的提示语,然后把提示语发送至人工智能模型,之后就能以人性化的方式显示人工智能模型的回复。
在这篇教程中,我们将制作一个简单的聊天程序。我们告诉ChatGPT扮演物理学家阿尔伯特·爱因斯坦,用户就能和爱因斯坦聊天了。
第1步 - 新建一个空角色
首先,在CreatiCode.com游乐场新建一个项目(点击上方的菜单“创建”),然后删除带小狗的角色。我们就得到一个空项目,里面有一个空角色。
第2步 - 添加聊天窗口
现在我们用“控件”类别中的“添加聊天窗口”来添加一个聊天窗口。
提示:为了在浮出控件中快速找到这个积木,大家可以搜索关键词“聊天”:
聊天窗口位于舞台中央(x=0,y=0),高度和宽度与舞台相同(480×360),所以聊天窗口会占据整个舞台。大家可以修改聊天窗口的背景和边框颜色。
这个聊天窗口的名称为“聊天1”,稍后将会用名称索引该聊天窗口。
聊天窗口如下所示:
第3步 - 处理事件“点击”
聊天窗口的用法,用户可以在底部的输入框输入任意内容,然后点击绿色的发送按钮。
L我们打印用户输入的内容,积木“控件( )的值”表示用户的输入内容。
如果在下拉菜单中看不到“聊天1”,只需要运行一次项目即可。注意,如果用户按回车键,也会触发积木“当控件( )被点击时”。
大家尝试输入一些消息,编辑器窗口底部的控制台就会打印出消息内容。
注意,把输入框中的消息删除后,消息不会添加到聊天记录中。这使得我们能够完全控制消息如何被添加、什么时候添加。例如,将消息发送到聊天记录窗口前,我们可以自动修改用户输入的错别字。
第4步 - 将用户输入内容添加到聊天记录
现在我们把用户输入内容附加到聊天记录,不再打印出来。我们可以用积木“附加到聊天( )”。
输入的消息就是积木“控件( )的值”,即用户输入的内容。聊天内容被附加到用户“我”和一个用户图标下面。大家可修改文字颜色和背景颜色。如下所示:
第5步 - 把用户输入内容发送至ChatGPT并等待
现在我们即将把用户输入内容发送至ChatGPT,然后得到其回复。
大家要创建一个新变量来存放ChatGPT的回复内容,可以把这个变量命名为“回复”。然后大家就可以添加积木OpenAI ChatGPT:请求( )以发送用户输入内容,然后等待回复:
我们用“完整回答”模式,就会让程序卡在这个积木上,一直到我们得到回复,回复内容将存入变量“回复”。为了便于测试,现在我们用最大的长度50,以便于快速得到回复。
“温度”为1能让聊天机器人更加随机发挥和有创意。
我们把“会话”类型设置为“继续”,就会记住当前对话框中的全部聊天记录。
第6步 - 展示ChatGPT的回复内容
我们收到ChatGPT的回复后,我们只需要把变量“回复”中的内容附加到聊天记录窗口中:
这次的名字我们用“爱因斯坦”,消息靠右对齐,背景换一种颜色。现在我们可以互动聊天了。由于聊天机器人还不知道我们想让它扮演爱因斯坦,所以它依然以ChatGPT的角色回复我们:
第7步 - 让ChatGPT扮演爱因斯坦
为了让ChatGPT扮演爱因斯坦,当我们启动项目时只需要告诉它就可以了。我们用同样这两个积木发送请求并展示回复。请求将设置角色:ChatGPT是爱因斯坦,用户是学生。
现在聊天功能就完整了!从现在开始ChatGPT 就扮演爱因斯坦:
第8步 - 增加回复的长度限制
目前,我们把最大长度限制为50,如果聊天机器人要说更长的内容,就会被剪短。在这种情况下,回复内容就出现“TOKEN LIMIT REACHED”(已达字数上限)。
有两种办法来解决这个问题。第1种,你可以把“最大长度”设为一个更大的数,比如100或150。
第2种办法,你可以告诉ChatGPT回复短一些。我们不要把用户的输入内容直接发送给ChatGPT,而是先修改一下。例如,我们在用户输入内容后面添加“最多用50个词回复。”
有两处改动的方案如下:
第9步 - 测试运行
现在聊天程序就做好了。聊天试一试,如下所示:
最终的完整程序:https://play.creaticode.com/projects/ddefa7e9b6c794efe0a81d8e
创意扩展
在这篇教程中,大家学会了如何使用聊天窗口控件,以及如何使用ChatGPT聊天机器人。然后大家可以尝试下面这些思路:
- 与其他人聊天:大家可以修改第1个提示语,让ChatGPT扮演成另外一个人,比如莎士比亚、拿破仑、林肯和牛顿。注意,你选的这个人一定要在网络上有广泛的相关内容,否则ChatGPT就不“认识”这个人。
- 与物体聊天:ChatGPT除了能扮演人,还能扮演成一个物体,例如火星、米老鼠、一个分子或者一只海豚等等。
- 在第1个提示语中提供更多信息:第1个提示语非常重要,因为它会告诉ChatGPT扮演成谁以及如何装扮,大家可以随意改进。例如,大家可以像这样指定一个时期:“请你扮演爱因斯坦和学生聊天,假装今天是1945年1月1日。”