前段时间逛GitHub刷到一个项目:chatgpt-on-wechat,特别有意思。使用大模型搭建微信聊天机器人,基于 ,支持个人微信、公众号、企业微信、飞书部署,能处理文本、语音和图片,访问操作系统和互联网,支持基于知识库定制专属机器人。
简单来说就是,利用这些平台的Api接口实现,微信机器人以及公众号智能回复的功能。
正好想起之前听说星火有提供体验包,就打算接上我那个人公众号试试。效果还不错,可以多个模型切换,管理模式等等,并且带关键词回复(和配置),原本的功能也不会丢失。 使用体验方面,除了感觉有点延迟之外,也不知道是程序上的问题,还是我用的是测试机比较拉胯(服务器121配置),其他方面倒没有碰到过什么问题了。
ChatGPT近期以强大的对话和信息整合能力风靡全网,可以写代码、改论文、讲故事,几乎无所不能,这让人不禁有个大胆的想法,能否用他的对话模型把我们的微信打造成一个智能机器人,可以在与好友对话中给出意想不到的回应,而且再也不用担心女朋友影响我们 打游戏 工作了。
截稿前(23.11.28),最新版本支持的功能:
- 多端部署:有多种部署方式可选择且功能完备,目前已支持个人微信、微信公众号和、业微信、飞书等部署方式
- 基础对话:私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 GPT-3.5, GPT-4, claude, 文心一言, 讯飞星火
- 语音能力:可识别语音消息,通过文字或语音回复,支持 azure, baidu, google, openai(whisper/tts) 等多种语音模型
- 图像能力:支持图片生成、图片识别、图生图(如照片修复),可选择 Dall-E-3, stable diffusion, replicate, midjourney, vision模型
- 丰富插件:支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结、文档总结和对话等插件
- Tool工具:与操作系统和互联网交互,支持最新信息搜索、数学计算、天气和资讯查询、网页总结,基于 chatgpt-tool-hub 实现
- 知识库:通过上传知识库文件自定义专属机器人,可作为数字分身、领域知识库、智能客服使用,基于 linkAI 实现
值得注意的是,公众号目前只支持 和 环境部署,不支持railway及本地部署。
当然了,你也可以前往微信公众号:亦小封,进行回复体验~
本篇教程只提供 方案,为实机实装步骤。更多部署方式可参考:项目文档 - 程序部署
-
准备一个微信公众号(订阅号/服务号),以及一台Linux的服务器
-
前往 讯飞星火认知大模型 注册账号,并进行实名认证。(当然了,也可以使用文心一言或者ChatGPT等等,即可。)
-
在 处进行点击立刻购买,选择个人认证的免费保进行下单。回到页面后,记下APPID、APISecret、APIKey的值,后面需要用到。(注意这些内容不可重置,所以勿轻易泄露。)
-
检查你的服务器Python版本是否在 3.7.1~3.9.X 之间,推荐3.8版本,如果满足条件则可跳过第5、6步骤。
-
根据以下内容,逐步进行。
- 配置软连接。
- 进入宝塔创建站点,然后在站点设置的 进行添加你所需要映射的端口,写法为:127.0.0.1:端口号
- 在FinalShell上,进入该站点的根目录处,也就是所示的:。接着逐步执行下方内容。
- 进入后拉取项目代码,再到宝塔的站点文件处将拉取到的 文件夹内所有的文件移动到站点的根目录。
- 根据以下内容,逐步进行。
-
登录微信公众号,找到设置与开发里的 选项,进行开通后,会得到开发者的 AppID 和 AppSecret,将其记下,后面需要用到。
-
在宝塔内,站点根目录处新建 文件,配置好下边的东西,放进去。
- 当然,你也可以在 配置多个模型以便切换。
- 在站点根目录下,逐步执行以下命令,启动运行。
-
正常运行后,来到微信公众号后台的 选项,将你的服务器公网地址填进 内。
-
接着在 处修改配置,依次填写URL、Token、EncodingAESKey,消息加解密方式选择明文,提交即可。
- 至此,大功告成!可以前往公众号里体验了~
当修改了 时,也可以在公众号里进行管理身份认证直接进行重载配置、切换模型等操作。
- 在公众号内进行发言,在日志处可以看到用户身份id,复制下来。
- 打开宝塔,进入 文件,进行配置身份和密钥。
- 关闭进程后,重新运行。
- 打开宝塔,进入 文件,进行配置。
- 关闭进程后,重新运行。
chatgpt-on-wechat> | GitHub
chatgpt-on-wechat> | 项目文档