快速开始
本项目仅作为学习研究使用,切勿用于非法用途
项目简介
- LRobot 是一款基于 Python 开发的辅助聊天工具,主要服务于社团管理
- 项目围绕各消息平台构建消息处理和管理系统,涵盖 QQ、微信、B 站、网页四个平台的界面和指令功能
- 之后均用 LR232(qqbot),LR5921(Napcat),WECHAT(wechat),BILI(bilibili) 代替各平台
- 项目有各步骤详细的说明及教学,虽然涉及到账号申请、部署、准备数据等内容比较麻烦,但完成后可以发挥想象,设计更多更有趣的功能;同时给有一定经验的开发者做一个参考
- 项目将持续更新……
可以猜猜为什么叫这个名
快速开始
准备工作
- 首先了解聊天机器人是做什么的:
- 不是机器人
- 部署于聊天平台上
- 可以持续运行
- 完成自动回复、信息推送、群管等重复性内容
- 或搭载游戏查询、翻译、大语言模型等智能服务
- 然后你需要了解本项目和其他项目的区别
- 主要服务于多平台,如果只需要单平台,建议用更简单的架构
当然,消息处理和服务器连接方法还是可以参考一下的qwq - 主要使用自动回复、推送等功能,不涉及群聊、频道管理
- 存在入会、会员信息统计等社团相关功能,且相关数据不会提供,需要按需修改
但说明文档很详细 - 存在网盘、wiki 等大部分聊天机器人都不需要的页面
也有指令配置、日志页面等 - 本项目不是一体化运行,需要下载项目并逐一启动数个 docker
对于个人开发和更新指令更高效,以及,可以选择自己需要的服务进行配置
- 主要服务于多平台,如果只需要单平台,建议用更简单的架构
- 本项目存在两种运行方式,拥有公网 ip 地址参考方案 A,没有公网地址或追求更高的运行效率、更强的性能(如搭载大模型)参考方案 B
本地: 本地电脑;服务器: 远程服务器;运行机: 项目主要运行位置,方案 A 为服务器,方案 B 为本地
- 在运行机上配置 docker 环境,参考docker 配置教程
- 参考各平台注册教程选择需要的平台并配置,复制并重命名 secret.py,替换为自己的密码
- 在服务器上配置 nginx,将 command/nginx.conf 作为 nginx 配置文件(方案 B 把 5922 改为 10000),参考服务器配置教程
- 在运行机上下载项目
git clone https://github.com/wwweibu/Lrobot.git(超时参考此处) 并进入目录cd Lrobot
无论哪种方案,默认本地能够访问 github 服务以及 docker 服务
方案 A
仅使用本项目,不扩展大模型时,采用
2核2G运存50G内存的服务器,cpu 占用率不超过 5%,内存占用率不超过 50%,系统盘使用不超过 40GB(其中网盘占用 12GB),且网盘上传下载速度是方式 2 的 10 倍(可能是家里网太差)
- 需要一台拥有公网 ip 的服务器,以 ubuntu 系统为例(以下操作未提到本地均在服务器上完成)
- 启动 napcat 服务(若需要 napcat 平台)
docker compose up --build -d napcat(失败参考此处,下同)(linux 使用 docker 命令需要加 sudo,下同)- 临时开放服务器的 6099 端口(可参考)
- 本地访问
http://服务器ip:6099/webui?token=napcat - 服务器使用
docker logs napcat在日志中寻找生成的随机密钥 - 本地使用密钥登录,并扫码登录 QQ,进入网络配置
- 配置 HTTP 服务器,
启用-开启 Debug-主机:0.0.0.0-port:5921 - 配置 HTTP 客户端,
启用-开启 Debug-URL:http://lrobot:5922/LR5921/(配置了 secret 记得改成加密后的路径)-上报自身消息 - 均不开启 cors 和 ws
其他配置-登录配置里填写当前 QQ 以便快速登录
- 启动 mihomo 服务(服务器网络代理服务,可不使用)
- 编辑
storage/yml/agent_copy.yaml为 agent.yaml,保留前几行,后面使用对应的 mihomo 代理配置 docker compose up --build -d mihomo启动服务
- 编辑
- 启动数据库服务
docker compose up --build -d mysql如果不想要 id 太大,手动将
storage/data/initdb/mysql.sql中的 id 删掉所有AUTO_INCREMENT=xxxdocker compose up --build -d mongodb
- 启动 napcat 监听服务
docker compose up --build -d napcat_log
- 配置系统参数
- 将
storage/yml文件夹中含 copy 的文件重命名去掉 copy(其中 secret.yaml 需要根据文件中的配置提示配置各平台参数,不需要配置服务器和域名)
- 将
- 启动 lrobot 主服务
docker compose up --build -d lrobot- 需安装 libreoffice,预计 10 分钟
- 参考回调配置教程配置各平台回调地址
方案 B

使用本方案运行效率的上限肯定比仅使用服务器要高,且如果是 windows 的话 docker desktop 看日志比 linux 更好;但可能会遇到本地网络环境差、电脑死机等意外风险
- 需要准备一台长期运行项目的电脑(以下操作未提到服务器均在本地完成)
- 长期运行=不断电+不自动关机+网络稳定
- 可以参考运行机优化教程安装 Atlas OS
- 启动 napcat 服务(若需要 napcat 平台)
docker compose up --build -d napcat- 访问网址进行登录及 QQ 扫码(也可以扫
storage/data/napcat/cache处的二维码) - 配置 HTTP 服务器,
启用-开启 Debug-主机:0.0.0.0-port:5921 - 配置 HTTP 客户端,
启用-开启 Debug-URL:http://lrobot:5922/LR5921/(配置了 secret 记得改成加密后的路径)-上报自身消息 - 均不开启 cors 和 ws
其他配置-登录配置里填写当前 QQ 以便快速登录
- 由于默认本地有代理网络环境,不使用 mihomo 容器
- 启动数据库服务
docker compose up --build -d mysql如果不想要 id 太大,手动将
storage/data/initdb/mysql.sql中的 id 删掉所有AUTO_INCREMENT=xxxdocker compose up --build -d mongodb
- 启动 napcat 监听服务
docker compose up --build -d napcat_log
- 启动服务器连接与转发
- 在
storage/yml/secret.yaml中填写服务器 ip 和 username docker compose up --build -d command启动服务器连接
- 在
- 将 storage/yml 文件夹中含 copy 的文件重命名去掉 copy(其中 secret.yaml 需要根据文件中的配置提示配置各平台参数,agent.yaml 不用处理)
- 启动 lrobot 主服务
docker compose up --build -d lrobot- 需安装 libreoffice,预计 10 分钟
- 参考回调配置教程配置各平台回调地址
文档结构
- 项目总览包含快速开始、常见问题等了解项目的内容
- 使用指南包含项目配置说明、使用指南等非代码内容
- 开发指南包含所有代码的讲解
- 项目测试包含测试用例
对哪个部分的代码产生疑问,直接右上角搜文件名即可
