gpt_academic icon indicating copy to clipboard operation
gpt_academic copied to clipboard

海外云服务器windows部署+公网访问解决方案

Open EmanuellaS826 opened this issue 2 years ago • 3 comments

事先声明:本人没有任何coding能力,也没有系统学习过相关知识(纯文科生小白),纯靠搜索引擎(笑

云服务器提供商:亚马逊AWS 地区:新加坡
新用户注册送12个月的Free Tier套餐,具体规格可以去看AWS官网,总之运行两三个小程序和搭建这个chatgpt academic没问题 !!顺带一提,新加坡适合南方朋友使用,东京适合北方朋友使用,最好是未来一段时间内GPT不会被封杀的地区,保证API和自己账户的安全和运行稳定

AWS账户创建、选择地区并启动实例、如何连接上实例,这些基础部分就略过了。

第一步:确定实例中一个没有占用的端口,并且在安全组开放。 例如,我这里想用的是50832;首先进入AWS控制台,点击实例,打开安全组,然后点击"编辑入站规则“,把50832端口(TCP协议,任何IPV4可访问)加进去,保存。(不知道跟HTTP有没有关系哈,我也顺手添加了HTTP的入站规则,都在图里)

2

第二步:在服务器上安装运行环境 这一步就不用多说了,windows server 2022自带edge,直接google搜python,下比较新的版本就行,和项目主页的要求一致(记得在安装的时候把ADD python to PATH和disable length limit都点上)

不知道有没有用的步骤:关闭防火墙 在服务器的windows界面打开系统设置,找到”更新和安全“ image

把里面几个都关了 image 安全性咱先不谈,先用上再说

第三步:安装本体 步骤和项目主页一致。但是不要改proxy(别开代理),因为服务器本身就在OpenAI可用的地区(新加坡/日本,或者别的地区都可以)。 安装好之后先按照主页的推荐,复制并粘贴config.py,出现一个副本,然后重命名一个 config_private.py 在原目录 image

第四步:修改配置文件 右键config_private.py,点Edit with IDLE,进入界面。API KEY就填好自己的 image

代理不用管了!

然后看到下面的端口,如前文所说,我想用的是50832端口,我这里就改成50832。改完之后保存退出。 image

接下来编辑main.py,和上面一样的方法。按照主页的描述,把最后一句话改成

demo.queue(concurrency_count=CONCURRENT_COUNT).launch(server_name="0.0.0.0", share=False, server_port=PORT, auth=AUTHENTICATION) # 取消share

然后保存退出

第五步:运行测试 上文没有提到装git,所以直接在根目录这里用powershell,输入 .\main.py,然后回车就行 image

image (上面的运行失败是因为多打了一个空格 呜呜)

出现这个就差不多了 image

接下来我们在浏览器中输入自己服务器的 公网IP:端口号 访问一下看看。例如 123.123.123:50832 image

这样就成功了

(2023/04/23更新) 目前使用上还有几个痛点: (部分解决)1.无法自动更新(如果要更新的话,需要搜索安装Git,然后在chatgpt academic的根目录空白处右键Git Bash Here, 输入git pull回车)
【2023-04-23:作者已加入自动更新功能,但如果出现config.py在更新后文件内有新增,则会出现不读取config_private.py而优先读取config.py的情况,导致无法正常使用】

(已解决)2. 目前我还不知道 有没有稳定的 账户密码 功能(指在访问该公网地址时必须先输入号密才能进入使用),防止公网地址泄密后被乱用,导致API花费超出预期以及访问量过载
【2023-04-23更新:亲测在新加坡服务器上直接在文件里的AUTH里设置号密,稳定好用】

(已解决)3. AWS本身的免费套餐的网络传输用量和速率有限制,如果建好之后给朋友和熟人用,不清楚是否会产生超出免费套餐外的额外费用。 【2023-04-23:经过几个熟人一段时间后轻/中度应用测试,目前余量甚多,能满足日常工作学习需求】

4.不谈阿里、腾讯、华为云提供的海外服务器,与地址在国内的服务器相比,海外服务器本身的注册门槛不算低,例如AWS的注册需要国外能用的银行卡(VISA/MASTER等,但国内办理的卡也能绑定,亲测中国银行办理的VISA储蓄卡可用)

5.似乎OpenAI的新用户注册不再提供免费的API额度?对于小白来说,如何搞定API的付款也是个难题。

使用上的优点: 1.足够稳定,服务器所在地区是OpenAI的可访问地区,API和账户被封号的概率直线下降。个人认为相较于在国内开代理—使用API这个方式来说要优秀且稳定得多。

2.成本相对低。身边人有国外能用的银行卡(我的是自己在中国银行办的VISA储蓄卡),买两美元放卡里(当验证用,一般不扣钱),然后拿去绑定AWS账户就行。账户可以用+86的国内手机号和QQ邮箱注册。

3.AWS注册不需要实名认证,对于不希望自己身份信息泄露的工作者来说很友好。

4.windows server的图形化界面相对小白来说很友好

5.AWS注册流程较为简单且引导清晰,熟悉流程后可重复新号白嫖免费套餐服务器,整个流程容易复现(相较于阿里云海外的注册+学生机申请),完全可以做到一年以上的长期使用(指到期了就换号白嫖新的服务器)

欢迎各位大佬来交流(比心

EmanuellaS826 avatar Apr 08 '23 08:04 EmanuellaS826

谢谢,加到wiki里面了

binary-husky avatar Apr 08 '23 14:04 binary-husky

谢谢,加到wiki里面了

大佬继续加油!

EmanuellaS826 avatar Apr 08 '23 14:04 EmanuellaS826

补充一下,我用的阿里云服务器,除了设置开放安全组之外,还需要进系统开一下是否开放了端口。 1、查看开放的端口 firewall-cmd --zone=public --list-ports 2、添加端口 firewall-cmd --zone=public --add-port=49091/tcp --permanent 3、重启防火墙firewall-cmd --reload

stevenlyf428 avatar Apr 12 '23 14:04 stevenlyf428