跳到主要内容

机器人“店员”使用文档

该页面主要由cx维护,嘻嘻

删除线划掉的内容表示已经废弃或者暂时关闭的功能

一、介绍

  • 店员版本: 3.0
  • QQ频道沃玛「Warma」
  • QQ群: 沃玛频道——🍉日常闲聊
  • 店员B站账号: @店店店店员(支持评论区总结/回复/私信聊天)(暂时关闭)
  • 开发者橙息
  • 设定:来自b站up主@warma的作品中出现的角色“店员”
  • 功能:基于deepseek等AI模型的聊天机器人,可以同时与多人进行连续的文字聊天,语音聊天,识别图像等

使用到的AI模型

以下内容中以 频道 指代QQ聊群/QQ私信/QQ频道子频道

基本功能特性

  1. 白名单:需要橙息手动为频道添加白名单才能使用店员的所有功能
  2. 闭嘴:当店员处于闭嘴状态的时候,无法在频道中通过 @店员 除外的方式触发AI回复
  3. 防刷屏:主要是为了防止店员与其他机器人(贝拉)触发循环对话
    • 判定方式:在触发店员AI对话的时候,判断最近5条消息是否包含2条店员消息,并且5条消息的时间间隔小于8秒,如果是则不触发AI回复
  4. 自动宵禁:当自动宵禁功能开启,工作日00:00-06:00自动开启全员禁言
  5. 生日提醒:根据聊群用户在qq设置的生日,在每日的8点整自动为用户献上生日祝福
  6. 语音输出:在触发店员AI聊天时,在发送的文本最后加上 "-a" 可以让店员使用语言+文本回答用户的问题
  7. 连锁撤回:当用户撤回了一条已触发店员回复的消息(包括指令、AI回复等)时,店员会自动撤回回复的消息

二、店员AI聊天功能

触发AI对话的方式

  • 在聊群中发送带有“店员”二字的消息
  • 在聊群中 @店员 或消息以@店员开头
  • 引用店员的消息
  • 在私信中发送任意消息
  • 在聊群中有 1% 的概率触发店员的AI回复
  • 若消息中包含**(双星号)或者#(井号)则任何情况下都不会触发AI回复
  • 有新用户加入聊群,自动触发AI回复欢迎新用户
  • 戳一戳有 20% 的概率触发
  • 在以下QQ频道帖子板块发帖/评论区提到“店员”会触发店员AI回复

短期记忆

  • 在每个频道都会有15条对话上下文(又称短期记忆)
  • 记忆包括用户的对话(没有触发AI回复的消息)
  • 还包括店员自己发送的消息调用外部函数的结果
  • 超过15条后会自动删除最早的一条对话。
  • 店员可以结合这15条消息来回答用户的问题。

长期记忆

