多端智能对话机器人,支持微信公众号、企业微信、飞书、钉钉等多种平台部署。具备私聊、群聊、语音、图像等多模态交互能力,可接入 GPT-3.5、GPT-4、Claude、文心一言等多个大模型,并支持自定义知识库。丰富的插件生态,如多角色切换、文档总结等,满足各种场景需求。
特性
- 多端部署: 有多种部署方式可选择且功能完备,目前已支持微信公众号、企业微信应用、飞书、钉钉等部署方式
- 基础对话: 私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 GPT-3.5, GPT-4o-mini, GPT-4o, GPT-4, Claude-3.5, Gemini, 文心一言, 讯飞星火, 通义千问,ChatGLM-4,Kimi(月之暗面), MiniMax
- 语音能力: 可识别语音消息,通过文字或语音回复,支持 azure, baidu, google, openai(whisper/tts) 等多种语音模型
- 图像能力: 支持图片生成、图片识别、图生图(如照片修复),可选择 Dall-E-3, stable diffusion, replicate, midjourney, CogView-3, vision模型
- 丰富插件: 支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结、文档总结和对话、联网搜索等插件
- 知识库: 通过上传知识库文件自定义专属机器人,可作为数字分身、智能客服、私域助手使用,基于 LinkAI 实现
Docker部署
使用docker部署无需下载源码和安装依赖,只需要拉取镜像并根据 docker-compose.yml 配置文件启动容器即可。
前提是安装好
docker
及docker-compose
,安装成功的表现是执行docker -v
和docker compose version
(或 docker-compose version) 可以查看到版本号,可前往 docker官网 进行下载。
(1) 配置 docker-compose.yml
执行以下命令下载 docker-compose.yml
:
wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml
接着打开文件,修改或添加所需的配置,如 OPEN_AI_API_KEY
和 GROUP_NAME_WHITE_LIST
等必填配置。
(2) 启动容器
在 docker-compose.yml 所在目录下执行以下命令启动容器:
sudo docker compose up -d
运行 sudo docker ps 能查看到 NAMES 为 chatgpt-on-wechat
的容器即表示运行成功。
提示
- 如果 docker-compose 是 1.X 版本 则需要执行 sudo docker-compose up -d 来启动容器
- 该命令会自动去 docker hub 拉取 latest 版本的镜像,latest 镜像会在每次项目 release 新的版本时生成
最后运行以下命令可查看容器运行日志,扫描日志中的二维码即可完成登录:
sudo docker logs -f chatgpt-on-wechat
(3) 停止容器
执行以下命令可以关闭服务:
sudo docker compose down
注意:如果修改了 docker-compose.yml
中的配置,需要关闭容器后再重新启动才能生效,只执行 docker restart
是不起作用的。
本地运行
本地开发环境支持 MacOS、Windows、Linux 系统,需要安装 python 环境,推荐的版本在 3.7.1 ~ 3.9.X 之间,可前往 官网 下载。
在命令行执行
python3 -V
,如果能显示正确的版本则表示安装成功。需要注意的是,python3 只是一个指向python解释器的引用,有可能在你的系统里这个别名是 "python" 或者 "python3.8",那么在后面你就需要用 "python" 或 "python3.8" 来代替 python3 运行程序。同样的,执行pip3 -V
来确认已经成功安装包管理软件 pip。
(1) 下载源码
在命令行使用 git 克隆项目并进入目录:
git clone https://github.com/zhayujie/chatgpt-on-wechatcd chatgpt-on-wechat/
(2) 安装依赖
pip3 install -r requirements.txt # 必选依赖pip3 install -r requirements-optional.txt # 可选依赖,语音、tool插件等功能需要
(3) 配置
复制项目中的模板文件 config-template.json
,来生成最终起效果的配置文件config.json
,你可以通过执行以下命令完成:
cp config-template.json config.json
然后打开 config.json
文件,添加所需配置,具体配置含义参考 配置说明。
(4) 运行
一切准备就绪,可以启动程序了,直接在项目目录下执行:
python3 app.py
扫描输出的二维码即可完成登录。如果你使用的是 pycharm 等IDE,就更方便了,点击运行按钮就可以直接运行。
服务器部署
服务器部署支持各类 linux发行版 及 winserver,同样需要安装 python 环境,推荐的版本在 3.7.1 ~ 3.9.X 之间,可前往 官网 下载,相比在图形界面环境安装python,服务器还需要安装一些前置依赖,可以参考这两篇博文: ubuntu 和 centos。
在命令行执行
python3 -V
,如果能显示正确的版本则表示安装成功。需要注意的是,python3 只是一个指向python解释器的引用,有可能在你的系统里这个别名是 "python" 或者 "python3.8",那么在后面你就需要用 "python" 或 "python3.8" 来代替 python3 运行程序。同样的,执行pip3 -V
来确认已经成功安装包管理软件 pip。
(1) 下载源码
在命令行使用 git 克隆项目并进入目录:
git clone https://github.com/zhayujie/chatgpt-on-wechatcd chatgpt-on-wechat/
(2) 安装依赖
pip3 install -r requirements.txt # 必选依赖
pip3 install -r requirements-optional.txt # 可选依赖,语音、tool插件等功能需要
(3) 配置
复制项目中的模板文件 config-template.json
,来生成最终起效果的配置文件config.json
,你可以通过执行以下命令完成:
cp config-template.json config.json
然后打开 config.json
文件,添加所需配置,具体配置含义参考 配置说明。
(4) 运行程序
使用nohup命令在后台运行程序,即使断开ssh连接也能保持运行:
touch nohup.out # 首次运行需要新建日志文件
nohup python3 app.py & tail -f nohup.out # 在后台运行程序并通过日志输出二维码
扫码登录后程序即可运行于服务器后台,此时可通过 ctrl+c 关闭日志,不会影响后台程序的运行。在日志关闭后如果想要再次打开只需输入 tail -f nohup.out
。
(5) 停止程序
如果想要关闭程序可以 执行 kill -9 <pid>
来完成,执行以下命令可以查看当前进程的 pid:
ps -ef | grep app.py | grep -v grep