使用 Cloudflare Workers,稳定代理 OpenAI API使用 Cloudflare Workers 代 - 掘金

同步来源:树洞剪藏 源站剪藏 ID:281 原文地址:https://juejin.cn/post/7247451971946299452?from=search-suggest
使用 Cloudflare Workers,稳定代理 OpenAI API使用 Cloudflare Workers 代 - 掘金
首页
BOT
沸点
课程
直播
活动 AI刷题 NEW 商城 APP 插件
创作者中心
会员
登录
注册
使用 Cloudflare Workers,稳定代理 OpenAI API
Hackerdom
2023-06-23
1,767
阅读4分钟
用魔法打败魔法,在国内可以稳定的访问 OpenAI API ,同时避免账号被封禁。在这里推荐一个几乎零成本的解决方案(当然你也可以付费提高并发和稳定性),现在仍然可以用来解决 OpenAI API 无法访问的问题。
主要思路是使用 Cloudflare 的 Workers 来代理 OpenAI 的 API 地址,配合自己的域名即可在国内实现访问。因为 Cloudflare Workers 有每天免费 10 万次的请求额度,也有可以免费注册的域名,所以几乎可以说是零成本。而且该方法理论上支持所有被认证的网站,而不只是 OpenAI。
提前准备内容
一个域名(建议直接 阿里云 或者 新网 买一个好了,很多域名一年只需要10块);
一个 Cloudflare 账号(具体注册细节就不多说了);
下面开始操作
新建一个 Cloudflare Worker
将 gist.github.com/noobnooc/d0… 里的代码粘贴到 Worker 中并部署
给 Worker 绑定一个刚才购买的域名(注意,域名不需要认证或者备案);
使用自己的域名代替 OpenAI 的 API 域名 api.openai.com
如果具体步骤有问题,可以参考下面的详细版教程。
将域名 NS 转到 Cloudflare
Cloudflare Workers 的域名绑定仅支持托管在 Cloudflare 上的域名,所以得先将域名的 NS 转到 Cloudflare(当然你也可以直接在Cloudflare中购买域名)。
如果域名已经托管在 Cloudflare 的忽略这一步即可。
登陆你的 Cloudflare 账号,注册或登录到 Cloudflare 的管理界面后,点击侧边栏的 “Websites” ,然后点击 “Add a Site” 按钮准备将域名转到 Cloudflare:
在 “Enter your site (example.com)” 处输入要转入的域名后,点击 “Add Site”:
根据 Cloudflare 的提示,在域名注册商处将 NS 修改到 Cloudflare 指定的地址,等待域名解析成功后,即可进行后续操作。
创建一个 Cloudflare Worker
登录到 Cloudflare 的管理界面后,点击侧边栏的 “Workers” 选项,然后点击 “Create application” 创建一个 Worker。
然后在创建界面中输入 “Service name” 后点击 “Create Worker” 按钮新建 Worker。
至此 Cloudflare 的 Worker 便创建好了,下面开始修改 Worker 的代码,使其能代理 OpenAI 的 API。
修改 Cloudflare Worker 的代码
在左侧的代码编辑器中,删除现有的所有代码,然后复制粘贴以下内容到代码编辑器:
js
代码解读 复制代码 const OPENAI_URL = 'https://api.openai.com' ;
addEventListener ( 'fetch' , event => { event. respondWith ( handleRequest (event. request )); });
async function handleRequest ( request ) { const url = new URL (request. url ); url. host = OPENAI_URL . replace ( /^https?:/// , '' );
const modifiedRequest = new Request (url. toString (), { headers : request. headers , method : request. method , body : request. body , redirect : 'follow' });
const response = await fetch (modifiedRequest); const modifiedResponse = new Response (response. body , { status : response. status , statusText : response. statusText , headers : response. headers });
modifiedResponse. headers . set ( 'Access-Control-Allow-Origin' , '*' );
return modifiedResponse; }
至此,便可以使用该 worker 的地址来代替 OpenAI 的 API 地址了。比如想要请求 ChatGPT 的 API 时,把官方文档中的 https://api.openai.com/v1/chat/completions 替换成 https://xxxx.workers.dev 即可(注意这个地址并不存在,是需要换成自己刚刚创建的 Worker 的地址)。
但是你可能会发现,这样做了依然还是没有解决问题,因为 Cloudflare Workers 的 workers.dev 域名也是被认证过的导致无法访问。但是好在只是认证了 workers.dev 域名,而 ip 还是幸存的状态,所以我们可以给 Worker 绑定一个自己的域名。
绑定域名
在 Cloudflare Workers 的管理界面中,点击 “Triggers” 选项卡,然后点击 “Custom Domians” 中的 “Add Custom Domain” 按钮以绑定域名。
至此便大功告成。等待片刻,应该就可以通过你自己的域名来代替 OpenAI 的 API 地址了,比如在本文的例子中,想要请求 ChatGPT 的 API ,即是把官方 API 地址 https://api.openai.com/v1/chat/completions 换为你自己的域名 https://xxxx.com/v1/chat/completions ,其他参数均参照官方示例即可。由于 Cloudflare 有每天免费 10 万次的请求额度,所以轻度使用基本是零成本的,当然如果公司使用为了增加并发请求,也可以为此付费。
有ChatGPT相关问题欢迎加微信群交流(6月30日前有效)如果微信失效,也可以私信我:
群里主要讨论如何更好的使用ChatGPT(账号注册交流、数据安全交流、如何使用ChatGPT构建基于知识库的问答系统等等)。
标签: 人工智能
话题: ChatGPT 插件玩法一览
评论 2
0 / 1000
标点符号、链接等不计算在有效字数内
Ctrl + Enter
发送
登录 / 注册 即可发布评论!
最热
最新
清风观的小道士
程序员
楼主,使用了这个代码以后,出现如下的报错:{ "error": { "message": "Invalid URL (GET /v1)", "type": "invalid_request_error", "param": null, "code": null } },请问下这个是怎么回事
展开
1年前
点赞
1
Hackerdom
作者 : 你怎么操作的? 搞定了吗
1年前
点赞
回复
Hackerdom
码农
4
文章
2.5k
阅读
1
粉丝
关注
已关注
私信
目录
收起
提前准备内容
下面开始操作
将域名 NS 转到 Cloudflare
创建一个 Cloudflare Worker
修改 Cloudflare Worker 的代码
绑定域名
搜索建议
不翻墙完美申请ChatGPT攻略:Azure OpenAI 使用指南!
我的chatgpt不需要翻墙也能访问
在 Cloudflare Workers 上运行 AI 模型:从零开始的指南
探索 Cloudflare Workers AI :在边缘运行机器学习模型
[解锁云端智能:使用 Cloudflare Workers AI 进行机器学习嵌入]
【云边缘智能:如何通过 Cloudflare Workers AI 实现机器学习模型】
[如何使用 Cloudflare Workers AI 进行机器学习模型嵌入]
探索 Cloudflare Workers AI :步步为营,轻松实现文字生成
探索 Cloudflare Workers AI :在边缘网络上运行机器学习模型
利用 Cloudflare Workers AI 实现高级机器学习嵌入:初学者指南
精选内容
m4 mac mini本地部署ComfyUI,测试Flux-dev-GGUF的workflow模型10步出图,测试AI绘图性能,基于MPS(fp16),优点是能
刘悦的技术博客
· 24阅读 · 1点赞 女朋友说我听不懂她的话,写个情感分析AI试试
石小石Orz
· 235阅读 · 4点赞 🌟【刷题赢矿石】黄金矿工上班计划来喽
MarsCode小助手
· 2.3k阅读 · 21点赞 智简模型,边缘智能:AI 轻量化与边缘计算的最佳实践
Swift社区
· 12阅读 · 0点赞 前端AI项目利器- RAG知识库助手(搜索推荐机制版)
新宿站
· 183阅读 · 8点赞
找对属于你的技术圈子 回复「进群」加入官方微信群
为你推荐
不翻墙完美申请ChatGPT攻略:Azure OpenAI 使用指南!
Loveaeen
1年前
17k
13
2
OpenAI
快速入门:使用Cloudflare Workers AI实现嵌入式模型
用户8718381347049
29天前
17
点赞
评论
前端
[如何使用Cloudflare Workers AI运行机器学习模型:全面指南]
用户8718381347049
21天前
5
点赞
评论
前端
[如何使用Cloudflare Workers AI增强你的应用性能]
用户331287887593
2月前
6
点赞
评论
前端
探索Cloudflare Workers AI:步步为营,轻松实现文字生成
用户026700199494
28天前
20
点赞
评论
前端
用Cloudflare Workers搭建OpenAI的API代理(适合个人使用)
天蓝色东
1年前
7.3k
16
3
OpenAI
探索Cloudflare Workers AI:在边缘运行机器学习模型
Hmily96
28天前
22
点赞
评论
前端
极速 ChatGPT API 的接入指南
sumaolin
1年前
2.7k
2
评论
前端
人工智能
探索Cloudflare Workers AI:使用LangChain进行生成式AI
用户331287887593
2月前
13
点赞
评论
前端
探索Cloudflare Workers AI:利用LangChain实现文本生成
用户57716616653
1月前
13
点赞
评论
前端
在Cloudflare Workers上运行AI模型:从零开始的指南
用户850429986511
1月前
26
点赞
评论
前端
探索Cloudflare Workers AI:生成文本模型的无限可能
用户026700199494
9天前
9
点赞
评论
前端
我的chatgpt不需要翻墙也能访问
metisAI小林
1年前
1.6k
点赞
评论
ChatGPT
深入了解Cloudflare Workers AI:在边缘运行机器学习模型
用户955766060958
2月前
7
点赞
评论
前端
探索Cloudflare Workers AI:在全球网络上运行机器学习模型
tangtang123
1月前
15
点赞
评论
前端
APP内打开
set 限制解除
沉浸阅读