# chatgpt 接入 微信公众号 **Repository Path**: null_028_1183/chatgpt-application ## Basic Information - **Project Name**: chatgpt 接入 微信公众号 - **Description**: chatgpt接入微信公众号,基于springboot 对于不同公众号权限有两种方案 1.个人微信公众号无主动推送功能权限,只有被动回复功能权限。由于微信限制接口5秒内返回,需要对chatgpt结果进行缓存,第二次客户发消息时通过发命令get获取之前回答(代码ChatService) 2.微信公众号有主动推送功能权限,异步客服接口推送。(代码ChatServiceBackUp) 方法二为正解。 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 2 - **Created**: 2023-03-26 - **Last Updated**: 2023-04-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # chatgpt接入微信公众号 #### 介绍 chatgpt接入微信公众号,基于springboot 对于不同公众号权限有两种方案 1.个人微信公众号无主动推送功能权限,只有被动回复功能权限。由于微信限制接口5秒内返回,chatgptapi耗时需要3-60秒,需要对chatgpt结果进行缓存,第二次客户发消息时通过发命令"p"获取之前回答(代码ChatService) 2.微信公众号有主动推送功能权限,异步客服接口推送。(代码ChatServiceBackUp) 方法二为正解。 #### 软件架构 客户发消息到微信公众号,微信服务器会把消息转到我们服务器的/wxChat接口。获取到消息后,调用chatgptApi获取回答,ConcurrentHashMap用于保存每个客户消息的上下文,保证消息连贯性,key为客户微信openId。由于是个人账户,做了严格的限流,同一时刻最多只能请求一次chatgptApi避免封号。 #### 安装教程 需要部署在美国的服务器 各服务私钥改成自己的,不需要数据库。 ![示例](8e89ea272ee04fcd9d0df5c8bcf8ac1.jpg)