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转发

例图