需求:
大陆内地云服务器无须搭梯子,无须NGINX反向代理访问openAI。
背景:
平时工作环境是局域网,不方便分享给朋友用,即使不是局域网也不可能一直开着自己的电脑啦,于是想着给弄到云服务器上。
一般来说,
- 要么选国内的服务器,需要备案域名并且需要挂梯子连接openai的服务器。
- 要么就是买一个可以直接连接openai的服务器,比如海外VNS(好贵买不起),又比如香港服务器(也贵),在上面搭代理,而且,这种要求国内访问你买的服务器网络连接顺畅,所以一般要Nginx反向代理。
穷b且技术菜(字正腔圆,义正言辞),所以我用云函数。
云函数直指OpenAI
- 1 买云服务器
- 2 文件传输(FTP搭建)
- 3 腾讯云函数实现代理
- 4 应用
- 4.1 使用第三方web(不推荐,很危险,实在没办法时的选择)
- 4.2 搭chatgpt-web(不是搞开发的,我不擅长,不玩)
- 4.3 ==搭python项目==(学术优化chatgpt)
1 买云服务器
我买的腾讯云的轻量应用服务器,我新用户目前是一年112,华为和阿里的太贵啦,我阿里云1核4g服务器五年都得三千多,遭不住。
我大概是这样选的,反正就是opencloud centos 8.6
听说debian也不错,我没用过,但是centos真让我捉急,主要是以前用过windows想搞搞新的,但新手真的建议搞个带图形界面的,这玩意不带图形界面,pycharm都不能用,只能命令行硬敲。气.jpg
购买域名(买不买无所谓,我买了但是没搞成功,备案麻烦)
创建秘钥(其实也无所谓,反正我是免密登录)
登录实例,选择一键免密登录。
我是用腾讯自带的OrcaTerm登录的,原名是WebShell。需要开放22端口
我这个是自带放开的:
然后我给ftp开了21端口,因为我要用ftp传输数据:
2 文件传输(FTP搭建)
与项目无关,但是搞云服务器肯定要搞个文件传输吧,就给个参考。
参考这篇文章:
windows系统通过FTP上传文件到轻量应用服务器
我的是centos系统也就是linux,所以如图箭头所示,附录不用搞,验证了就行。
其中,ftpuser是指你自己要指定的用户名,别忘了改成你自己的。
这个与主机用户关联的,如果要用已有用户就不用useradd了,直接授权密码就行了。
如果要关闭vsftpd,这是vs的ftp服务,可以按照以下步骤操作:
- 打开终端,输入以下命令,停止vsftpd服务:
sudo systemctl stop vsftpd
- 输入以下命令来禁用vsftpd服务:
sudo systemctl disable vsftpd
- 输入以下命令来删除vsftpd.conf配置文件:
sudo rm /etc/vsftpd/vsftpd.conf
3 腾讯云函数实现代理
github项目地址:
https://github.com/Ice-Hazymoon/openai-scf-proxy
https://github.com/riba2534/openai-scf-goproxy
对于第二篇参考文章:可以读一读,但是我没按照这个来,我用香港的web函数是可以的
- 打开云函数控制台:腾讯云函数控制台
如果之前没使用腾讯云函数,会提示授权。那就“前往访问管理”去授权就好了。 - 返回函数服务之后选择新建云函数
- 选择“从头开始”
- 基础设置:
函数类型:“web函数”----》取名----》地址:“中国香港”—》Nodejs 16.18 - 函数代码:从github下载zip包上传
函数代码下载地址(github)
- 高级配置:
- 环境配置:
内存:64M
执行超时时间:900 秒
- 请求多并发:
启用
自定义静态
2 并发
5. 触发器配置:默认
- 点击完成,首次要API网关授权,同意授权就行了,然后新建,创建期间不要乱动,乱动就要重新搞(如果跳到不知道什么地方去了,就重新建立一遍函数就行)
- 然后函数管理,函数代码,往下拉,访问路径就是代理地址!(去掉"/release/"之后,这时前面的部分就完全相当于api.openai.com)
- 验证
4 应用
有了香港域名的代理地址,就可以直接对其进行访问(不止是你的云服务器,可以看到我这是在本地验证的),那么就可以开启你的学习之旅了。
4.1 使用第三方web(不推荐,很危险,实在没办法时的选择)
因为要输入apikey,会泄露,每个人都只有5美金额度,你放到别人地盘,那。。。。
4.2 搭chatgpt-web(不是搞开发的,我不擅长,不玩)
https://github.com/Chanzhaoyu/chatgpt-web
我没有这方面很丰富的经验,所以就没有玩
4.3 搭python项目(学术优化chatgpt)
项目地址:学术优化chatgpt(github)
这是我擅长用的,无非是搭个python的环境啦,篇幅受限,具体情况下一篇文章介绍啦:
云服务器搭建Python项目实现学术优化chatgpt