通过Cloudflare Worker无阻访问OpenAI API

wangpcc Youngerer 2023-05-21 00:03 发表于四川

一、前言

由于国内无法直接访问openai,不方便学习,一般要么把服务部署在国外(多消耗资源);要么在国内服务器配置代理软件(不够稳定);其实还可以通过cloudflare代理oepnai的api地址,在国内国内服务器无阻接入openai!
首先你要有一个域名,其次这个域名要托管到cloudfare,所以:
      1. 直接在cloudfare购买域名,方便省事!
      2. 找其他免费域名,再托管到cloudfare,本着一分钱不花的目的,这里提供一个顶级免费公益域名申请教程:eu.org!
        • 优点:免费,稳定,历史悠久,几乎没什么限制,可以更改NS!
        • 缺点:申请等待时间较长,1-30天都可能,我的是11天收到!

二、申请eu.org域名

1.点击eu.org[1]注册你的账号,按照下图填写信息,然后点击create创建
图片
2.创建成功你的邮箱会收到一封验证邮件(请检查垃圾邮箱,并把该网站移出,方便后面及时收到审核通知),邮件内包含了你的登录名和验证链接,点击链接验证
图片
3.点击下图的Validate验证,然后登录即可!
图片
4.点击new domain,注册域名,按照下图填写信息:
图片

注意:

  • 域名要包括后缀eu.org

  • name servers处填入cloudfare的,也可以其他的,注册成功可以修改

    图片

    yichun.ns.cloudflare.com
    demi.ns.cloudflare.com
5.点击submit后,如果域名已经存在会提示你,修改后再次提交即可,如果成功会如下图所示down
图片
6.接下来,等待审核通过的邮件即可:
图片

二、设置cloudfare worker

这部分参考原教程[2]修改,感谢原作者提供clodflare worker创建教程!

1.托管域名到cloudfare

首先是把域名托管在cludfare上,进入cloufare[3]:,注册并点击website,
图片

图片

填入你申请的eu.org域名,如果前面步骤申请域名时候填写的name server是cloudfare的,就简单了!如果是用其他的dns,会提示你先修改ns,在eu.org那里找到你的域名,点击域名,然后点击nameservers,修改为cloudfare提示需要设置的namesever!
图片

2.新建一个Cloudflare Worker

登录到 Cloudflare 的管理界面后,点击侧边栏的 “Workers” 选项,然后点击 “Create a Service” 创建一个 Worker。
图片
image
然后在创建界面中输入 “Service name” 后点击 “Create Service” 按钮新建 Worker。“Select a starter” 项先不用管。
图片
image
至此 Cloudflare 的 Worker 便创建好了,下面开始修改 Worker 的代码,使其能代理 OpenAI 的 API。
在 Worker 的管理界面,点击右上角的 “Quick Edit” 按钮编辑代码 Worker 的代码。
图片
image
在左侧的代码编辑器中,删除现有的所有代码,然后复制粘贴以下内容到代码编辑器:
export default {
  async fetch(request) {
    const url = new URL(request.url);
    url.host = 'api.openai.com';
    return fetch(url, { headers: request.headers, method: request.method, body: request.body });
  },
};
最后点击编辑器右上角的 “Save and deploy” 按钮部署该代码,在弹出的对话框中继续选择 “Save and deploy” 确认部署。
图片

3.绑定域名

在 Cloudflare Workers 的管理界面中,点击 “Triggers” 选项卡,然后点击 “Custom Domians” 中的 “Add Custom Domain” 按钮以绑定域名。
图片

至此便完成了所有步骤。等待片刻,应该就可以通过你自己的域名来代替 OpenAI 的 API 地址了,即是把官方 API 地址 https://api.openai.com/v1/ 换为自己的域名 https://xxx.eu.org/v1/ ,其他参数均参照官方示例即可。

三、接入项目

对于现在的这个chatgpt-on-wechat项目,就是在config.json文件增加一行配置:
图片
image-20230520164903908
"open_ai_api_base""https://xxxx.eu.org/v1",

以上完成后,国内服务器也可以不用配置代理软件了!Cloudflare 有每天免费 10 万次的请求额度,轻度使用基本是满足需求了!

本人实测可以成功,看到这里,还不点个赞?教程已更新,点击阅读原文进入博客查看!

参考资料

[1]

eu.org: https://nic.eu.org/arf/en/contact/create/

[2]

原教程: https://github.com/noobnooc/noobnooc/discussions/9

[3]

cloufare: https://dash.cloudflare.com/


收录于合集 #AI
 23
上一篇GPT4不限制25次/3小时了?ChatGPT app for ios上线!下一篇群内已超过200人,无法通过自助扫码进群
阅读原文
文章已于2023-05-28修改

微信扫一扫
关注该公众号

x1
>
<
>>
<<
O
x1