前言
3月份做的搭建,目前稳定运行近一年了,方法亲测稳定可靠~
为啥要自己接入?
- 国内无法直接访问openAi接口;
- 使用其他人的工具服务,可能泄漏隐私和你的apikey,另外有被封号的风险;
- 个人定制开发,主动权在自己手上玩一玩都很香,例如,可以标准化常用的promto做个个人助手;
- 本文简单讲一下流程,以大神们提供的教程为主,如果有需要可以把细节补充完整~
准备工作
- 解决国内无法访问chatgpt的问题,参考文档:使用 Cloudflare Workers 解决 OpenAI 和 ChatGPT 的 API 无法访问的问题
主要思路是使用 Cloudflare 的 Workers (serverless服务)来转发 OpenAI 的 API 的地址,Cloudflare提供了每天10w次的免费调用量,一般使用完全足够了;
const TELEGRAPH_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 = TELEGRAPH_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, response);
// 添加允许跨域访问的响应头
modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');
return modifiedResponse;
}
-
有自己的域名可跳过这一步,由于没可用域名绑定cloudflare的workers,我在namesoli上购买了一个(域名理论上可以通过freenom免费申请),1美金/年,参考:5分钟了解NameSilo域名教程
-
可以使用推荐码优惠1美金左右;
-
要先注册完成邮箱验证,否则可能出现付了钱域名没到账的bug还需要走客服解决;
-
有域名之后,只要在Cloudflare上绑定一下,并且设置workers的自定义域名就完工了
-
后面就可以把接口中间的部分换成你的个人域名了https://${customer}/v1/chat/completions
-
申请chatgpt的apikey,这一步互联网上攻略比较多
-
先行注册 sms-activate.org
-
注册好之后进行对应的充值(目前最低2美金)
-
搜索openai服务购买即可 -

-
打开openAi官网注册账号(这步要magic),邮箱注册自己搞定,短信验证码就使用上面的sms平台接收短信;
-
以上完工后,就可以使用自己的域名访问到openai的接口了~
