🍾我的公众号接入 AI🤖了

本文最后更新于:2025年2月7日 下午

背景

近期,DeepSeek 等 AI 应用的爆火让我深刻意识到 AI 技术在各个领域中的巨大潜力。为了更好地拥抱 AI,我决定在我的所有工作生活场景中尽可能地加入 AI,以提升效率和体验。

作为拥抱 AI 的一环,我选择了为我的微信公众号接入 AI 功能,使其能够智能回复用户消息,提供更丰富的交互体验。

技术栈

本次项目主要使用了以下技术栈:

  • Docker 和 Docker Compose:用于容器化部署,确保环境一致性;简化多容器应用的配置和管理。
  • 智谱 AI:提供强大的语言模型支持,确保 AI 回复的质量。(原因是 DeepSeek 当前服务不太稳定,先找个临时的替代.)
  • 微信公众号平台:作为 AI 应用的对接渠道。
  • 阿里云 ECS:提供稳定的虚拟机运行环境,并通过安全组配置确保安全性。
  • chatgpt-on-wechat: 基于大模型搭建的聊天机器人,同时支持 微信公众号、企业微信应用、飞书、钉钉 等接入。

具体步骤

1. 准备环境

首先,在阿里云 ECS 上准备运行环境,确保开放了必要的安全组规则,允许 80 端口的访问。

2. 配置 Docker Compose

编写 docker-compose.yml 文件,配置 AI 应用的运行参数。关键配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
services:
chatgpt-on-wechat:
image: zhayujie/chatgpt-on-wechat
container_name: chatgpt-on-wechat
security_opt:
- seccomp:unconfined
ports:
- 80:80
environment:
ZHIPU_AI_API_KEY: 'your-zhipu-ai-api-key'
MODEL: 'glm-4-plus'
PROXY: 'https://open.bigmodel.cn/api/paas/v4/'
SINGLE_CHAT_REPLY_PREFIX: '"[bot] "'
GROUP_CHAT_PREFIX: '["@bot"]'
GROUP_NAME_WHITE_LIST: '["ChatGPT测试群", "ChatGPT测试群2"]'
IMAGE_CREATE_PREFIX: '["画", "看", "找"]'
CONVERSATION_MAX_TOKENS: 1000
SPEECH_RECOGNITION: 'False'
CHARACTER_DESC: '你是基于大语言模型的AI智能助手,专业领域为监控可观察性(Observability)、云原生云计算和架构,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。你的知识技术栈包括:监控可观察性(Observability)、云计算、云原生、高可用、Kubernetes、Docker、容器、PaaS、中间件、微服务、DevOps和数据库。'
EXPIRES_IN_SECONDS: 3600
USE_GLOBAL_PLUGIN_CONFIG: 'True'
USE_LINKAI: 'False'
LINKAI_API_KEY: ''
LINKAI_APP_CODE: ''
CHANNEL_TYPE: "wechatmp"
SINGLE_CHAT_PREFIX: '[""]'
WECHATMP_APP_ID: "wx73f9******d1e48"
WECHATMP_APP_SECRET: "weca******est"
WECHATMP_AES_KEY: "pbVhSx******************************************6Y0"
WECHATMP_TOKEN: "3f9b8**********************f6a"
WECHATMP_PORT: 80
SUBSCRIBE_MSG: "感谢您的关注!\n这里是AI Bot,可以自由对话。\n支持角色扮演和文字冒险等丰富插件。\n输入{trigger_prefix}#help 查看详细指令。"

相比其原文档:

调整了以下配置:

  • ZHIPU_AI_API_KEY: 智谱 AI 的 API Key,用于调用 AI 模型。且不配置 open_ai_api_key
  • MODEL: 模型名称,用于调用 AI 模型。
  • PROXY: 代理地址,用于调用 AI 模型。这里填写智谱 AI 的 API 地址。具体为: 'https://open.bigmodel.cn/api/paas/v4/'
  • CHARACTER_DESC: AI 助手的描述,用于介绍 AI 助手的功能和能力。这里提示词:基于 EWhisper 上我的自我介绍做了微调.
  • WECHATMP_APP_IDWECHATMP_APP_SECRETWECHATMP_AES_KEYWECHATMP_TOKEN: 微信公众号的配置信息,用于对接微信公众号平台。

3. 微信公众号开发配置

在微信公众号平台上完成应用的注册和配置,获取必要的 App ID、App Secret 等信息,并将其填入 docker-compose.yml 文件中。

4. 启动服务

使用 Docker Compose 启动服务:

1
sudo docker-compose up -d

🐾注意:这里需要用 sudo 启动,因为微信公众号对接只能使用 80 或 443 端口。这里使用 80 端口.
当然,如果是企业级部署,那么可以通过 Nginx 代理 / ALB 转发到其他端口,实现安全 + 高可用.

5. 微信公众号 - 服务器配置

具体参考: chatgpt-on-wechat 公众号对接文档

配置的流程如下:

在公众平台启用开发者密码 (对应配置 wechatmp_app_secret),并将服务器 ip 填入白名单中
按上图填写 config.json 中与公众号相关的配置,要与公众号后台的配置一致
启动程序,启动后会监听 80 端口 (若无权限监听,则在启动命令前加上 sudo;若 80 端口已被占用,则关闭该占用进程)
在公众号后台启用服务器配置并提交,如果保存成功则表示已经成功配置。注意 “服务器地址 (URL)” 这一项需要配置为 http://{HOST}/wx 的格式,其中 {HOST} 可以是服务器的 ip 或域名。

6. 测试与验证

确保服务正常运行后,通过微信公众号发送测试消息,验证 AI 回复功能是否正常。

效果

接入 AI 后,我的微信公众号具备了智能回复能力,能够根据用户的输入提供准确且富有创意的回答。特别是在监控可观察性、云原生、云计算等领域的问题上,AI 助手表现尤为出色,极大提升了用户体验。

实际效果如下:

公众号 AI 实际效果

此外,AI 助手还支持角色扮演和文字冒险等丰富插件,增加了互动的趣味性和多样性。

总结

通过此次尝试,我成功将 AI 技术融入了我的微信公众号,不仅提升了用户的交互体验,也让我更加坚定了在更多场景中引入 AI 的决心。欢迎各位读者关注我的公众号,亲身体验 AI 带来的便捷与乐趣!

后续计划

后续的计划是继续优化和扩展 AI 助手的功能,以适应更多场景和需求。包括:

  • 关联知识库,以提供更详细的知识支持;
  • 对接语音识别和语音合成,以实现更智能的交互;
  • 对接 DeepSeek 等模型,以提供更智能的问答能力;

此外,近期我还会尝试探索更多的应用场景,以扩展 AI 助手的用途。包括不限于:

  • Obsidian 知识库 AI 插件,实现:
    • 基于知识库的问答;
    • 笔记的智能关联;
    • AI 辅助写文章
  • 部署 lobe-chat, 以实现:
    • 基于知识库的问答;
    • 丰富的插件;
    • 丰富的 AI 助手;
    • 随时随地访问;
    • 聊天记录保存
  • 电脑桌面端 / 移动端 AI 助手选型
  • 运维及监控告警 + AI = AIOps
  • Kubernetes + AI
  • 编程 + AI
  • Linux Shell Terminal + AI
  • 工作流 Workflow + AI
  • 智能家居 (小米音箱) + AI

通过实践,进一步体会 AI 在各个领域的广泛的应用前景和价值。

📚参考文档


🍾我的公众号接入 AI🤖了
https://ewhisper.cn/posts/51045/
作者
东风微鸣
发布于
2025年2月7日
许可协议