使用LangBot和Dify定制化搭建微信公众号自动聊天机器人
以下操作均在云服务器上进行,如果在本地环境中需要内网穿透才可以连接到微信公众平台。
1. 环境准备
1.1 修改Hosts文件,直接访问GitHub的CDN节点(可选)
使用root账户打开hosts文件:
sudo nano /etc/hosts
在hosts文件中添加以下内容:
140.82.112.3 github.com
刷新DNS缓存:
sudo systemctl restart systemd-resolved
1.1 安装Dify
克隆源码至本地环境:
git clone https://github.com/langgenius/dify.git --branch 1.4.3
进入源码的docker目录:
cd dify/docker
复制环境配置文件:
cp .env.example .env
启动Docker容器:
docker compose up -d
1.2 安装LangBot
克隆源码至本地环境:
git clone https://github.com/RockChinQ/LangBot
进入源码的docker目录:
cd LangBot
启动Docker容器:
docker compose up
1.3 安装caddy
在终端输入以下内容:
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
1.4 注册微信公众号
微信公众平台官网注册:https://mp.weixin.qq.com/。
2. 部署微信公众号机器人
2.1 获取AppID与AppSecret,并设置白名单
2.2 配置LangBot
登录LangBot的WebUI界面,默认端口号为5300,在本地浏览器中输入:
23.23.43.56:5300 # 修改为自己的公网ip + 5300端口号
新建机器人,按照下图配置(不要修改端口号):
配置完成后开启机器人。
2.3 配置Caddy反向代理
修改Caddy的配置文件,默认路径为:/etc/caddy/Caddyfile。
在文件中添加以下内容:
23.23.43.56:80 { # 修改为自己的公网ip + 80端口号
reverse_proxy localhost:2287
}
重启Caddy服务:
sudo systemctl restart caddy
2.4 配置微信公众号
登录微信公众平台,进入公众号设置,将服务器配置中的URL填写为:
http://23.23.43.56/callback/command # 修改为自己的公网ip
在服务器配置中的Token填写为:
token # 这里的Token为LangBot的Token
在服务器配置中的EncodingAESKey填写为:
FuCy7LfE1LCrXEmCaTetUMjyZFeMy6W1GBvoe0uJE1O # 这里的EncodingAESKey与LangBot的EncodingAESKey对应,可以在微信公众平台生成
消息加解密方式选择安全模式。
提交后若显示错误,建议仔细检查LangBot与公众管理平台中配置的参数是否对应。
2.5 测试机器人
在LangBot的WebUI界面中,点击模型配置,添加一个LLM模型。
点击流水线,选择chatPipeline,配置AI能力:
可以点击对话,测试LLM模型是否接入成功。
在公众号中输入“你好”,测试机器人是否能正常工作。
3. 使用Dify定制化机器人(以ChatFlow为例)
3.1 创建ChatFlow应用
新建空白应用
将LLM模块中的模型改为chat型的模型,比如deepseek-v3。
点击发布更新->访问API
创建API密钥
在LangBot的WebUI界面中,点击流水线更改ChatPipeline的配置:
保存后可以点击对话测试是否成功调用Dify应用。
测试通过后可以直接在公众号中输入问题与机器人进行对话。