写点什么

国内服务器终于支持 ChatGPT 接入到公众号了

作者:派大星
  • 2023-04-18
    辽宁
  • 本文字数:3181 字

    阅读完需:约 10 分钟

之前我已经传授给大家如何将 ChatGPT 集成到公众号上具体可参考文章:


手把手教你集成ChatGPT到公众号_ChatGPT_派大星_InfoQ写作社区


更多关于 ChatGPT 的文章可公众号搜索并关注【码上遇见你】查看历史教程

ChatGPT 配置

API Key

看过历史文章的应该清楚一点,那就是凡是你想接入 ChatGPT 的第一步就是需要一个 ChatGPT 账号并且生成API Key,这个 key 主要就是为了验证身份。API 的获取地址如下:


https://platform.openai.com/


登录之后点击右上角的头像,点击Manage Account->API Keys->Create New Secret Key, 然后复制下来保存备用。


准备运行环境的服务器

之前的历史文章仅支持国外的服务器或者 VPS,但是本次最新教程可支持国内的云服务器或 VPS。


  • 如果你想购买国外的服务器可通过以下链接购买,相比较便宜,并且稳定,地址如下:

  • https://billing.raksmart.com/whmcs/aff.php?aff=5737第一次访问可能会失败,请尝试多次刷新即可。

  • 如果你想购买国内的服务器,可自行 Google,百度即可。不再次做过多赘述。


服务器上如果有什么疑问,可直接联系 v(32479732)进行沟通。步入正题:直接开始教你如何在国内的服务器进行搭建 ChatGPT

必要的准备

首先本次的搭建主要是依赖 GitHub 上一位博主的源码,不是上次 Go 语言的版本。有兴趣的可自行查看源码,再次也感谢源码博主。🙏


开始安装依赖环境

克隆代码/安装 Python

我们使用云服务进行搭建,首先云服务器或者 VPS 需要安装Python环境。因为我刚刚也提到了源码博主是通过 Python 进行的开发,所以需要 Python。具体的版本建议 Python 版本在 3.7.1~3.10 之间。


python3 --version
复制代码


同时云服务是 Linux Ubuntu,登录到服务器/VPS 我们需要将代码进行克隆,冰进入到源码目录下,不做过多解释,直接执行命令:


# 克隆代码git clone https://github.com/techxiaofei/bot-on-anything
# 进入到项目目录cd bot-on-anything/
复制代码

安装依赖

升级 pip 包管理工具和 openai


pip3 install --upgrade pippip3 install --upgrade openai
复制代码

config 配置

代码中的核心文件就是config.jsonjson 文件,在项目目录下提供了 config.template.jsom 进行样例。可直接复制生成config.json


cp config-template.json config.json
复制代码


每一个模型和应用都有自己的配置块,最终组成完整的配置文件,配置主要由两部分组成:model 和 channel


