基于 ChatGPT 搭建了一个微信机器人

相信大家最近被 ChatGPT 刷屏了,其实在差不多一个月前就火过一次,不会那会好像只在程序员的圈子里面火起来了,并没有被大众认知到,不知道最近是因为什么又火起来了,而且这次搞的人尽皆知。

想着这么火的 AI​ 完全可以好好玩一玩呀,于是就尝试着将 ChatGPT​ 接入到了个人微信中,实现在微信中调戏 AI。

先看几个聊天截图

还可以拉入到一个群,进行群聊,可以看到 ChatGPT​ 的训练数据相当还是比较旧的,有些问题回答的还是历史的答案。不过从上面的 case 可以看到,目前的这个效果比以往要好很多的,最起码可以联系上下文了,不得不说,这绝对是一个里程碑。

流程

想要在微信中接入 ChatGPT 我们需要如下几个步骤

  1. 成功注册一个 OpenAi 的账号,获取的到一个 API key;
  2. 基于开源项目 wechatbot 运行一个微信机器人程序;
  3. 用微信扫码登录(建议用小号);

注册

OpenAi 由于某些原因,在国内是无法正常注册账号的,并且连网站都是无法正常访问的,详细的注册流程不在本文的讨论范围之内,感兴趣的可以在后台回复关键字【chatgpt】查看注册细节。

这里给大家演示一下注册成功后,如何获取一个 API key​,当我们注册成功并且登录以后,可以在链接 https://platform.openai.com/account/api-keys,在页面上点击 Create new Secret key​ 即可生成一个 API key​,复制 API key存放起来,后续备用。

运行机器人程序

对于技术出身的朋友,程序的运行有几种方式,可以基于源码来运行,也可以基于 docker​ 来运行,阿粉这边为了简单,就直接通过 docker​ 来运行,在服务上面安装好 docker 后,直接运行如下命令即可。

docker run -itd --name wechatbot --restart=always \
 -e APIKEY=刚刚生成的 API key \
 -e AUTO_PASS=false \
 -e SESSION_TIMEOUT=60s \
 -e MODEL=text-davinci-003 \
 -e MAX_TOKENS=512 \
 -e TEMPREATURE=0.9 \
 -e REPLY_PREFIX=ChatGPT: \
 -e SESSION_CLEAR_TOKEN=下一个问题 \
 docker.mirrors.sjtug.sjtu.edu.cn/qingshui869413421/wechatbot:latest

正常了说启动了过后,通过 docker ps​ 命令我们可以看到有相应的 docker 进程如下。

接下来我们进入的容器中,去查询二维码,并扫码登录,依次执行下面两行代码,不出意外的话,可以看到一个二维码出来,用微信扫码登录一下即可(建议用小号)。

docker exec -it wechatbot bash
tail -f -n 50 /app/run.log

扫码登录过后,我们就可以愉快的玩耍了,不过需要注意的是,API​ 的调用对于每个账户是有额度限制的,目前每个账户限制的是 18 美元,所以大家用来自己玩玩,调戏调戏 AI​ 就好,wechatbot 的项目地址在这里 https://github.com/qingconglaixueit/wechatbot ,感兴趣的也可以去研究研究。

思考

ChatGPT​ 的出现打破了以往的人工智障,虽然现在也还有很多不足的地方,相信在后面的迭代和升级中可以有更好的表现。同时 AI 目前已经越来越成熟,相信以后会有更多的工作岗位和技能将会被取代。

对于我们来说,唯一不变的就是变化,所以我们要做好接受新事物的准备,同时也做好应对未来的准备,尽量让自己变成不可替代的。

不会搭建的小伙伴可以根据下面的提示添加阿粉微信,阿粉会将搭建好的机器人拉进专门的读者群,可以体验一下,坑位有限先到先得。