可用信息

  • 用户发送的消息文本
  • 用户在聊群中的昵称
  • 当前的时间 (格式为:YYYY-mm-dd HH:MM:SS
  • 频道名称
  • 个别频道的额外信息
    • 闲聊频道:各个子频道群号列表 (已加入到长期记忆中)
    • 沃玛岛:基础的帮助文档

店员接受的格式

  • 文本内容
  • 图片:可以是引用图片,又或是图片+文字混合(自定义表情包将作为图片处理)

    图片会先传递给qwen-vl-plus模型进行识别,识别结果会作为文字代替文本消息中的图片传递给deepseek-v2模型,deepseek-v2模型会根据识别结果回复

  • qq emoji:转为对应的文字名称
  • qq表情包:转为对应的文字名称
  • 语音:语音识别,使用了Paraformer语音识别-中文-通用-16k-离线-large-pytorch来语音识别(只支持中文)
  • 引用消息:可获取引用的消息文本内容和发送者的昵称,如果引用的消息包含图片也会按照上述方式处理
  • 其他格式:无法处理文件、视频等格式

店员可输出的格式

  • 文本内容
  • 图片(使用图片的url来发送图片,前提是店员得知道一张图片的url)
  • 语音: 使用GPT-SoVITS-v2来合成语音
  • Latex公式:会自动渲染为图片,有时候会抽风
  • 代码块: 大部分时候都会将代码块渲染为图片

调用外部函数

  • 事件触发器:可以定时提醒用户做某件事情。
  • 闭嘴:店员AI静默
  • 网页搜索:调用智谱搜索api获取在线网页搜索结果 Web_search_pro
  • b站搜索:在b站搜索视频/up主/专栏等
  • 获取用户主页投稿信息:投稿的视频列表
  • 获取视频内容:由b站AI生成的视频总结
  • 获取视频数据:标题/简介/up主/播放量/弹幕/评论/点赞/投币/收藏/转发等数据

三、店员指令功能

  • 使用 “@店员 ” <指令> <参数> 来执行指令(通常使用空格分隔)
  • 只要消息以“@店员 ”开头,就算没有@到,也会当做指令来处理而不是直接触发AI回复
  • 当“@店员 ”后没有匹配到如下列表的指令时,触发AI回复

频道/群内指令列表

权限介绍

  • 所有人:所有通过问卷审核用户都能使用的指令
  • 超管: 指定的超级管理员列表中的用户才能使用的指令
  • 管理员:指定的管理员列表中的用户才能使用的指令
  • 开发者:指定的开发者列表中的用户才能使用的指令
  • op:指定的op列表中的用户才能使用的指令
  • 群主:当前所在频道的群主
  • 群管理员:当前所在频道的管理员
  • 指定QQ频道身份组: 在QQ频道拥有指定身份组相等或以上权限的用户才能使用的指令

用户指令

指令名别名参数权限介绍示例备注
记忆清除清除记忆-鲨鱼之蓝清除店员AI聊天在当前频道的短期记忆@店员 记忆清除
闭嘴-?时间(单位h/m/s)所有人店员AI静默@店员 闭嘴 1h不带参数默认5分钟,一次只能使用一种单位
开嘴张嘴/说话/解除静默/解除闭嘴-所有人店员AI解除静默@店员 开嘴-
发言统计今日发言/今日发言统计/今日发言量/今日发言数/今日发言数量-所有人查询当前qq群当日发言计数@店员 发言统计仅限QQ群可用
费用统计费用查询/费用/欠款/债务-所有人查询用户使用店员AI产生的费用@店员 费用统计
费用排行费用榜单/费用榜/债务榜/欠债榜/欠款榜-所有人查询用户使用店员AI产生的总费用的排行榜@店员 费用排行
拖更时长拖更时间/拖更查询/上次更新/最新视频/拖更日期?关键词所有人查询沃玛视频拖更时长,不带参数默认为上个视频之后多久没更新@店员 拖更时长 爆炸电台
查询生日生日查询?日期所有人查询指定日期的生日的群友@店员 查询生日 11-11
词云-?[时间范围] ?[参数]所有人根据聊天记录生成词云@店员 词云 -u 1周点击查看具体用法
身份组-移除全部/获取全部/<指定身份组名>所有人查询/移除/获取指定身份组的用户@店员 身份组 鲨鱼之蓝仅限QQ频道可用
help帮助/帮助文档/菜单/meun/指令列表-所有人查看帮助文档@店员 help

管理员指令

指令名别名参数权限介绍示例备注
通过-问卷序号管理员通过指定序号的问卷@店员 通过 114514可以回复问卷消息来快捷操作
驳回-问卷序号/驳回内容管理员驳回指定序号的问卷@店员 驳回 114514 请按要求填写可以回复问卷消息来快捷操作
手动审核获取问卷/查看问卷/查询问卷/问卷查询/问卷查看/问卷获取问卷验证码管理员手动获取指定问卷验证码的问卷@店员 手动审核 114514用于手动审核在“已过滤通知”中的入群申请
搜索用户查找用户/查找成员QQ号管理员在店员加入的所有Q群中搜索指定的QQ号,返回指定用户所在的群的列表@店员 搜索用户 1234567890仅限QQ群可用
扫描主群--超管扫描不在主群的子群成员@店员 扫描主群仅限QQ群可用
自动移除从墓地中除外/满门抄斩/自动踢人QQ号/@用户超管在沃频Q群连锁移除指定用户@店员 自动移除 1234567890仅限QQ群可用,若店员没有管理员权限,会@管理员提醒协助移除
记忆搜索记忆检索/记忆查询关键词管理员查询店员AI长期记忆@店员 记忆搜索 橙息是萝莉
记忆删除-ids管理员删除店员AI长期记忆,参数为记忆搜索结果中的id,可以为多个,用空格分隔@店员 记忆删除 1 2 3
tts语音合成文本内容管理员使用店员语音合成生成语音@店员 tts 您好,欢迎光临,买?在后面加上 "-c" 表示使用粤语语音合成
重启--管理员重启店员主进程@店员 重启
强制关闭--超管使用mcsm强制终止店员主进程@店员 强制关闭
自动宵禁-开启/关闭管理员开启/关闭自动宵禁功能@店员 自动宵禁 开启
触发生日提醒-?日期管理员手动触发生日提醒@店员 触发生日提醒 11-11
管理总结频道管理总结?[时间范围] ?[参数]管理员生成频道管理总结@店员 管理总结 d时间范围参数与词云中的时间范围参数相同
微博转发转发微博微博ID管理员转发指定微博到📢 动态推送@店员 微博转发 123
echo-文本内容管理员让店员重复指定的文本内容@店员 echo 您好,欢迎光临,买?
git-pull开发者从仓库拉取最新代码并重启@店员 git pull
git-push开发者将本地的json文件(白名单列表)推送到仓库@店员 git push

MC指令集合

mc指令执行器
  • 在任意频道,沃玛岛MC服务器管理员(op)可以发送"//"开头的消息来执行任意mc指令
  • 如使用//list来查看在线玩家列表。

频道/群内-店员MC指令: : 由于现在沃玛岛同时开了插件服和MOD服,在使用MC相关的命令的时候,在命令最后面加上" -m"(注意-m前面有空格)来指定使用MOD服,默认使用插件服

指令名参数权限介绍示例备注
绑定玩家名所有人绑定MC服务器皮肤站@店员 绑定 cxchency增强了鲁棒性,“绑定”与“玩家名”之间不需要空格也能执行
管理员绑定玩家名; @用户op/管理员管理员手动绑定@店员 管理员绑定 cxchency @橙息
解绑玩家名op/管理员解除绑定@店员 解绑 cxchency
绑定查询玩家名op/管理员查询玩家名对应的qq号@店员 绑定查询 cxchency
绑定反查qq号op/管理员查询qq号对应的玩家名@店员 绑定反查 123456789
在线玩家-所有人查询沃玛岛服务器在线玩家列表@店员 在线玩家
tps-所有人查看沃玛岛服务器tps@店员 tps
ping-所有人查询所有服务器地址连通性@店员 ping
排行榜-所有人查询沃玛岛服务器统计信息排行@店员 排行榜-<?页数> <统计分类> <?统计项>点击查看具体用法
分类排行榜-所有人查询沃玛岛服务器统计信息的某个分类下的所有条目的统计排行@店员 分类排行榜-<?页数> <统计分类> <?玩家名> <升序/降序>点击查看具体用法
排名-所有人查询指定玩家名在沃玛岛服务器统计信息中某个条目的排行名次@店员 排名 <玩家名> <统计分类> <?统计项>点击查看具体用法

排行榜系统

1. 排行榜
  • 查询沃玛岛服务器统计信息排行
  • 用法:
    @店员 排行榜-<?页数> <统计分类> <?统计项>
  • 统计分类有如下: 丢弃 破坏 挖掘 合成 被杀 拾取 击杀 使用 其他 进度
  • 除“其他”、“进度”类型以外,对应的 <统计项> 为对应实体/方块/物品id > “其他”类型的 <统计项> 参考 统计信息列表 > “进度”类型的 <统计项> 参考 进度列表
  • 若不使用 <统计项> 则统计整个分类的合计数 使用示例:
    “@店员 排行榜 挖掘 diamond_ore” 将返回挖掘钻石矿的排行榜
    “@店员 排行榜-2 击杀 将返回合计击杀的排行榜的第二页
2. 分类排行榜
  • 查询沃玛岛服务器统计信息的某个分类下的所有条目的统计排行
  • 用法:
    @店员 分类排行榜-<?页数> <统计分类> <?玩家名> <?升序/降序>
  • 统计分类有如下: 丢弃 破坏 挖掘 合成 被杀 拾取 击杀 使用 其他 使用示例:
    “@店员 分类排行榜 挖掘” 将返回全服挖掘各类方块的排行榜
    “@店员 分类排行榜-2 击杀 cxchency” 将返橙息的击杀各类型生物的排行榜的第二页
3. 排名
  • 查询指定玩家名在沃玛岛服务器统计信息中某个条目的排行名次
  • 用法:
    @店员 排名 <玩家名> <统计分类> <?统计项>
  • 统计分类有如下: 丢弃 破坏 挖掘 合成 被杀 拾取 击杀 使用 其他 进度
  • 除“其他”、“进度”类型以外,对应的 <统计项> 为对应实体/方块/物品id

    “其他”类型的 <统计项> 参考 统计信息列表 “进度”类型的 <统计项> 参考 进度列表

  • 若不使用 <统计项> 则统计整个分类的合计数
  • 用法:
    “@店员 cxchency 排名 挖掘 diamond_ore” 将返回橙息在全服挖掘钻石矿次数的名次
    “@店员 cxchency 排名 击杀” 将返回橙息合计击杀的名次

其他指令

骰子

  • 在任意频道,发送".r"开头的消息来使用骰子功能
  • 示例:".r2d6" 掷 26 面骰子
  • 只投一个骰子的时候,d可以省略,如".r6"等同于".r1d6"

词云

  • 用法:@店员 词云 [时间范围] [选项]
  • 时间范围(默认为'1天'):

    以下提到的所有沃频子频道不包括店员与用户的私信 词云会自动排除机器人的发言(包括店员和其他已被标记的机器人)

    • 可用单位:秒/s、分钟/m、小时/h、天/d、周/w、月/M、年/y
    • 格式数字+单位,例如'1天'、'1周'、'1小时'
  • 选项
    • 当前子频道模式('-c'):获取当前子频道所有用户聊天记录生成的词云
    • 用户模式('-u'):获取当前使用指令的用户所有沃频子频道中的聊天记录生成的词云
    • 全子频道模式('-g'):获取所有沃频子频道所有用户的聊天记录生成的词云
    • 注:使用用户模式时,词云默认私信发送给用户,您可以附加'-p'参数来指定发送到当前子频道
  • 示例
    • 查看自己1天内在所有沃频子频道中的发言的词云:“@店员 词云 1天 -u”
    • 查看本子频道(本群)一周内所有用户的发言的词云:“@店员 词云 1周 -c”
    • 查看所有沃频子频道一年内所有用户的发言的词云:“@店员 词云 1年 -g”

微博/B站动态推送的子频道频道/帖子板块/聊群

四、微博动态推送

  • 图片的形式自动推送微博@warma的动态到上述频道
  • 将动态中的图片逐个提取并发送到上述频道
  • 如果动态包含视频,会自动发送视频文件到上述频道(🍬「焦糖星热点」更新推送 除外)
  • 将微博文本图片内容转发给店员AI来生成回复发送到上述频道

五、b站动态推送

  • 图片的形式自动推送b站@Warma@warma养鸽场的动态/视频投稿到到上述频道
  • 将动态中的图片逐个提取并发送到上述频道
  • 将动态文本图片内容转发给店员AI来生成回复发送到上述频道
  • 如果是投稿视频将自动在B站评论区抢热评(根据视频信息/视频字幕来生成评论)

六、MC服务器消息互通

七、问卷审核系统

频道与Q群的验证码不能复用,如需在频道和Q群都加入,请分别填写问卷

八、店员B站私信(暂时下线)

  • B站@店店店店员会自动回复用户的私信,具有短期记忆,与q群特性相同
  • 店员知道用户的b站账号的uid、昵称、性别、签名、等级
  • 需要用户关注@店店店店员才能使用私信聊天功能

九、店员B站评论区(暂时下线)

  • B站@店店店店员会自动回复评论或@消息
  • 如果是视频评论区,店员会自动获取视频信息,包括AV号、BV号、标题、简介、up主、视频分区、投稿时间、Tags、B站网页版自动生成的AI视频总结(如果有的话)、视频字幕(如果有的话,默认选第一个)
  • 店员可以获取整条评论树(指单条评论下的所有回复,包括主评论,以时间顺序排列)相当于记忆,目前没有设置上限
  • 只有由B站@店店店店员关注的up主的评论区才能召唤店员,见店员B站关注列表