效果展示
功能列
多端部署: 有多种部署方式可选择且功能完备,目前已支持个人微信,微信公众号和企业微信应用等部署方式
基础对话: 私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 GPT-3,GPT-3.5,GPT-4模型
语音识别: 可识别语音消息,通过文字或语音回复,支持 azure, baidu, google, openai等多种语音模型
图片生成: 支持图片生成 和 图生图(如照片修复),可选择 Dell-E, stable diffusion, replicate模型
丰富插件: 支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结等插件
Tool工具: 与操作系统和互联网交互,支持最新信息搜索、数学计算、天气和资讯查询、网页总结,基于 chatgpt-tool-hub 实现
部署
- 首先 搞一个国外的服务器搭建一个 宝塔 ,域名解析到这个服务器的ip
配置好方向代理
server
{
listen 80;
server_name xxxx.xxxx.xyz;
#REWRITE-END
location / {
proxy_pass http://localhost:8080;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache_bypass $http_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_read_timeout 600s; ##设置SSE长链接保持时间为 600s
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
access_log /dev/null;
error_log /www/wwwlogs/chat4.daimadaquan.xyz.error.log;
}
然后启动nginx ,这样就可以将 xxxx.xxxx.xyz; 代理到本地 8080 端口 方便多端部署
-
配置微信开发者工具
-
启动源码修改 端口和 ip
if self.passive_reply:
urls = ("/wx", "channel.wechatmp.passive_reply.Query")
else:
urls = ("/wx", "channel.wechatmp.active_reply.Query")
app = web.application(urls, globals(), autoreload=False)
port = conf().get("wechatmp_port", 8080)
web.httpserver.runsimple(app.wsgifunc(), ("localhost", port))
- 后端服务的启动命令:
touch nohup.out # 首次运行需要新建日志文件
nohup python3 app.py & tail -f nohup.out # 在后台运行程序并通过日志输出二维码
- 测试参考案例效果