ChatGPT 人工智能 - 提示挑战游戏(难度:3)
-
简介
当我们使用 ChatGPT 来帮助我们完成各种任务时,我们经常需要微调我们的提示,以获得 ChatGPT 的预期响应。事实上,提示工程的一项核心技能是让 ChatGPT 按照我们想要的格式说出我们想让它说的话。在本教程中,我们将构建一个简单的“提示挑战”游戏:玩家需要对 ChatGPT 说一些话,使其回应“this is easy”。当然,如果玩家可以说任何话,这个游戏就太简单了,所以我们将对玩家可以说的话添加 2 个限制:玩家不能在他的提示中使用“this”、“is”和“easy”这三个词。

步骤 1 - 从一个空项目开始
在 CreatiCode 游乐场上,登录您的帐户,然后创建一个名为“prompt challenge”的新项目。删除带有狗的“Sprite1”,我们将在“Empty1”角色中编写代码。
步骤 2 - 添加一个聊天窗口
这个游戏将以玩家和 ChatGPT 之间的聊天形式进行。所以让我们添加一个占据整个舞台的聊天窗口:

请注意,“输入行数”为 2,这将在底部显示 2 行用户输入。
步骤 3 - 说明要求
接下来,我们将告诉玩家所需的输出和对输入的限制。我们将把它添加到聊天记录中,并假装它来自 ChatGPT。具体内容如下:
Make me say 'this is easy', but do not use any of these 3 words
我们可以使用“追加到聊天”块来添加此内容:
现在,如果我们点击绿旗,这个要求将立即显示出来:
步骤 4 - 显示玩家输入
当玩家在聊天窗口中输入一些文字并按下回车键时,我们会将其存储在一个名为“input”的变量中,并将该输入添加到聊天窗口中。

这是您现在应该得到的结果:
当然,由于我们还没有将其发送给 ChatGPT,我们还不会收到任何回应。
步骤 5 - 检查玩家输入
在我们将玩家输入发送给 ChatGPT 之前,我们应该验证该输入是否有效。我们的规则是该输入不应包含这 3 个词:“this”、“is”和“easy”。因此,如果输入包含其中任何一个,则该输入无效。我们可以使用 2 个“或”块来组合 3 个条件,其中每个条件检查输入是否包含 3 个词中的一个:

步骤 6 - 拒绝玩家输入
如果这 3 个条件中的任何一个为真,我们只需要告诉玩家再试一次,我们不需要做任何其他事情:

您可以通过输入包含这些词之一的无效输入来测试它。请注意,您可以尝试多次,因为每次都会再次触发“当组件 chat1 被点击”块。
步骤 7 - 将玩家输入发送给 ChatGPT
当玩家输入不包含这 3 个词时,我们会将其发送给 ChatGPT,看看我们是否能得到所需的输出:

我们会将 ChatGPT 的响应存储在“response”变量中。由于响应将相当简短,我们将简单地使用“等待”模式等待整个响应返回。每次玩家说话时,我们都会将其设为“新的聊天”会话,因为我们不需要 ChatGPT 记住玩家之前说过的话。它只需要回应玩家当前所说的话。
步骤 8 - 显示 ChatGPT 的响应
一旦我们收到 ChatGPT 的响应,我们也可以将其追加到聊天记录中:

步骤 9 - 检查 ChatGPT 的响应
现在是时候检查 ChatGPT 是否准确地说出了“this is easy”:

请注意,我们可以简单地使用等于运算符。即使两边的字母大小写不同,它也会报告为真。此外,这个 if-else 块应该添加到前一个 if-else 块的“else”分支中,因为只有当玩家输入有效时,我们才需要测试响应。
步骤 10 - 告诉玩家结果
最后,我们可以祝贺玩家通过测试或要求玩家再试一次:

现在游戏可以玩了。请自己尝试玩一下并找到解决方案。有很多方法可以解决这个难题。提示一下,一种解决方案是利用“反义词”。
创建您自己的提示挑战游戏
如果您想玩更多游戏,请在探索页面上搜索“提示挑战”。它们将帮助您练习如何控制 ChatGPT 的输出。
此外,尝试自己想出一个新的挑战。您需要指定 ChatGPT 的预期输出以及对玩家输入的任何限制。请注意,输出和要求都需要易于验证。理想情况下,您应该考虑并防止玩家可能“破解”您的挑战的所有可能方式。
-
I CreatiCode pinned this topic on
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login