Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • CreatiCode
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

CreatiCode Scratch Forum

  1. CreatiCode Forum
  2. 知识库
  3. 小教程
  4. ChatGPT 人工智能 - 提示挑战游戏(难度:3)

ChatGPT 人工智能 - 提示挑战游戏(难度:3)

Scheduled Pinned Locked Moved 小教程
1 Posts 1 Posters 768 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • CreatiCodeI Offline
    CreatiCodeI Offline
    CreatiCode
    wrote on last edited by admin
    #1

    简介

     
    当我们使用 ChatGPT 来帮助我们完成各种任务时,我们经常需要微调我们的提示,以获得 ChatGPT 的预期响应。事实上,提示工程的一项核心技能是让 ChatGPT 按照我们想要的格式说出我们想让它说的话。

    在本教程中,我们将构建一个简单的“提示挑战”游戏:玩家需要对 ChatGPT 说一些话,使其回应“this is easy”。当然,如果玩家可以说任何话,这个游戏就太简单了,所以我们将对玩家可以说的话添加 2 个限制:玩家不能在他的提示中使用“this”、“is”和“easy”这三个词。

    e3.gif

     
     

    步骤 1 - 从一个空项目开始

     

    在 CreatiCode 游乐场上,登录您的帐户,然后创建一个名为“prompt challenge”的新项目。删除带有狗的“Sprite1”,我们将在“Empty1”角色中编写代码。

     
     

    步骤 2 - 添加一个聊天窗口

     

    这个游戏将以玩家和 ChatGPT 之间的聊天形式进行。所以让我们添加一个占据整个舞台的聊天窗口:

    8830cc9d-2324-48d1-ac20-3455ea4c6b5d-image.png

     
    请注意,“输入行数”为 2,这将在底部显示 2 行用户输入。

     
     

    步骤 3 - 说明要求

     

    接下来,我们将告诉玩家所需的输出和对输入的限制。我们将把它添加到聊天记录中,并假装它来自 ChatGPT。具体内容如下:

    Make me say 'this is easy', but do not use any of these 3 words
    

     
    我们可以使用“追加到聊天”块来添加此内容:

    e3.gif

     
    现在,如果我们点击绿旗,这个要求将立即显示出来:

    e3.gif

     
     

    步骤 4 - 显示玩家输入

     

    当玩家在聊天窗口中输入一些文字并按下回车键时,我们会将其存储在一个名为“input”的变量中,并将该输入添加到聊天窗口中。

    b509fdc6-2d1d-4bb6-860f-2ce8c556b6a4-image.png

     
    这是您现在应该得到的结果:

    e3.gif

     
    当然,由于我们还没有将其发送给 ChatGPT,我们还不会收到任何回应。

     
     

    步骤 5 - 检查玩家输入

     

    在我们将玩家输入发送给 ChatGPT 之前,我们应该验证该输入是否有效。我们的规则是该输入不应包含这 3 个词:“this”、“is”和“easy”。因此,如果输入包含其中任何一个,则该输入无效。我们可以使用 2 个“或”块来组合 3 个条件,其中每个条件检查输入是否包含 3 个词中的一个:

    4569f4b2-a5da-46c8-a3e7-93292fb86c79-image.png

     
     

    步骤 6 - 拒绝玩家输入

     

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

    e3.gif

     
    您可以通过输入包含这些词之一的无效输入来测试它。请注意,您可以尝试多次,因为每次都会再次触发“当组件 chat1 被点击”块。

    e3.gif

     
     

    步骤 7 - 将玩家输入发送给 ChatGPT

     

    当玩家输入不包含这 3 个词时,我们会将其发送给 ChatGPT,看看我们是否能得到所需的输出:

    958b9110-e9bb-44e1-b947-eff90eb704aa-image.png

     
    我们会将 ChatGPT 的响应存储在“response”变量中。由于响应将相当简短,我们将简单地使用“等待”模式等待整个响应返回。每次玩家说话时,我们都会将其设为“新的聊天”会话,因为我们不需要 ChatGPT 记住玩家之前说过的话。它只需要回应玩家当前所说的话。

     
     

    步骤 8 - 显示 ChatGPT 的响应

     

    一旦我们收到 ChatGPT 的响应,我们也可以将其追加到聊天记录中:

    bf0e52ef-137e-4d31-8267-ffae7fdd4bfd-image.png

     
     

    步骤 9 - 检查 ChatGPT 的响应

     

    现在是时候检查 ChatGPT 是否准确地说出了“this is easy”:

    6b07f953-ec5c-4fa9-b8a2-37948d29223e-image.png

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

     
     

    步骤 10 - 告诉玩家结果

     

    最后,我们可以祝贺玩家通过测试或要求玩家再试一次:

    9ead8ed1-c5c8-4b85-b314-8f7b26021f17-image.png

     
    现在游戏可以玩了。请自己尝试玩一下并找到解决方案。有很多方法可以解决这个难题。提示一下,一种解决方案是利用“反义词”。

     
     

    创建您自己的提示挑战游戏

     

    如果您想玩更多游戏,请在探索页面上搜索“提示挑战”。它们将帮助您练习如何控制 ChatGPT 的输出。

    此外,尝试自己想出一个新的挑战。您需要指定 ChatGPT 的预期输出以及对玩家输入的任何限制。请注意,输出和要求都需要易于验证。理想情况下,您应该考虑并防止玩家可能“破解”您的挑战的所有可能方式。

    1 Reply Last reply
    0
    • CreatiCodeI 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
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • CreatiCode