{  "model": {    "type" : "chatgpt",             # 选用的算法模型    "openai": {      # openAI配置      "api_key": "YOUR API KEY",      "model": "gpt-3.5-turbo",             # 模型名称      "proxy": "http://127.0.0.1:7890",     # 国内云服务器需要代理      "character_desc": ""    }  },  "channel": {    "type": "wechat_mp",            # 需要接入的应用     "wechat": {        # 个人微信配置    },    "wechat_mp": {        # 公众号配置    }  }}
复制代码
解释说明

model 部分为模型配置,其中type指定选用哪个类型


  • chatgpt - 是 gpt3.5 模型,我们默认填这个就好

  • openai - 是 gpt3.0 模型


api_key 是官网生成的,上面有提到过,proxy 如果你是国外的 VPS 或者云服务器则不需要配置。如果你是国内的云服务器/VPS,则需要进行配置,也是本文的重点。接下来会进行展开说明:channel 部分包含了应用渠道的配置 type 字段指定了接入哪个应用:


  • wechat_mp 就是微信公众号。

  • wechat 就是微信。

国内云服务器配置代理

配置代理前需要有一个前提就是安装一个 Linux 代理客户端,本文主要以 Clash 为例。

下载安装 Clash

# 下载Clashwget https://github.com/Dreamacro/clash/releases/download/v1.13.0/clash-linux-amd64-v1.13.0.gz

# 解压gzip -d clash-linux-amd64-v1.13.0.gz
# 赋权chmod a+x clash-linux-amd64-v1.13.0
复制代码


解压 Clash 软件后需要配置config.yml放在~/.config/clash/config.yaml这个目录上。(如果你已经切换到 root 账户,这个目录就是root/.config/clash/)这个yaml你订阅的机场都会提供,比如我用的机场,我自己的账号登录进去之后就复制了我的yaml订阅配置,如果你是其他的机场,类似的方式找到你的 yaml 配置就可以了。下载


# 下载你的机场的yaml文件wget https://update.glados-config.com/clash/306473/41633c9/164000/xxx.yaml
# 复制到指定目录cp xxx.yaml ~/.config/clash/config.yaml
# 后台启动touch nohup.outnohup ./clash-linux-amd64-v1.13.0 & tail -f nohup.out
复制代码


启动成功应该像这样:


root@VM-8-10-ubuntu:/home/ubuntu# ./clash-linux-amd64-v1.13.0 INFO[0000] Start initial compatible provider Express    INFO[0000] Start initial compatible provider Auto       INFO[0000] Start initial compatible provider Video      INFO[0000] Start initial compatible provider NETFLIX    INFO[0000] Start initial compatible provider Proxy      INFO[0000] Start initial compatible provider Auto-Failover INFO[0000] Start initial compatible provider Auto-Fast  INFO[0000] Start initial compatible provider Auto-Edge  INFO[0000] RESTful API listening at: 127.0.0.1:9090     INFO[0000] HTTP proxy listening at: 127.0.0.1:7890      INFO[0000] SOCKS proxy listening at: 127.0.0.1:7891
复制代码


如果启动报错:WARN[0000] MMDB invalid, remove and download,执行以下命令下载新的Country.mmdb来修复:


wget https://cdn.jsdelivr.net/gh/alecthw/mmdb_china_ip_list@release/Country.mmdb
rm ~/.config/clash/Country.mmdbcp Country.mmdb ~/.config/clash/Country.mmdb
复制代码


将启动失败的进程杀掉重启


# 查到PIDps -ef | grep -v grep |  grep clash-linux-amd64-v1.13.0
# 通过上一条命令查到的PID杀掉进程kill -9 PID
复制代码



启动成功后再回到我们最初的那个config.json配置文件(也就是源代码),将这个代理地址填写上


"proxy": "http://127.0.0.1:7890",
复制代码


到这里,国内的服务器的代理就已经配置好了。

ChatGPT 接入公众号配置

配置

  • 安装 weboot 依赖


pip3 install weboot
复制代码


  • 修改配置


{  "model": {    "type" : "chatgpt",    "openai": {      "api_key": "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",      "model": "gpt-3.5-turbo",      "proxy": "http://127.0.0.1:7890",      "conversation_max_tokens": 1000,      "character_desc": "你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。"    }  },  "channel": {    "type": "wechat_mp",     "wechat_mp": {      "token": "abcdefghijklmnopqrstuvwxyz",      "port": "80"    }  }}
复制代码


配置文件主要分为两层

  1. model

  2. 该配置部分为模型配置,其中的type指定了选用哪个模型

  3. chatgpt - 是 gpt3.5 的模型,我们默认填写这个就好

  4. openai - 是 gpt3.0 模型

  5. api_key 是通过 openai 的官网获取的

  6. proxy:国内的服务器需要进行配置

  7. chanel

  8. 主要包含了应用渠道的配置,type字段指定了接入哪个应用;wechat_app就是微信公众号

  9. token 可以自定义,后续在公众号里填写同样的即可

  10. port 填写 80,因为微信公众号不支持端口自定义

执行程序

touch nohup.outnohup python3 app.py & tail -f nohup.out
复制代码


然后浏览器打开WeRoBot浏览器输入你的服务器的 IP 地址打开 WeRoBot 页面代表服务正常运行。注意: IP 地址是公网 IP,而不是内网 IP,别填错了这个 IP 地址的 http 链接后面需要填到公众号里面http://x.x.x.x/


配置微信公众号


  • URL:就是服务器的 IP 地址:http://x.x.x.x/

  • Token:就是服务器中 config.json 中自己定义的

  • 消息加密密钥随机生成即可,选择默认的明文模式,点击提交


最后在页面的右上方点击启用即可到此就大功告成了,公众号就已经接入了 ChatGPT 了。



如有问题,欢迎加微信交流:32479732,或关注微信公众号【码上遇见你】。


发布于: 2023-04-18阅读数: 16
用户头像

派大星

关注

微信搜索【码上遇见你】,获取更多精彩内容 2021-12-13 加入

微信搜索【码上遇见你】,获取更多精彩内容

评论

发布
暂无评论
国内服务器终于支持ChatGPT接入到公众号了_ChatGPT_派大星_InfoQ写作社区