Docker 搭建本地ChatGPT,后端优化,绕过 Cloudflare,速度喜人。
大佬项目地址:https://github.com/pengzhile/pandora
前言:
大佬项目中可以有多种搭建方式,在这里只介绍docker方式搭建,整理搭建过程及遇到的一些问题。
使用前提:有ChatGPT账号!
方式1:docker运行
①获取AccessToken(按照方法获取好的token保存下来)
- 使用
Access Token
方式登录,可以无代理直连。 - 这个服务 可以帮你安全有效拿到
Access Token
,无论是否第三方登录。 - 其中
accessToken
字段的那一长串内容即是Access Token
。 Access Token
可以复制保存,其有效期目前为1个月
。- 不要泄露你的
Access Token
,使用它可以操纵你的账号。
②复制命令执行
docker run -it \
--name=pandoraGPT \
-v 本地文件夹地址:/data #解释:将容器的内部地址映射到本地,方便管理。如果不想设置可以直接删除本行。运行的时候请删除#号及以后的解释
-e PANDORA_ACCESS_TOKEN=获取的accessToken \
-e PANDORA_SERVER=0.0.0.0:8008 \
-p 8008:8008 \
--restart unless-stopped \
pengzhile/pandora
③环境变量说明
PANDORA_ACCESS_TOKEN
指定Access Token
字符串。PANDORA_TOKENS_FILE
指定一个存放多个Access Token
的文件路径。(如果有多个ChatGpt账号需要配置,请添加次环境变量)PANDORA_PROXY
指定代理,格式:protocol://user:pass@ip:port
。(本人暂时还未配置,默认代理速度很给力)PANDORA_SERVER
以http
服务方式启动,格式:ip:port
。(如果要用本地局域网ip+端口号访问http服务,即在浏览器打开可视化页面,一定设置为0.0.0.0+想要设置的端口号)PANDORA_API
使用gpt-3.5-turbo
API请求,你可能需要向OpenAI
支付费用。(如果要用付费,添加次环境变量,值为true:-e PANDORA_API=true)PANDORA_SENTRY
启用sentry
框架来发送错误报告供作者查错,敏感信息不会被发送。PANDORA_VERBOSE
显示调试信息,且出错时打印异常堆栈信息,供查错使用。OPENAI_EMAIL
加上这个环境变量就不用抓了,直接登陆。OPENAI_PASSWORD
账号密码。
④打开浏览器地址栏输入设置的ip+端口号访问http服务
方式2:docker-compose运行
version: '3.3'
services:
pandora:
image: pengzhile/pandora
container_name: pandoraGPT
#这里host模式是为用本机设置的cf-warp代理
network_mode: host
volumes:
- 本地文件夹地址:/data
environment:
- PANDORA_SERVER=0.0.0.0:8008
- PANDORA_ACCESS_TOKEN=获取的accessToken
restart: unless-stopped
群晖docker运行
①拉去镜像
打开群晖docker–>注册表搜索:pengzhile/pandora–>双击拉去镜像
②创建容器
点击映像–>双击下载好的镜像
1.选择网络bridge
2.修改容器名称:pandoraGPT–>启用自动重新启动–>点击高级设置
3.环境变量配置,配置好后保存,下一步
a.新增环境变量PANDORA_ACCESS_TOKEN,值为刚才获取的AccessToken
b.新增环境变量PANDORA_SERVER,值为0.0.0.0:想要设置的端口号,如0.0.0.0:8008
c.新增环境变量OPENAI_EMAIL,值为ChatGpt邮箱账号(和AccessToken二选一或者都加上也不会报错)
d.新增环境变量OPENAI_PASSWORD,值为ChatGpt密码
4.新增端口设置
容器端口为8008,映射到本地端口8008(如果被占用换其他端口)
5.存储空间设置
a.打开群晖File Station在docker目录下创建pandoraGPT文件夹,在pandoraGPT文件夹下创建data文件夹
b.添加文件夹,选择刚才创建的文件夹,将容器的data目录映射到创建的文件夹中
6.打开日志可以看到容器运行正常
7.通过本地ip+端口号访问http服务
结束语
大佬的项目优化了后端,绕过官方限制(无需科学) 。
该项目还有一些高阶玩法,详细请看大佬的文档。
如果你拥有公网ip就可以通过反向代理的方式实现远程访问,意味着随时随地都无需科学就可以使用ChatGpt,无公网ip也可使用花生壳、cpolar等做内网穿透。
版权归原作者 无奈清风吹过 所有, 如有侵权,请联系我们删除。