对于有些地区,OpenAI 的 API 是无法直接访问的,如何解决呢?
处理方式
可以使用魔法,这种方式在自己的电脑上比较方便,但对于部署在线上的服务来说,就不太实用了。
还可以使用各种云平台上的云函数,运行云函数的节点选择 OpenAI 支持的地点,例如美国节点。
线上服务 --> 云函数地址 --> OpenAI
这种方式对于线上服务非常友好,在云函数中运行一段代理代码,线上服务代码中把 OpenAI API 的 proxy url 指向云函数的地址即可。
缺点就是需要付费,以腾讯云为例,云函数的基础费用大概一天是0.4元,如果调用量比较大,还有另外的调用费用。
有没有更省钱的方案呢?
解决方案
目前最佳方案是:
自己的域名 + Cloudflare
Cloudflare 是一个云服务提供平台,非常强大,而且我们用到的相关功能都是免费的。
Cloudflare 可以帮我们实现:
1)免费 DNS 解析
Cloudflare 的节点是 OpenAI 接受的。
2)免费部署运行代码
这就等于实现了云函数的功能
2)免费 https 认证
部署的代码可以指定域名,就有了对外可以访问的 URL,而且自动配置好了 https。
所有的费用只是买域名的钱。
操作步骤
1. 购买域名
哪里买都行,例如阿里云、腾讯云。
这个域名只是用来做代理,所有不用买好的域名,便宜即可。
2. 配置使用 Cloudflare 的 DNS 服务器
- Cloudflare 中的配置
打开 https://www.cloudflare.com/zh-cn/
注册登录。
然后添加站点。
填入购买的域名,然后点击“继续”。
选择免费的方式即可。
在主页中打开刚刚添加的站点
页面中提示了需要修改域名的名称服务器,一会儿在域名管理平台中修改时来这儿复制。
- 域名平台中的配置
各个域名平台中的配置方式都差不多,这里以阿里云的域名配置为例。
点击操作中的“管理”,进入域名管理页面。
修改DNS服务器,添加 Cloudflare 页面中指定的服务器。
然后回到 Cloudflare 的主页,等待刚添加的站点变为“有效”状态,大约需要十分钟左右。
3. 部署代码
站点变为有效之后,开始部署代码。
点击“Worker 和 Pages”,进入页面后,点击“创建应用程序”按钮。
点击“创建Worder”。
根据自己的喜好起一个名字,点击“部署”
然后编辑代码,删除现有代码,添加 OpenAI 转发的代码。
代码的地址:
https://gist.github.com/paicha/d26e48a0288df22c3fad12eb9547ef94
复制粘贴到 worker 代码,然后点击“保持并部署”。
回到 “Worker 和 Pages” 概述页面,点击刚创建的应用程序。
点击“触发器”标签,添加一个自定义域。
添加新买的域名,然后在前面添加二级域名,例如“proxy.xxx.com”
添加完成之后,会自动初始化证书,等待几分钟,证书变为“有效”状态之后,就大功告成了。
4. 测试
浏览器中访问刚刚添加的那个域名,例如“proxy.xxx.com”
显示这个信息即为成功,OpenAI 的 API 代理就配置完成了。
标签:#chatgpt #Cloudflare #OpenAI API 代理