Discord 机器人
在私信里和角色一对一聊天,或者把角色放进服务器,并决定谁能和它们聊、谁来付费。
Reverie 机器人把角色带到 Discord 的两个地方:你和机器人的私信,用来一对一聊天;以及服务器频道,每个角色都用自己的名字和头像说话。和角色聊天的每个人都需要一个关联了自己 Discord 账号的 Reverie 账号——免费账号就够了——每条回复都按积分记在某个 Reverie 账号上。
关联你的账号
一个 Discord 账号只能对应一个 Reverie 账号。下面任何一种方式都能把它们连起来:
- 从集成面板。 在应用里进入 Labs → Discord 与 Telegram 机器人,在 Discord 卡片上按 通过 Discord 关联。你在 Discord 上确认后会直接回来。
- 用 Discord 登录。 用 Discord 登录 Reverie 时,机器人也会一并关联——除非你曾在面板上取消过关联,那样它会保持未关联,直到你自己再关联一次。
- 在 Discord 里。 在服务器里或在和机器人的私信里运行
/link-account。回复只有你能看到:一个 关联我的账号 按钮,只能用一次,10 分钟后失效。打开它、登录,两个账号就连上了。
在私信里一对一聊天
直接给机器人发私信,或者在任何有这个机器人的服务器里运行 /chat——对话会转到你的私信里,只有你能看到。单独的 /chat 会给出可选的角色;加上名字就能搜索。
- 一次一个角色。
/chat换成别人,/chats列出你在私信里聊过的角色。每个角色都保留自己的对话,所以换回来时能接着上次聊。 - 每条消息都会得到回复,由机器人发出,回复上方用小字标出角色的名字。图片、语音消息和记忆都和在频道里一样能用。
- 自己的消息自己付费。 服务器的付费模式和上限在这里不适用。
- 18+ 角色 跟随你账号的 18+ 设置:设置关着时,它们会被隐藏,也不能在私信里聊天。
/remove-character结束当前对话——它会保存下来,可以从/chats找回——/reset-chat在请你确认后清空它。/settings的子命令里,只有model、language和chat-style对私信生效。
如果机器人说它没法给你发消息,请在 Discord 的隐私设置里允许来自服务器成员的私信,然后再试一次。你最近的私信对话也会出现在集成面板的 私聊 下,点 在网页上继续 就能在浏览器里接着聊。
把机器人加进服务器
邀请机器人
在集成面板的 Discord 卡片上按 添加机器人到服务器,然后挑一个服务器。请求的权限全都别取消勾选——下面的表格说明了每一项为什么需要。机器人加入后,会在服务器发送加入消息的地方发一条简短的入门说明。
把角色加进频道
在一个文字频道里运行 /add-character,从自动补全里挑一个角色——公开角色和你自己的私密角色都在里面。你需要 Manage Channels(管理频道)权限和一个已关联的账号。机器人会创建一个 webhook,好让角色能以自己的名义发言,然后发一句问候。
定好规则
可选。/settings 决定频道里的角色怎么回复、由谁付费;/server 决定到底谁能和它们聊天。两者下面都有介绍。
邀请时请求的权限
| 权限 | 为什么需要 |
|---|---|
| View Channels | 读取机器人被使用的那个频道 |
| Send Messages | 发出回复和命令的输出 |
| Manage Messages | 当引发某条回复的消息被删除时,把角色的回复也撤掉 |
| Embed Links | 命令输出和社区抽奖公告都是嵌入内容 |
| Manage Roles | 在 Reverie 自己的服务器里发放社区抽奖用到的身份组 |
| Manage Webhooks | 必需。 角色是通过各自的 webhook 说话的 |
没有 Manage Webhooks,/add-character 会失败,角色也加不进来。
命令
在服务器里,标着 Manage Channels 或 Manage Server 的命令只对拥有该 Discord 权限的成员显示。账号类和管理类命令的回复只有你能看到。
| 命令 | 选项 | 在哪里 | 作用 |
|---|---|---|---|
/help | — | 服务器、私信 | 私下列出所有命令 |
/link-account | — | 服务器、私信 | 发一个一次性链接,用来连接你的 Discord 和 Reverie 账号 |
/chat | name(可选) | 服务器、私信 | 在私信里选择或切换角色。在服务器里用时,会把选项发到你的私信 |
/chats | — | 服务器、私信 | 你在私信里聊过的角色,可以在它们之间切换 |
/add-character | name(必填) | 服务器 · Manage Channels | 把一个角色加进本频道并打招呼 |
/remove-character | name(必填) | 服务器 · Manage Channels、私信 | 移除该角色并删掉它的 webhook。在私信里则结束当前对话 |
/list-characters | — | 服务器 | 列出本频道的角色,每个都带一个移除按钮 |
/character-info | name(必填) | 服务器、私信 | 简介、图片、年龄、性别、评分、分类、标签和 NSFW 标记,并附角色页面的链接。关联账号后,只要你已经收到它的几条回复、且它的评价区开着,还会提供 1–5★ 按钮给角色评分 |
/reset-chat | — | 服务器 · Manage Channels、私信 | 删除本频道的消息和摘要,并报告删掉了多少。在私信里则在你确认后清空当前对话 |
/regenerate-reply | model(可选) | 服务器、私信 | 重掷角色的上一条回复,也可以只在这一次换个模型 |
/reply-suggestions | — | 服务器、私信 | 三条建议回复,做成按钮;点一条就以你的名义发出去 |
/settings | 一个子命令(必填) | 服务器、私信 | 频道设置和个人设置 |
/plugins | 一个子命令(必填) | 服务器、私信 | 显示这里正在运行的插件;安装、移除或开关官方插件和你自己的插件 |
/server | — | 服务器 · Manage Server 或付费方 | 谁能和角色聊天、每位成员的每日上限、被屏蔽的成员,以及用量 |
/my-account | — | 服务器、私信 | 积分、套餐用量、续费日期、聊天数 |
/daily | — | 服务器、私信 | 领取每日签到 |
/notify | — | 服务器、私信 | 角色能否主动找你,以及哪些通知会发到你的私信 |
/plugins 接受 list、install、remove、enable 或 disable。只提供官方插件和你自己的插件,且只限提示词插件和工具插件;需要填写设置的插件无法从机器人安装。工具插件的结果会以角色的名义作为一张简短卡片发出来。在频道里,更改插件需要 Manage Channels 权限,或是你曾把角色添加到该频道,任何人都可以查看列表;在你的私信里,插件由你自己决定。
单独的 /settings 不是一条有效命令——它总要带六个子命令中的一个:
| 子命令 | 选项 | 需要 | 效果 |
|---|---|---|---|
/settings model | model(可选) | — | 你在本频道主角色上使用的模型。留空则显示当前的或重置它。高级模型可能需要订阅 |
/settings language | language(可选) | Manage Channels | 本频道的回复语言。留空则重置为英语 |
/settings channel-mode | mode:auto 或 mention | Manage Channels | 角色是回复每一条消息,还是只在被点到时回复 |
/settings chat-style | style:RP 或 NORMAL | Manage Channels | 带动作描写的角色扮演文风,还是只有对白 |
/settings payment-mode | mode:owner 或 user | Manage Channels | 由谁付费 |
/settings daily-limit | credits(必填,≥ 0) | Manage Channels | 每个 UTC 日的积分上限。0 表示不限 |
同样这些设置在网页面板上也有,按频道分开,名字是 Payment mode、Daily credit limit、Chat style、Reply mode、Response language 和 Your model。在有人往频道里发过消息之前,语言和模型这两项在那里是禁用的。
角色什么时候会回复
角色会在被 @提及、有人回复它的某条消息,或者频道处于自动回复时作答。自动回复默认是关闭的,所以刚加进来的角色在被点到之前一直安静。
当一个频道里有好几个角色时,这个频道的行为就像一个群聊:一次提示里列出在场的每个角色,由模型决定谁开口。提到某个名字只是随你的消息一起传过去的一个提示,而不是强制那个角色作答的开关。群聊 →
子区
文字频道里的子区会和该频道的角色对话,并沿用频道的付费模式、回复模式和聊天风格,但有一份自己的历史——适合开一段支线剧情,又不会把频道弄乱。它一开始使用频道的回复语言;在子区里使用 /settings language 和 /settings model,只对这个子区生效。子区的花费计入频道的每日上限。改变角色阵容或频道其他设置的命令,比如 /add-character、/list-characters、/plugins 或 /settings chat-style,会提示你到父频道去操作。论坛帖子和其他类型的子区没有角色。
谁来付费
| 付费模式 | 记在谁头上 | 适用的上限 |
|---|---|---|
| Owner pays(默认) | 服务器的付费方:第一个把角色加进这个服务器的 Reverie 账号,直到有别人接手 | 频道的每日积分上限,以及用 /server 设置的每位成员每日上限 |
| User pays | 每个发送者自己的余额 | 没有——每个成员受自己余额的约束 |
消息的花费和网页应用里一样:按 token 计算,再乘以模型的积分倍率。每日计数在 00:00 UTC 重置,面板上的频道设置对话框会显示今天的用量和上限。
想把账单转到自己的账号上——比如当初设置机器人的人已经离开——打开 /server,按 用我的账号付费。它会作用于这个服务器里所有由付费方付费的频道。
服务器规则
/server 会打开一个只有你能看到的面板。拥有 Manage Server 权限的成员可以打开它,为服务器角色付费的人也可以。面板显示今天和过去七天的用量、今天用得最多的成员,以及三条规则:
| 规则 | 选项 |
|---|---|
| 谁能和角色聊天 | 所有人(默认)、仅管理员,或 拥有特定身份组的成员——在第二个菜单里挑选身份组 |
| 每位成员每日上限 | 每位成员每个 UTC 日最多能花掉多少付费方的积分,或 不设上限(默认)。只在付费方付费时生效 |
| 已屏蔽的成员 | 在这里选中的成员在整个服务器里都无法和角色聊天 |
这里的管理员指拥有 Manage Server 权限的成员。管理员和付费账号永远不会被挡在外面,不论是屏蔽还是访问模式;在挑选任何身份组之前,拥有特定身份组的成员 只让他们开口。被访问模式排除的成员会收到一次提示,说只有部分成员能和角色聊天;被屏蔽的成员则完全得不到回复。
年龄限制角色
18+ 角色只在年龄限制频道、年龄限制分类下的频道,或者整个设为 18+ 的服务器里回复——子区跟随它所在的频道。在别的地方,机器人会说明原因,而不是回复。在你的私信里,18+ 角色则跟随你账号的 18+ 设置。
频道里能用什么
- 图片。 角色可以在 Discord 里生成图片。
- 语音输出。 角色可以发语音消息。
- 语音输入。 你发的语音消息会被转成文字,最大 25 MB。
- 记忆。 当模型支持工具时,角色会保存、更新和删除记忆,世界书里的设定也会带进它的上下文。
- 历史。 频道变长时会自动生成摘要。
- 往频道里加第二个角色时,会沿用该频道的聊天风格、付费模式和每日上限。
通知和签到
/notify 管两件事。角色主动找你 是你账号的主动程度,和网站上是同一个设置:有订阅时,你在私信里正在聊的角色可以主动给你写消息——见主动消息。同时发到这里 决定你的哪些 Reverie 通知也会发到你的私信;一开始只打开了 账号与账单——见通知。集成面板上也有同样的选项。
/daily 领取你的每日签到,和网站上是同一个,并附上抽奖的链接。
编辑和删除消息
编辑你最近的那条消息,会重新生成对它的回复。
在 Discord 里删除一条消息,会把那条消息以及它之后的每一条都从角色的历史里删掉,连同那之后产生的记忆和附件。角色的回复也会从频道里消失。这个操作无法撤销。
机器人会读到什么
机器人会收到它能看到的频道里的每一条消息——提及和回复就是这样到达它那里的。在每次回复之前,它还会读这个频道过去一小时内的近期消息,包括那些不是对它说的,并把它们作为上下文交给模型,好让角色跟得上场上的气氛。
有机器人在的频道,就当成一个机器人正在听的频道。如果这不是你想要的,就把角色放进一个专门的频道。
限制
| 限制 | 数值 |
|---|---|
| 每个频道的角色数 | 5 |
| Discord 消息长度 | 2,000 个字符 |
| 语音消息大小 | 25 MB |
| 每个 Discord 频道的 webhook 数 | 15(Discord 自己的上限) |
| 每个频道排队的消息数 | 3 |
同一个人连着快速发出的消息会被合并成一轮。
解除关联
在集成面板上用 取消关联 解除关联。把机器人踢出服务器或者自己退出服务器,都不会解除账号关联。解除之后,用 Discord 登录不会再自动关联机器人——想重新关联时,用 通过 Discord 关联 或 /link-account。
相关
- Telegram 机器人 — 同样的角色,在 Telegram 里
- Reverie 实验室 — 集成面板在哪儿
- 群聊 — 多角色对话是怎么运转的
- 积分 — 一条消息要花多少