ChatGPT接入微信充当机器人

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第5天,点击查看活动详情

1、前言

最近ChatGPT挺火的,不了解的同学可能会有个疑问,ChatGPT是什么呢? 用官方的话来说,它是一个优化对话的语言模型。它以对话方式进行交互。对话格式使 ChatGPT 可以回答后续问题、承认错误、挑战不正确的前提并拒绝不适当的请求。ChatGPT 是InstructGPT的兄弟模型,它经过训练可以按照提示中的说明进行操作并提供详细的响应。官方地址

用百度百科上面的话来说,ChatGPT是人工智能研究实验室OpenAI新推出的一种人工智能技术驱动的自然语言处理工具,使用了Transformer神经网络架构,也是GPT-3.5架构,这是一种用于处理序列数据的模型,拥有语言理解和文本生成能力,尤其是它会通过连接大量的语料库来训练模型,这些语料库包含了真实世界中的对话,使得ChatGPT具备上知天文下知地理,还能根据聊天的上下文进行互动的能力,做到与真正人类几乎无异的聊天场景进行交流。ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

2、引入ChatGPT

俗话说,工欲善其事必先利其器,想要引入ChatGPT这里需要首先申请一个ChatGPT账号,注册地址 由于这个是国外友人搞出来的项目,对国内的同学来说使用起来不太友好,有条件的可以准备好科学上网的工具,以及一个可以接收国外验证码的手机号(如果没有手机号,这个 sms-activate网站可以帮助到你 )。

2.1 申请 ChatGPT 账号

点击上面的注册地址,选择 signup ,注册完成之后会提示验证手机号,(如果申请过程中遇到提示 OpenAI 的服务在您所在的国家/地区不可用的话请切换科学上网代理的地区) image.png

2.2 申请在线接收验证码

打开上面网址注册登录之后可以看到下面的界面,搜索栏 输入 OpenAI 下面会出现好多国家的,这里推荐 印度 ,别问为什么 ,问就是它比较便宜,购买之前需要在账户里面充值一定的金额,这个网站比较人性化的一点是可以支持支付宝付款。根据上面的提示 充值对应的人民币金额就行了,不清楚汇率的可以直接搜索对应金额 百度一下就可以看到对应的人民币是多少了。购买之后会出现一个虚拟的手机号,在ChatGPT上面填写对应地区的手机,然后在 sms-activate 等待接收验证码就可以了。 image.png

2.3 测试ChatGPT

当前窗口只能在线使用

image.png

2.4 申请 API keys

申请地址:beta.openai.com/account/api… 点击 Create new secret key 创建就可以了,生成之后注意保存,如果忘记了重新生成一个就可以了

image.png

3、开始部署

Github上面已经有好多微信引入ChatGPT的开源项目,比如:

image.png 不过上面好多都是通过 token 来验证的,这里想要通过 Api Keys 来实现,于是在 dockerhub上面找到了个使用 Api Keys 的镜像,镜像地址 ,这个只需要配置下Api key 就可以了

3.1 拉取镜像

docker pull cynen/wechat:latest

[root@centos /]# docker pull cynen/wechat:latest
​
[root@centos wechat]# docker images
REPOSITORY     TAG       IMAGE ID       CREATED        SIZE
cynen/wechat   latest    758738a0d88f   10 days ago    13.8MB
复制代码

3.2 config.json 配置

config.json 文件 放在 /home/wechat 下

[root@centos wechat]# ls
config.json
复制代码
{
  "api_key": "sk-****",
  "auto_pass": false, 
  "model": "text-davinci-003",
  "session_timeout": 60
}
复制代码

api_key:你上面申请的 Api keys

auto_pass: 是否自动通过好友验证,此处设为false

model:模型 【可参考官方文档 选择合适的模型 ,地址在底部】

session_timeout:session保存时间 秒 其实就是上下文保留时间,超过这个时间,就会自动清空上下文

3.3 启动容器

[root@centos wechat]# docker run -dti --name wechat -v /home/wechat:/app/ cynen/wechat
ca4b9e9c3cab2a196e2a50d0ac90c34183265f69f8b8f56b5513755ef5d8480f
[root@centos wechat]# docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                                                                      NAMES
ca4b9e9c3cab   cynen/wechat   "wechatbot-amd64-lin…"   5 seconds ago   Up 4 seconds 
复制代码

3.4 登录

使用 docker logs -f wechat 命令查看日志

image.png 扫描登录之后,会有以下日志输出 image.png

3.5 测试使用

image.png

4、参考

官方开发文档:beta.openai.com/docs/introd…

检索模型地址:beta.openai.com/docs/api-re…

猜你喜欢

转载自juejin.im/post/7181392275925106745