当前ChatGPT是一个爆火的项目,近来浏览 Github 的时候,发现一个好玩的项目:微信接入ChatGPT,利用ChatGPT的对话能力,实现微信的自动聊天回复。
这个项目实现了许多有趣的功能,包括
- 通过 wechaty,将 ChatGPT 接入微信
- 创建 OpenAI 的账户池
- 支持通过代理登陆 OpenAI
- 加入了持续对话的功能(每一个微信用户都保持自己的对话上下文)
- 加入 Dockerfile
- 发布到 Docker.hub
- 通过 Railway 进行部署
- 实现 OpenAI 账户池的热加载
在这个github上有官方的教程,自己在电脑尝试了一遍,本文记录搭建使用的全过程及遇到的各种问题。
整体的安装流程是:
- OpenAI 账号信息获取
- 环境安装:npm、poetry安装
- docker安装、Windows的WSL安装
- 启动、使用
1、OpenAI账号信息获取
配置方法 A:使用账号密码
可以在配置文件中输入你的账号密码,格式如下
chatGPTAccountPool:
- email: <your email>
password: <your password>
# 如果你希望只有一些关键字可以在私人聊天中触发chatgpt,你可以这样设置:
chatPrivateTiggerKeyword: ""
⚠️ 触发关键字必须出现在接收到的消息的第一个位置⚠️
请确保您的终端网络可以登陆 OpenAI。如果登陆失败,请尝试使用代理或使用 SessionToken 方法配置
设置代理:
export http_proxy=<Your Proxy>
B: 使用 Session Token
如果您无法使用账号密码登陆您的 OpenAI 账户,或者您的终端网络不支持连接到 OpenAI,那么您可以尝试使用 Session Token,请根据如下指示获取:
- 前往 https://chat.openai.com/chat 并登陆。
- 按下 F12 打开开发者工具.
- 点击 Application 选项卡 > Cookies.
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fKweWFiY-1670799157360)(docs/images/session-token.png)] - 复制 __Secure-next-auth.session-token 的值,并且以如下方式配置到您的项目中:
chatGPTAccountPool:
- session_token: <your session_token>
2、环境安装
Windows环境安装npm和poetry,其中npm直接根据教程安装即可。poetry的安装遇到一些问题,教程对不上。
根据blog下载相应的文件,步骤如下:
离线安装poetry:
1、https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py
保存网页中的内容于【 get-poetry.py 】中,并存在文件夹【 \poetry 】中
2、https://github.com/python-poetry/poetry/releases
下载网站对应poetry版本,如我下载的是【 poetry-1.2.0.tar.gz 】
3、将下载的压缩包【 poetry-1.2.0.tar.gz 】存到文件夹【 \poetry 】中,不要解压
4、使用pycharm的Terminal执行如下命令
python get-poetry.py --file poetry-1.2.0.tar.gz
pip install poetry
5、在Windows下设置path环境变量
6、获取执行程序
git clone https://github.com/fuergaosi233/wechat-chatgpt.git
如果执行失败,直接下载zip文件也可以
7、cd 到上述项目根目录下,执行
npm install && poetry install
其实到这里,就可以直接运行了,在根目录执行上述install后,执行
npm run dev
即可完成项目的运行。希望尝试docker的运行方式,下面的步骤才是可选的,只想在终端中运行该项目,到此即可。
3、docker安装和WSL安装
在github项目首页给出了docker的运行方式,在windows上安装docker执行,需要首先安装docker桌面版,从官网直接下载即可。安装容易,但Windows的启动是容易失败,如果失败,可以尝试一下方法
1、 切换启动方式
docker的默认启动是linux内核,可以从设置上切换为windows内核
2、安装wsl
根据教程,在Windows上安装完成后,docker就可以正常启动
4、启动、应用
在Windows上通过Docker使用
# 在当前目录创建并修改config.yaml
cp config.yaml.example config.yaml
# 在WindowsPowerShell中运行如下命令
docker run -d --name wechat-chatgpt -v $(pwd)/config.yaml:/app/config.yaml holegots/wechat-chatgpt:latest
# 在Windows command line (cmd)中, 您需要像这样修改上述代码的挂载目录:
docker run -d --name wechat-chatgpt -v %cd%/config.yaml:/app/config.yaml holegots/wechat-chatgpt:latest
# 通过二维码登录
docker logs -f wechat-chatgpt
更新Docker镜像版本
docker pull holegots/wechat-chatgpt:latest
docker stop wechat-chatgpt
docker rm wechat-chatgpt
# 在Linux或WindowsPowerShell上运行如下命令
docker run -d --name wechat-chatgpt -v $(pwd)/config.yaml:/app/config.yaml holegots/wechat-chatgpt:latest
# 在Windows command line (cmd)中, 您需要像这样修改上述代码的挂载目录:
docker run -d --name wechat-chatgpt -v %cd%/config.yaml:/app/config.yaml holegots/wechat-chatgpt:latest
# 通过二维码登录
docker logs -f wechat-chatgpt
以上就可以正常在微信正常使用了