公众号接入openai GPT自动回复

创建OpenAI的API KEY

首先登录openai,然后访问platform.openai.com/account/api... 创建一个API KEY

这样,我们就可以通过官方提供的python openai库,来进行模型的调用了,在这里,官方也给出了示例代码

我使用的是GPT3.0模型(text-davinci-003)

微信公众号接入

进入公众号的管理后台,选项路径为 设置与开发->基本配置

注意,在初次配置时,会让你填入服务器地址,令牌,以及可以自动生成消息加密密钥

服务器地址就填写 http://ip:8888 (ip填自己服务器的ip)

令牌按照要求随意填写一下,后面微信与服务器交互的时候需要用到

填写完毕后,注意:先不要提交,因为在提交时,微信会进行通信验证,所以这个时候要先启动后端服务

登录你的服务器,并执行

bash 复制代码
git clone https://github.com/SSRemex/wechat_gpt_server.git

然后进入wechat_gpt_server目录,先编辑config.py

将openai的key 以及刚刚你填写的令牌(Token)填入

随后退出

先安装一下依赖

bash 复制代码
# 安装依赖
pip3 install -r requirements.txt
# 后台执行
nohup python3 run.py &

默认是8888端口,与刚刚微信配置填写的端口一致(这里我使用的是Flask框架)

使用nohup是为了让服务可以在后台运行。

启动后,回到微信页面,进行提交,此时会提交成功,这个时候就可以在自己的公众号上开始对话了。

注意,因为有时候模型生成的过慢,超时5秒后,微信会进行重新请求,超过三次后,就判定为服务端故障,所以尽量config.py中MAX_TOKEN设置的小一些,这样生成快,不容易超时。

使用英文的时候,速度会更快。

记录

  1. 微信与服务端的通信都是通过XML数据来进行交互的
  2. 每次通信前,微信都会进行一次验证,验证方法在微信的开发者文档中提到过
  3. python中有一个wechatpy的库,集成了微信开发者所有的功能,这里我没有使用,因为实现的功能比较简单,所以我就自己简单写了通信验证代码和XML处理的代码,感兴趣可以看看《微信官方文档》
相关推荐
Victor3562 小时前
Redis(43)Redis哨兵(Sentinel)是什么?
后端
Victor3563 小时前
Redis(42)Redis集群如何处理键的迁移?
后端
程序员爱钓鱼5 小时前
Go语言实战案例- Redis实现简单排行榜
后端·google·go
angushine5 小时前
Spring Boot 工程启动时自动执行任务方法
java·spring boot·后端
野犬寒鸦7 小时前
力扣hot100:缺失的第一个正数(哈希思想)(41)
java·数据结构·后端·算法·leetcode·哈希算法
重生成为编程大王8 小时前
Java中使用JSONUtil处理JSON数据:从前端到后端的完美转换
java·后端·json
天若有情6738 小时前
《JAVA EE企业级应用开发》第一课笔记
java·笔记·后端·java-ee·javaee
技术小泽10 小时前
Redis-底层数据结构篇
数据结构·数据库·redis·后端·性能优化
lypzcgf10 小时前
Coze源码分析-工作空间-资源查询-后端源码
人工智能·后端·系统架构·开源·go