ChatBot
新手的的第一个开源项目。不要去看源码啊,会社死的。
项目介绍
一个与GPT、Claude、New Bing(还未接入)聊天的插件。论坛里已经有那么多了,啊喂。
接入了Google、WolframAlphaAPI,可以让GPT总结。见例图4
项目来源
下载地址: ChatBot
前置插件: mirai-selenium-plugin
前置插件: QBotCore (个人项目拆分)
本来想直接用论坛里 OpenAI ChatBot ,但由于需要对项目进行集成和修改。
Ex-ChatGPT,介绍: Ex-ChatGPT 使得 ChatGPT 能够调用外部 API,例如 WolframAlpha、Google 和 WikiMedia,以提供更准确和及时的答案。
由于是对个人项目的拆分,很多功能还不完善,目前还在迭代中。例如:模板(Prompt)的动态加入、支持正则指令、更好看的菜单。
使用建议
需要对gpt等API进行代理,注意不要选择香港的代理。
需要申请
OpenAI /
WolframAlpha /
Google /
Search Engine 的令牌。
data/io.github.absdf15.chatbot/prompt/prompt 可以读取该文件夹下的 prompt 模板。模板文件需要以 prompt-*.txt 为格式,例如:prompt-魔法全典.txt。
支持前后缀, prompt下的suffix和prefix文件夹,在与 Bot 进行对话时,会将内容加以前缀。
例如现在使用的模板是prompt-英语翻译.txt,那么prefix-英语翻译.txt 和 suffix-英语翻译.txt的文件就会读取
处理前的字符串:今天星期几。处理后:Translation:{“今天星期几”}
目前支持的替换内容#{userCode}、#{userName},替换列表还在添加中。
配置文件存储位置config/io.github.absdf15.chatbot/,未介绍的直接看配置文件中的注释即可。
配置文件chat-setting.yml# 过滤会话启用(没用着,下次迭代修改)
has_filter_session: true
# 会话共享(这里是个Map:群号:是否开启。默认关闭。详见:指令列表)
hasSession_shared: {}
# 默认Prompt(需要修改默认模板,None会导致请求无法成功)
default_prompt: NONE
# 默认Prompt(这里应该是每人每天的最大使用上限,还未实现功能)
request_limit: 200
配置文件 api-config.yml,填入申请的令牌
OpenAI /
WolframAlpha /
Google。google_api_key: ''
google_search_engine_id: ''
wolfram_api_id: ''
指令
指令映射
可以通过修改command-config.yml来改变冲突的指令。
切勿修改错误,文件example-command.yml是用来参考的示例,每次重启都会刷新
指令列表
菜单 (查看基础指令)
管理员指令(查看管理指令)
GPT指令(查看GPT指令
GPT指令
切换人格 [人格名]
人格列表
清空会话
@机器人 即可对话
/q[文本] 查询内容并根据API回复
#切换[消息序号] 切换消息并回复(用于正常聊天中的切换,如果使用了‘#响应’请用‘切换至’)
#响应 获取机器人响应(即不发送消息,用于让机器人说完自己未说完的内容)
#切换至[消息序号] 切换消息不回复
#聊天记录 查看你与BOT的聊天记录及序号
#导出聊天记录 导出聊天记录至群聊
管理员指令
群列表 (查看机器人进了哪些群)
启用群[群号/空]
禁用群[群号/空]
添加管理[QQ/空]
删除管理[QQ/空]
初始化启动
Mirai Console
MCL下载链接
//TODO
项目启动
首先应从
Releases 下载 ChatBot 插件,并放入 Plugins 文件夹
启动后,需输入QQ号和OpenAI API KEY 输入完成后,关闭项目。
编辑/config/io.github.absdf15.chatbot/api-config.yml文件,按顺序填入即可google_api_key: ''
google_search_engine_id: ''
wolfram_api_id: ''
计划更新
画饼,疯狂的画饼
调用链。例如:输入“菜单”“后输入‘1’可以获取子菜单。
接入萌娘百科、Steam 搜索API。丰富/q的输出。
群友在线添加模板,由管理审核后加入模板列表。
更丰富的功能,例如:爬取网站,制作成 Execl表格。
添加Claude、NewBing转发
例图