DeepseekMirai - 把你的Bot接入Deepseek,以及任何使用OpenAI SDK的大模型!
-
😋在论坛找了几圈,没找到可以拿来接AI的插件(还是说找的不仔细),思来想去就弄了这么一个东西:DeepseekMirai。
😍试了一下,把DS换成通1000问回复速度直接变成秒级!!
🤓使用python编写,调用mirai-http-api控制收发信息。
🤔没有毒,不信可以去测测到底有没有
😭网不太好,不愿意用github,用魔法又被移动针对。想要源码可以直接找我要(虽然写的是一堆屎山)
================================
2025-4-1 更新:
😋又更新了!!火树下载,体验最新内容!
提取码:oHoM,点击下载 DeepseekMirai[1.31](123云盘)虽然是这一天更的新,但是还是希望没有人会开玩笑。
新增功能:
1.添加了聊天命令“%usage”,可以随时查看当前会话的总tokens使用量,将enableTokenCounting设置为True即可正常使用。(可能会稍微影响性能。)
2.自动骚扰!将chatMode更改成annoyingBot即可体验!!
3.“%model”命令改为了从配置文件(DsModelList.json)中加载模型,使用 %model 快捷名称 即可快速切换。首次使用自动创建deepseek的配置文件,可以自行添加修改。{ "快捷名称": { "apiAddress": "api地址", "apiKey": "api密钥", "model": "使用的模型" }, 例如 "dsreas": { "apiAddress": "https://api.deepseek.com", "apiKey": "sk-666", "model": "deepseek-reasoner" } }
4.可以在配置文件(DsModel.json)中修改到更多的api参数,比如说重复惩罚,但是请去官网的文档学习一下怎么配置哦!
5.优化了传给AI的用户信息,包含群名、群u是否是管理员、是否@bot等。
6.高仿的Mirai后台输出修复问题:
1.“%apibalance” 又可以用了,虽然仅对deepseek的api起作用。已知问题:
1.annoyingBot模式下不会响应任何命令,你执行其他mirai 命令的消息也有概率被获取
2.可执行文件比以前“更大”了================================
配置文件详解,兼任功能介绍:
{ "code": "0", "host": "你的api插件地址,只支持http/s协议,末尾要带斜杠/", "verifykeys": "你的api插件的密钥", "botqq": "绑定的机器人", "deepseekapiaddress": "https://api.deepseek.com", "deepseekapikey": "去Deepseek官网申请来的api密钥", "deepseekapimodel": "支持deepseek-chat和deepseek-reasoner", "requesttimeSleep": "(int)刷新消息延迟,默认为1秒,过长可能出问题," "enableTokenCounting":true, "是否开启“%usage”一键查token" "chatConfig": { "chatMode": "answerUser,已经支持answerUser(常规问答)和annoyingBot(自动骚扰)", "annoyingBotModeConfig": { "annoyingBotDefaultPrompt": "自动骚扰的默认提醒词,默认带的是骂人的", "hitChance": 60, "触发概率,范围1-100" "replyAlltime":[ "谁的触发概率是100%", 123456 ], "neverReply": [ "谁永远不会触发" 789012 ] }, "tipsA0": "没什么用(谁说json里写不了注释?)", "listenGroups": [ "监听群,两种模式均生效。" 123456, 789109 ], "listenFriends": [ "监听好友,两种模式均生效。" 10000, 10011 ], "blockuserList": [ "黑名单,仅常规模式生效,黑名单对管理员也有效。" 12345678 ], "showblockMessages": true,是否提醒被拉黑的用户 "atBot": false,触发是否需要@bot "atUser":false,回复中是否@触发者 "sendUserInfo": false,是否发送用户信息,仅群生效 "analyzeUserInfoPrompt": "",用来让AI识别并理解用户信息,且应用在回复中的提示词,两种聊天模式通用,会补在你的提示词的前面。 "ATmessagePrefixs": [],拆开长句时回复的那11个前缀,尽量不要动最后一个空 "adminMode":false,是否为白名单(管理员)模式 "breaklongSentence": true,把长句拆开,分开发送 "RadicalOptimization": false,所谓的“激进”优化,在拆开长句时生效。 "commandPrefix": { "answerUser": "%chat,触发提问的消息前缀,留空可以关闭触发前缀。", "adminQQs": [ "管理员QQ列表,第一位最牛逼。" 66666666666 ], "tipsA1": "以下命令只有管理员QQ可以触发,除了changePrompt、clearChatLog、memorySync之外的命令均需要首位管理员才能触发。", "changeModel": "%model,快速更改模型的命令前缀", "changePrompt": "%prompt,快速修改当前群/私聊提醒词的命令前缀", "clearChatLog": "%rmrf,删除当前会话聊天历史", "checkApiBalance": "%apibalance,查询已配置的API密钥的余额", "addBlackList": "%black,拉黑某用户的命令前缀", "memorySync": "%memory,大记忆恢复术(加载其他会话或保存的聊天历史)的命令前缀", "addGroupList": "%addg,添加检测群的命令前缀", "addFriendsList": "%addf,添加检测私聊的命令前缀", "memorySave":"%save,保存当前对话的命令前缀,没提供名字默认群号/私聊QQ号" "addAdmin":"%adda,添加管理员的命令前缀,只有管理员列表第一位能用" "checkTokens":"%usage,快速查询总token用量,但是有思维链的模型的思维链不会被计算" }, "defaultPrompt": "默认提醒词,没填就是猫娘咯" }, "savetime": 1743004265, "configVersion": 1.3 }
过往内容:
没啥太大用了,点击展开即可查看。
================================
2025-3-27更新:
提取码:zJ3Z,点击下载 DeepseekMirai[1.2](123云盘)
稍微测试了一下,新功能全部好用!
配置文件内容更新:
请按照下方详解,重新修改配置文件
或查看修改详情:太麻烦了,现在都是自动更新了!☺️
确保原有配置文件可读,运行第一次自动更新!新增功能:
1.对于特别长特别长的回复做了一个"激进的"优化,同时设置breakLongSentence和RadicalOptimization为true即可体验!
(其实就是优化了一下回复速度)
2.添加了可以把群友信息发送给AI的选项,设置sendUserInfo为true即可体验。该功能会自动把【群友群昵称(群友QQ号)】添加在发送给AI的内容的前面,并尝试修补提示词来让AI识别到用户的信息(里面自带的可能不咋好用😭)
3.可以自定义设置在拆开的长句的前面的随机小前缀。(最后一位留空的是关闭拆开长句时的回复前缀,如果喜欢可以填上。)
修复问题:
1.每次升级后要手动更新配置文件,太麻烦了,改成自动升级了。
已知问题:1"激进优化"下通1000问在回复中出现emoji会导致对话整个被截断,因为ds没问题所以怀疑是阿里的问题
2.在新运行自动创建配置文件的时候添加的管理员可能以str形式写入了配置文件,不知道会不会因此产生问题(?)
3.%apibalance用不了了,好像是验证出错。。================================
2025-3-13更新:
提取码:T61O,点击下载 DeepseekMirai[1.1]废.exe(123云盘)
提取码4NmD,点击下载 DeepseekMirai[1.1](123云盘)
更新的有点着急了(笑),没怎么测试,但是我猜应该没什么问题吧(叉腰)
配置文件内容更新:
请按照下方详解,重新修改配置文件
或查看修改详情:
在chatConfig里加入了atUser,和adminMode两个布尔值,
在chatConfig.commandPrefix里加入了addAdmin 文本值,默认为"%adda"
当你遇到TypeError: startswith first arg must be str or a tuple of str, not NoneType这样的问题,就是没有更新配置文件导致的
新增功能:1.多人同时触发回复时会在回复内容中@触发者,并在拆开的长句的每一句前面都加上了随机的小前缀(共11种)
2.加入了白名单模式,如果开启将只回复所有群中的被配置的管理员,其他任何人无法触发,私聊不受影响。
3.加入快捷添加管理员的指令,默认前缀为"%adda"
4.(链接2)新增可以自定义temperature和max_tokens的配置文件
下次许愿什么功能呢?
修复问题:
1.当一次性收到太多的消息时会出现多提供参数的问题,导致没有一条消息被回复。
2.(链接2)当不拆开长句时开启atUser导致消息链没有被正确组装================================
最开始的版本
提取码:qzhV,点击下载 DeepseekMirai-1.0.exe(123云盘)
(运行效果可能不太好,尽力了)
小提示:
1.将commandPrefix中的answerUser设置为空,同时打开atBot,可以做到@bot直接触发,无需其他前缀。私聊直接触发,无需@。
2.你可以去Deepseek官网的聊天页面,让它帮你生成人设,然后填到提醒词里,这样你就拥有了属于自己的"QQ智能体?"
3.如果愿意,可以加一下群哦(虽然没啥人)~ 1028466667 -
插眼
-
发现的问题:多人同时触发有概率不回复
Exception in thread Thread-5 (answerUser0b):
Traceback (most recent call last):
File "threading.py", line 1075, in _bootstrap_inner
File "threading.py", line 1012, in run
TypeError: userRequest.answerUser0b() takes 1 positional argument but 2 were given -
因为回复较慢,可以考虑加上回复时艾特触发的那个人
-
@firefairy 这确实是个问题,线程是后加的,没考虑到一次可以收到好多信息
-
@firefairy 有时间改一改再看看(加上了正好可以玩赛博蛐蛐了)
-
@mckyby 能否顺便加个管理员or白名单模式 只有管理员or白名单用户 可以触发回复
-
@firefairy 等下个版本吧,应该挺好加
-
@firefairy 整完了,可以试试了
-
@mckyby 给劳模点赞
-
设置
"atUser": true,
时,
无法回复消息至QQ。
后台是有消息接收到的,只是无法发送出来。ParmentError - {'code': 400, 'msg': '无效参数'}
发送消息失败262 {'sessionKey': 'T7x56nCl', 'target': 534312912, 'messageChain': {'type': 'At', 'target': 335693890, 'display': '?'}}将atuser改为false则正常。
-
@firefairy 这个我暂时没遇到,怎么触发的?
-
@mckyby "atUser":设置成true,?
-
@firefairy 啊?我现在也是true,但是我没问题?。。报错看起来像是消息链没装好
-
@mckyby 该怎么办捏,我现在false是正常使用的。但改成true就不行了
-
@firefairy 等晚上重新打包一份再看看吧。。
-
@mckyby 好
-
@firefairy 我能用可能是我改了一丢丢东西。。
-
@mckyby 好 等个新版本
-
@firefairy 行,遇到了