众所周知,openai の API ウェブサイトは既に汚染されており、中国本土のユーザーはアクセスできません。直接 ChatGPT を使用することはできませんが、openai が提供する API キーを使用してローカルデプロイメントを行うことができます。ただし、API ウェブサイトがブロックされたため、ローカルデプロイメントも魔法が必要です。実際、Cloudflare Workers を使用して openai の API ブロックを解消し、魔法なしで ChatGPT の楽しみを存分に味わうことができます。
準備作業#
- 自分のドメイン(Workers もブロックされているため)
 - 自分のドメインを Cloudflare に移管する
 
ドメインを Cloudflare に移管する#
Cloudflare のホームページにログインし、サイトの追加を見つけて自分のドメインを入力し、指示に従って進めれば、通常 1 時間以内に解析が完了します。ここでは簡単なので、私はワーカーのデプロイメントに重点を置いて説明します。
ワーカーのデプロイメントを開始する#
コンソールのホームページに戻り、サイドバーのワーカーを見つけて、右上にある「サービスの作成」をクリックします。
そして、このサービスに名前を付けて、単に「サービスの作成」をクリックします。
作成が完了すると、自動的にこのサービスに戻ります。右上の「クイックエディット」をクリックします。
次に、以下のコードを左側のエディタのコードに置き換えます。
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 に移管したドメインをバインドする必要があります。プロジェクトに戻り、「トリガー」を見つけます!
そして、ドメインをバインドします!
これで、このドメインを openai の API インターフェースドメインとして使用することができます!