AI Hub 是做什么的?
AI Hub 提供了一些人工智能相关的功能,可以让你的作品得到人工智能的帮助。
目前 AI Hub 带有一个基于 GPT 3.5 的语言模型,进行了大量优化,可以用它生成各种回答。
为什么要使用 AI Hub?
让玩家能够通过自然语言与作品互动
为用户提供操作帮助
使用类似这样的方法,将帮助文档作为游戏背景或者机器人的背景:
玩家遇到问题时,可以询问机器人:
机器人将会尽量通过游戏规则给玩家回复:
您可以通过打开箱子获得药物来恢复生命值。在游戏中,按下F键即可打开箱子,如果您得到了药物,它将自动使用并恢复您的生命值。请注意,药物使用时需要一定的时间,如果在使用药物时被敌人发现,您将无法使用它。
快速生成对话,给创作提供帮助
语言模型能够做的事还有很多很多!
如何使用
生成回答之前,先要对拓展进行设定,在拓展中可以设定一个游戏背景和多个不同的 AI 角色
AI 角色不能重名。
设定背景
设定 AI 回复的语言。所有 AI 共用。
上面的三个积木可以设定整个游戏的背景设定,包括游戏背景,玩家角色的属性,以及玩家的任务。
所有 AI 共用。
创建或者设定 AI 属性。AI 通过名字区别。(设定 AI 属性不会改变对话历史记录)
在任何时候更新游戏和 AI 的参数。
开始对话
最简单的对话积木,指定名字和对话内容就能对话了。
不过这个积木的运行会占用一段时间,这和网络状况和服务器的状况有关。
这是目前这个拓展中唯一会占用时间的积木。
在你想同时和多个 AI 对话,或者在等待对话的过程中想做其他的事,简单的对话积木会不太方便。
这个时候需要使用异步聊天积木。异步聊天积木只会发出聊天而不等待 AI 回应,在 AI 回应之前,后面的积木会被运行。
AI 回应之后,帽子积木会被激活。可以用名字来区分同时的对话,也可以在聊天时使用不同的事件 ID,把帽子积木中 eventId 的值和事件 ID 进行对比即可区分不同对话。
AI Hub 会记住你的对话历史,并根据对话历史做出不同反应。运行此积木即可清空对应 AI 的历史记录。
更多细节
- 所有的背景设定、创建 AI、设定 AI 信息,以及重置历史操作,都不会请求网络,而是在本地记住这些设置。发出对话时,设定、对话和历史记录会一起发送到服务器并等待回应。
- 圆形的菜单内可以拖入变量和计算积木。
- 一旦刷新网页,历史记录将会丢失。目前没有恢复历史记录的功能。
- 该扩展以 OpenAI 的 GPT 3.5 作为基础,做了大量的 prompt 优化。
需要注意
AI 有一定几率误解游戏背景和玩家意图,可能会生成意想不到的回应,或者做出意料之外的行为。
使用 AI Hub 扩展不意味着创作者能够偷懒,把一切交给 AI 生成。创作者仍然需要编辑质量足够高的背景设定和人物介绍,设计合适的剧情和玩法,才能让 AI 生成的内容更加有趣。
兼容性引导
目前,在原版 Scratch 中实现像 AI Hub 中能够理解分析自然语言的功能,是非常困难的事情。
因此,如果你的作品使用此功能,就要做好没办法在其他社区或者用原版 Scratch 实现相同功能的准备了。
不过你可以这么做:提前准备几句固定的对话,询问 AI Hub 并且记录对应的反应,这样子在不支持 AI 的地方,用传统的菜单选择分支代替随意对话,就可以在其他社区体会 AI 的部分能力了。可以理解为你设计选项分支,用 AI 帮你写对应的反应。
你也可以把 AI Hub 相关功能放入单个角色,通过广播触发。
通过全局列表中传入参数,然后发送广播并等待,如果返回值变量没被修改,那么就意味着 AI Hub 出错或者 AI Hub 被删除了,此时可以提示“AI Hub 不可用”,或者使用备用方案。
需要兼容原版 Scratch 的时候,删掉包含 AI Hub 的单个角色,即可在只损失 AI 功能的情况下继续运行、编辑作品。同时还可以在删掉 AI Hub 所在的角色前将其导出,需要加回功能时重新导入即可。
更新计划
- 考虑使用 GPT 4
- 增加推理功能
- 增加意图判断功能
例如,AI-NPC 会根据对话的内容和进程,返回任务的达成概率;或者当用户说“购买一块石头”时,AI 会分析用户意图是“购买”,购买的内容是“石头”,数量是“一块”。
开源案例
让 ChatGPT 扮演游戏 NPC:House of Resonance 回响之间 AI Demo
此插件由 Shawn, Cappu 创建 ,文档 -6 维护。
-6 Scratch 创作者✉️ 1195132772@qq.com | 飞书链接 | QQ: 1195132772