Please enable Javascript to view the contents

微信、公众号接入 GPT 服务

 ·  ☕ 4 分钟

提供有偿接入服务,200 RMB/年;另外,提供技术支持 200 RMB/次,不超过 1 hour;关注公众号,可获得联系方式。

1. 需要提供的信息

进入 https://mp.weixin.qq.com/ 在左侧菜单栏 【设置与开发】-> 【基本设置】,就能找到下面的信息

  • AppID

开发者 ID,可以明文直接查看到。

  • AppSecret

开发者密码,需要点击一下【重置】,才能获取到。

2. 接入公众号

2.1 参数说明

  • URL

类似这样 https://api.chenshaowen.com/v1/mp

  • Token

长度为 3-32 字符,类似 lg36YKM8YENbGMGhzWde1mjItkRZ0Z

我会使用下面的脚本生成:

1
echo $(openssl rand -base64 100 | tr -d '/+=' | head -c 30)
  • EncodingAESKey

长度为 43 位字符,类似 XFfydEWkz1Eu4pjBZilgJyZ9nDaul6ctftYxeR0Qv1b

我会使用下面的脚本生成:

1
echo $(openssl rand -base64 100 | tr -d '/+=' | head -c 43)
  • IP 白名单【服务号需要,订阅号不用】

    1.1.1.1
    2.2.2.2

类似这样格式,每行一个 IP 地址。

2.2 修改参数

进入 https://mp.weixin.qq.com/ 在左侧菜单栏 【设置与开发】-> 【基本设置】,点击 【修改配置】

进入【基础配置】/【填写服务器配置】页面

第一步,填写 URL,详情见上面的说明

第二步,填写 Token,详情见上面的说明

第三步,填写 EncodingAESKey,详情见上面的说明

第四步,设置消息加解密方式为【兼容模式】

最后,点击【提交】按钮

2.3 启动服务器配置

如上图,点击【启用】按钮,启动服务器配置。

2.4 【服务号】安全配置

进入 https://mp.weixin.qq.com/ 在左侧菜单栏 【设置与开发】-> 【安全中心】,在【IP 白名单】点击【查看】

进入 IP 白名单修改页面,点击修改

将上面的 IP 白名单填写到这里,每行一个 IP 地址,点击【确认修改】按钮保存修改即可。

2.5 测试公众号

直接在公众号与 GPT 服务对话即可,这里的 GPT 带有知识库。在这个测试场景中,知识库已经录入了全部博客文章。

3. 接入微信

3.1 安装 Docker

请前往 https://docs.docker.com/engine/install/ ,参考官方文档安装 Docker

3.2 参数说明

  • OPEN_AI_API_KEY

类似 lg36YKM8YENbGMGhzWde1mjItkRZ0Z,用来调用 GPT 服务的 Token

  • OPEN_AI_API_BASE

类似 https://api.chenshaowen.com/v1/wx,用来调用 GPT 服务的 URL

  • SINGLE_CHAT_PREFIX

类似 [“bot”, “@bot”] 的格式,仅当 bot@bot 开头的消息才会被处理。当为 [""] 时,所有消息都会被处理

  • SINGLE_CHAT_REPLY_PREFIX

类似 “[bot]” 的格式,每次 GPT 生成的回复消息,都会在前面加上这个前缀

  • GROUP_CHAT_PREFIX

类似 [“bot”, “@bot”] 的格式,仅当 bot@bot 开头的消息才会被处理

  • GROUP_NAME_WHITE_LIST

类似 [“相亲相爱一家人”] 的格式,仅当群名称在白名单中时,才会被处理。当为 [“ALL_GROUP”] 时,所有群都会被处理

3.3 配置参数 env.txt

  • 本地新建一个文件 env.txt
1
touch env.txt

也可以人工创建一个 env.txt 的文本文件即可。

  • 将下面的内容复制到 env.txt 文件中
1
2
3
4
5
6
7
8
OPEN_AI_API_KEY=替换成提供的 OPEN_AI_API_KEY 值
OPEN_AI_API_BASE=替换成提供的 OPEN_AI_API_BASE 地址

SINGLE_CHAT_PREFIX=[""]
SINGLE_CHAT_REPLY_PREFIX=""

GROUP_CHAT_PREFIX=[""]
GROUP_NAME_WHITE_LIST=["ALL_GROUP"]

3.4 启动服务

1
docker run --env-file env.txt hubimage/chatgpt-on-wechat

很快会输出这样一段信息

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
https://api.pwmqr.com/qrcode/create/?url=https://login.weixin.qq.com/l/wZKFuKlDiA==
https://my.tv.sohu.com/user/a/wvideo/getQRCode.do?text=https://login.weixin.qq.com/l/wZKFuKlDiA==
https://api.qrserver.com/v1/create-qr-code/?size=400×400&data=https://login.weixin.qq.com/l/wZKFuKlDiA==
https://api.isoyu.com/qr/?m=1&e=L&p=20&url=https://login.weixin.qq.com/l/wZKFuKlDiA==
█▀▀▀▀▀▀▀█▀▀▀█▀█▀██▀████▀▀▀▀▀▀▀█
█ █▀▀▀█ █▀ ▀  ▀ █ ▀█▀ █ █▀▀▀█ █
█ █   █ ██ ▀▄▄▀  █▄▀█▄█ █   █ █
█ ▀▀▀▀▀ █ █ ▄ █ █ ▄ █▀█ ▀▀▀▀▀ █
█▀█▀███▀▀█ ▀█ ██▀▄██▄ ██▀██▀█▀█
█▀▀▀██▄▀ █▄▄█▄ ▀  █▀ ▀█▄▄▀▀▀▄ █
█▀▀▄ ▄█▀  ▀█ ▀▀▄  █▄▄ ▀ ▀▄▄██▀█
█▀ ▄▄█▀▀█▀  ▀▄▀▀▀▄▄█ ▄█▄▄███▄ █
█▄ ▄▀▀█▀██▄ ▀ █ ▄▀█▄█▀█  ████▀█
█▀▀███▀▀██ ██▀ ▄▀  █  ▄ ▄█▀▄▄ █
█▀▀ ▀ █▀█▄█ ▀▀█ ▄██ █▀    ▀█▀██
█▀▀▀▀▀▀▀█ █▄▀▀ ▄▀▄▄█▄ █▀█ ▄▄█ █
█ █▀▀▀█ ██▀▄ █▀  ▄█▄  ▀▀▀ ▀█▀▄█
█ █   █ █▀▀█▀ ▀▀ ▄ █ █ ██ ▄▄▀ █
█ ▀▀▀▀▀ █▀  ██▀ ▄ █▀█ ▄▀██ ██▀█
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀

使用微信扫描二维码,GPT 服务就接入到微信了,此时 PC 端的微信会被强制下线。

3.5 测试

在这个测试场景中,微信会自动响应全部消息。


微信公众号
作者
微信公众号