| docs | ||
| src | ||
| .gitignore | ||
| backend.py | ||
| bot.py | ||
| example.config.yaml | ||
| example.env.prod | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| pyproject.toml | ||
| README.md | ||
| requirements.txt | ||
SanYeCao-Nonebot
📚介绍
🌟三叶草bot 2.0🌟
🚀使用Nonebot2+官方API搭建的QQ群聊机器人🚀
🔖亮点
- 基于Nonebot2,使用QQ官方API,更稳定、高效✨
- 多种个性化用法,如天气、每日运势(
机器人时尚单品)、点歌、编辑个人待办等,后续功能开发中🔧 - 使用轻量化数据库sqlite管理数据,实现为每位用户单独存取数据🔍
- 接入第三方大语言模型,实现AI交互💡
我是菜比🏳️🏳️,纯新手写的python 问题肯定多 ,若有兴趣可以帮忙一起完善功能
QQ交流群:710101225
- ↑sly是代码领域大神, 👈 ClovertaTheTrilobita 写的
🌈目前功能:
- 待办
- 天气
- 今日运势
- 今日塔罗
- 点歌(网易云 需扫码登录 在 src\music 目录下)
- 图(返回图库中的图片)
- 摸摸头
- 接入语言模型
- 搜索B站视频
- 今日老婆
- 群老婆
- 鲁迅说
- 喜报、悲报
- 查询cf比赛
- 日报
- 查询热门轻小说
- 获取新番信息
- 绝对色感
更多详细功能请查看features.md.
🛠️ 安装
⚙️一、环境配置
我们强烈建议您使用虚拟环境,若您使用Anaconda发行版,请在终端输入
conda create --name chatbot python=3.11
创建conda环境。
之后
conda activate chatbot
以启用您刚刚创建的虚拟环境。
你也可以将上述 chatbot 更换为你喜欢的名字。
🚫注意:机器人不支持,推荐使用
🧪 二、安装所需依赖
此机器人运行所需依赖已全部打包至requirements.txt,您只需回到项目根目录
在终端输入:
pip install -r requirements.txt
✒️ 三、配置所需文件
Caution
请一定要配置,否则bot无法启动
在一切开始前,你需要将项目根目录下的example.env.prod文件更名为.env.prod,这是机器人的账号配置文件。
我加了神必小代码,如果你没配置这两个配置文件是启动不起来的,因为有海量个例显示,很多人不看README就想当然地启动bot,并在群里问为什么会有报错(
但是,如果你碰到了难以解决的问题,无论是什么,都欢迎来群里和我们一起讨论♥️!
DRIVER=~fastapi+~httpx+~websockets
QQ_IS_SANDBOX=false
QQ_BOTS="
[
{
"id": "xxx",
"token": "xxx",
"secret": "xxx",
"intent": {
"c2c_group_at_messages": true
},
"use_websocket": true
}
]
"
分别在id、token、secret处填写你的机器人ID,机器人Token和App Secret,需从QQ开放平台获取。
📄 需要修改的配置文件
Important
请一定要配置,否则bot功能会不完善
找到 example.config.yaml ,将其重命名为config.yaml
并根据需要替换其配置项
🎵 四、网易云点歌依赖安装
1. 安装 Node.js 环境
-
官网下载:访问 Node.js 官网 下载 LTS 版本(推荐 v18.x+)
-
安装注意:
- 勾选
Add to PATH选项(自动配置环境变量) - 完成安装后重启终端使配置生效 验证 Node.js 版本
- 勾选
-
对于Debian/Ubuntu
- 你可以直接用以下命令安装
sudo apt install nodejs npm
2. 验证安装结果
npm -v
3. 安装 crypto-js 库
在项目根目录执行:
npm install crypto-js
📍五、启动机器人
在项目根目录中,找到 bot.py ,在终端输入
python bot.py
🎨 功能补充说明
✋ 管理员身份认证
介绍
机器人管理员可以控制是否使用第三方大语言模型进行交互。
使用
在 config.yaml 内,找到:
ai:
admin:
password: '123456'
可以更改为自己的密码。
设置好密码后,在 QQ 中 at 你的机器人,格式为:
@<机器人名称> /管理员注册 <密码>
例如,对三叶草进行管理员注册时,假如密码是 123456,需要:
@三叶草 /管理员注册 123456
Tip
关于Nonebot完整部署使用方法,请查看官方文档