想使用WX机器人使用的两种方式:
1、懒得搭建,想直接用着玩玩,可以用题主搭建的体验,可以加题主的抖音群,群内分享;
2、对于有一点基础的人,使用Docker搭建,1小时搞定;
当前有很多人还不能方便的访问OpenAI的官方网站,痛快的体验GPT带来的各种便利,于是有了这个项目:
chatgpt-on-wechat(简称CoW)项目是基于大模型的智能对话机器人,支持微信公众号、企业微信应用、飞书、钉钉接入,可选择GPT3.5/GPT4.0/Claude/Gemini/LinkAI/ChatGLM/KIMI/文心一言/讯飞星火/通义千问/LinkAI,能处理文本、语音和图片,通过插件访问操作系统和互联网等外部资源,支持基于自有知识库定制企业AI应用。
它支持的功能如下:
✅ 多端部署: 有多种部署方式可选择且功能完备,目前已支持微信公众号、企业微信应用、飞书、钉钉等部署方式
✅ 基础对话: 私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 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的服务器,配置不需要太好,阿里的99元/年的套餐足以。
其次,你需要有一个稳定的Key和API接口地址,OpenAI接口地址可以使用:https://oneapi.gongxiangai.top/v1,Key的话可以买本站的,几块钱,购买链接(Key购买)>>,购买后会获得一个API-Key(SK-xxx格式),保存好。
再次,你需要有一个微信帐号,用来做自动对话使用,也就是说这个微信帐号就是那个自动回复机器人,注意:必须是实名认证过的帐号。
二、搭建
通过宝塔安装好 docker 及 docker-compose,安装成功的表现是执行 docker -v 和 docker-compose version,如图所示,点击对应的按钮即可自动安装,全程不需要我们手动介入。

安装好之后,如下图所示,就可以在 Docker 界面的最上面看到管理菜单栏,包括快速部署项目、容器、项目、项目模板、镜像、网络、存储卷、仓库、设置等。这些如果对 Docker 比较熟悉的朋友应该都知道怎么使用,如果对 Docker 不熟悉的话建议先熟悉一下。
Docker安装后
(1) 下载 docker-compose.yml 文件
wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml_
下载完成后打开 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 的容器即表示运行成功。
(3) 最后运行以下命令可查看容器运行日志,扫描日志中的二维码即可完成登录:
sudo docker logs -f chatgpt-on-wechat
(4)修改配置,打开chatgpt-on-wechat目录下的docker-compose.yml,修改如下配置:
services:
chatgpt-on-wechat:
image: zhayujie/chatgpt-on-wechat
container_name: chatgpt-on-wechat
security_opt:
- seccomp:unconfined
environment:
OPEN_AI_API_KEY: ‘sk-xxxx’
OPEN_AI_API_BASE: ‘https://oneapi.gongxiangai.top/v1’
MODEL: ‘gpt-4o-mini’
PROXY: ''
SINGLE_CHAT_PREFIX: ‘[""]’
SINGLE_CHAT_REPLY_PREFIX: ‘“[小智]”’
GROUP_CHAT_PREFIX: ‘[“GPT”,“@GPT”]’
GROUP_NAME_WHITE_LIST: ‘[“ALL_GROUP”]’
IMAGE_CREATE_PREFIX: ‘[“画”]’
CONVERSATION_MAX_TOKENS: 1000
SPEECH_RECOGNITION: ‘False’
CHARACTER_DESC: ‘你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。’
EXPIRES_IN_SECONDS: 3600
USE_GLOBAL_PLUGIN_CONFIG: ‘false’
USE_LINKAI: ‘False’
LINKAI_API_KEY: ''
LINKAI_APP_CODE: ''
VOICE_REPLY_VOICE: ‘True’
VOICE_TO_TEXT: ‘openai’
TEXT_TO_VOICE: ‘openai’
TEXT_TO_VOICE_MODEL: ‘tts-1’
TTS_VOICE_ID: ‘alloy’
CLEAR_MEMORY_COMMANDS: ‘[“#清除记忆”]’
GROUP_CHAT_KEYWORD: ‘[“AI”,“人工智能”]’
TRIGGER_BY_SELF: ‘True’
配置含义如下:
model: 模型名称,目前支持 gpt-3.5-turbo, gpt-4o-mini, gpt-4o, gpt-4, wenxin , claude , gemini, glm-4, xunfei, moonshot等,全部模型名称参考common/const.py文件
temperature,frequency_penalty,presence_penalty: Chat API接口参数,详情参考OpenAI官方文档。
proxy:由于目前 openai 接口国内无法访问,需配置代理客户端的地址,详情参考 #351
对于图像生成,在满足个人或群组触发条件外,还需要额外的关键词前缀来触发,对应配置 image_create_prefix
关于OpenAI对话及图片接口的参数配置(内容自由度、回复字数限制、图片大小等),可以参考 对话接口 和 图像接口 文档,在config.py中检查哪些参数在本项目中是可配置的。
conversation_max_tokens:表示能够记忆的上下文最大字数(一问一答为一组对话,如果累积的对话字数超出限制,就会优先移除最早的一组对话)
rate_limit_chatgpt,rate_limit_dalle:每分钟最高问答速率、画图速率,超速后排队按序处理。
clear_memory_commands: 对话内指令,主动清空前文记忆,字符串数组可自定义指令别名。
hot_reload: 程序退出后,暂存等于状态,默认关闭。
character_desc 配置中保存着你对机器人说的一段话,他会记住这段话并作为他的设定,你可以为他定制任何人格 (关于会话上下文的更多内容参考该 issue)
subscribe_msg:订阅消息,公众号和企业微信channel中请填写,当被订阅时会自动回复, 可使用特殊占位符。目前支持的占位符有{trigger_prefix},在程序中它会自动替换成bot的触发词。
use_linkai: 是否使用LinkAI接口,开启后可国内访问,使用知识库和 Midjourney 绘画, 参考 文档
linkai_api_key: LinkAI Api Key,可在 控制台 创建
linkai_app_code: LinkAI 应用或工作流的code,选填
三、运行
配置好文件后,重启Docker,然后通过sudo docker logs -f chatgpt-on-wechat命令,在日志中看到二维码,用提前准备好的微信帐号扫描登录。

至此,大功告成,你拥有了自己的GPT聊天机器人。