手动构建一张奖励图,意味着你要知道哪张卡片读取什么、哪个字段是必填的,以及哪种组合会悄无声息地什么也不做。图表助手 会和你一起处理这部分:你描述你想要什么,它提出一张图,而你来决定是否采用。
✨ 它是什么
图编辑器上的一个聊天面板,等级奖励图和图模式下的自定义命令都有。用画布右上角的 ✨ 按钮打开它。
它属于你的团队,而不是你个人。团队里的每个人看到的是同一段对话,所以队友可以接着你停下的地方继续,你也可以看到他们已经问过什么,而不必再问一遍。
✏️ 它是在编辑你的图,而不是替换它
助手只会发出它想做的更改:添加这张卡片、修改那个字段、把这两张连起来、删除那一张。它没有点到名的任何内容,都会保持原样。
这一点比听上去更重要。第一个版本是用一张完整的替换图来回答的,而在一张很长的图上,模型会凭记忆重建它,悄悄丢掉一些分支,留下一张更小、但看上去仍然完全有效的图。
有一点要坦白:如果模型无视指令,仍然用一整张图来回答,我们依然会照单接收,因为完全拒绝回答会更糟。这样的回答现在会被明确标注出来,在对话串里以及审阅窗口里(就在“应用”按钮的正上方),让你知道自己看到的是一次重建,而不是一次编辑。所有将会消失的内容,都会清清楚楚地列在已移除之下。对于较小的模型,值得认真读一遍这份清单,而不是一扫而过。
还有两个附带的好处:卡片的标识符由面板分配,而不是由模型分配,所以不会出现重复;而删除一张卡片会连同它的连线一起删除,所以不会有任何连线指向空无一物的地方。
🔒 它提出建议,由你应用
它提出的任何建议都不会自行被应用。建议会出现在对话串里,附带 查看更改 和 丢弃 两个按钮;在你从审阅窗口中应用之前,你的图不会被动。
👀 审阅窗口
查看更改 会打开一份摘要,说明这个建议会做什么:
- 每一张新增的卡片,
- 每一个被修改的字段,旧值和新值并排显示,
- 每一张被移除的卡片和连线。
它是针对你此刻屏幕上的图来计算的,而不是针对回答到达时存在的那张图,所以如果你在这期间编辑过什么,你读到的就是真正会发生的事。如果某个建议不会改变任何东西,它会这样说明,并且 应用 保持禁用。
这不是走过场。奖励图是在你服务器上实际运行的自动化:它会给真实的成员发放身份组、发送私信和授予 XP。是否运行它的决定,应该由人来做。
如果你可以和助手交谈但不能更改服务器,你仍然能看到这些建议,只是 应用 按钮是灰色的。即使采取行动不归你负责,读一读被建议了什么也是有用的。
🧪 建议在提供给你之前会先经过检查
每一张被提出的图,在“应用”按钮出现之前,都会对照真实的卡片列表进行验证。有问题时,会把这些问题列出来:
- 一张不存在的卡片,
- 缺少必填字段的动作:一个没有指定身份组的 分配角色,在图运行时会被悄无声息地跳过,
- 指向一张不存在的卡片的连线,
- 缺少回复的命令图,面板本来就会拒绝保存它。
现在它会尝试自己修复这些问题。 当一个建议被驳回时,驳回的原因和导致它的具体操作会回到助手那里,在把答案交给你之前,它还有最多两次尝试的机会。你会看到每一次尝试在对话串里实时出现,所以修正是你亲眼看着发生的,而不是需要你去要求的。
如果在这之后仍然被驳回,这些问题会和一个 再问一次 按钮一起列出来。三次尝试是有意设定的上限:一个模型两次都无法满足验证器,说明它卡在了某件事上,换一种问法会比第四次尝试解决得更快。
这也是为什么失败的尝试会留在对话串里,而不是被清理掉。助手正是读取它来在下一次尝试时纠正自己。
👀 看着它思考
每个回答都附有助手的推理过程,折叠在 查看推理 之下。当某个建议出乎你的意料时,值得打开看看:它通常会解释它认为你想要的是哪个条件,这比逐张卡片地读图要快。
问题会标注是谁问的,因为对话串是共享的。
⏳ 一次只处理一个请求
助手工作期间,输入框会对整个团队禁用,在所有对话中都是如此,而且每个人都能看到它正在为谁工作。一个团队共用一个模型和一份账单,所以两个问题同时运行,既要花两倍的钱,回答也会互相覆盖。
💬 多个对话
奖励图和自定义命令不再共用同一个对话串。每当你换了话题,就开始一个新的对话,每个对话都有自己的历史,而这些历史就是助手能看到的全部,所以早先不相关的讨论不会让它困惑。
在任何一个回答上点 再问一次,会把你之前的问题放回输入框,这样你可以调整其中一个词,而不用重新输入。被它取代的那个回答,不再提供 应用。
已经结束的对话可以用它旁边的 🗑 按钮删除,它会连同其中的消息一起删除,团队里的每个人都会看到它消失。当只剩一个对话时,这个按钮会被隐藏,因为面板始终需要一个可以写入的对话串;而删除助手当前正在其中工作的对话,会被拒绝,而不是任由它破坏运行。
如果请求失败,对话串会这样告诉你,助手也会立刻恢复空闲。当端点拒绝这次调用时(最常见的原因是模型名称它不认识),对话串里出现的就是它自己给出的解释,这样你就能读到该改什么。
🌍 它能看到什么,以及你让它看到什么
聊天窗口里的 ⚙ 按钮会打开 助手可以读取的内容:两个开关,每一个都是一种上下文来源,每一个都只属于你自己。它们会跟随你,从一个服务器、一个对话到下一个,而且不会改变队友的任何设置,团队里的每个人都自己做决定。
你团队的其他服务器
默认开启。它可以查看你团队拥有的每一个服务器:哪些功能开着、是如何配置的,以及它们的图。这就是为什么“照我另一个服务器的方式把这个设置好”是一个它真正能回答的问题。
关闭后,它就完全不会被告知这些服务器。清单不是构建出来再隐藏,而是根本不构建。
机器人在这里记住了什么
默认关闭。如果 AI 记忆 是开启的,机器人会记下它在 Discord 对话中了解到的关于你服务器的内容。授予这一项,会把这些笔记连同你的问题一起交给助手,让它能把它们考虑进去。
它在你出于某个原因开启之前一直是关闭的:这是助手以前从未使用过的上下文,每次提问都会重新发送,而且其中的内容是由你的成员而不是你写下的。
开启之后,它收到的内容有意设了边界:
- 你当前打开的那个服务器,不包括其他任何服务器,
- 关于服务器本身的笔记:绝不包括机器人记录的关于某位具体成员的笔记,那些属于该成员与机器人的对话,并留在那里,
- 固定数量的最新笔记,每一条都会被截成合理的长度,所以不断增长的记忆不会悄悄地让每个问题的成本也跟着增长。
- 仅当该服务器的记忆设置开启时。 关闭它会让机器人停止记录,也会让这一项停止:已经写下的笔记留在原处,而且不会交出任何内容。
两个不可选择的限制
- 它永远看不到你的凭据。 API 密钥、令牌和密钥在向它透露任何内容之前就会被遮蔽,和面板中其他任何地方完全一样。
- 它只会写图,并且只写在你当前打开的那个服务器上。它不能更改功能配置,也不能碰另一个服务器。
⚙️ 它使用哪个模型
默认情况下,它使用平台配置的模型。团队也可以改用自己的:自己的 API 密钥、自己的模型,或者自己的端点。任何兼容 OpenAI 的端点都可以使用,在这种情况下不需要 API 密钥。
端点必须能通过公网地址上的 HTTPS 访问。在你路由器后面、跑在你自己笔记本上的模型则不行:面板是另一个地方的服务器,让它按请求去调用私有地址,是把一个产品变成它自己网络扫描器的一种众所周知的手段。自行托管在端点公开发布时是可行的,放在你桌上的一台机器则不行。
你可以在团队设置页面的 助手模型 下进行设置。只有团队所有者可以更改,因为它是一项凭据,而不是偏好设置。密钥会被存储,并且不会再显示:保存时把该字段留空,已存储的密钥就会保留。
模型字段旁边的 获取模型列表 会向端点询问它实际提供哪些模型,并把答案作为建议提供给你:它使用表单中当前的 URL 和密钥,所以你可以在保存之前检查端点。这个字段仍然是自由文本:发布模型列表是可选的,而且有好几种自行托管的服务器并不提供,所以当没有任何返回时,会显示原因,由你自己输入名称。
💡 如何得到好的回答
说清楚应该发生什么、针对谁,而不是该用哪些卡片,这是它的工作:
- “在 25 级时给予 Veteran 身份组,但只给助力者。”
- “当有人用三次或更少的尝试解出 Wordle 时,给予 200 XP,并在 #general 里祝贺他们。”
- “和我另一个服务器的图一样,但把公告放在 #levels。”
然后读一读推理,检查它选择的卡片,再应用。
一次只让它改一件事。简短、具体的请求会产生一份简短的更改清单,这比一次改十几处,要容易得多地在审阅窗口里检查。