Cloudflare AI GatewayとOpenRouterを同じ候補として比べると、かえって判断を 誤りやすくなります。Cloudflare WorkerからGPT Image 2を呼び出す場合、選ぶべき なのは製品名ではなく、要件に合うリクエスト経路です。
OpenRouterはモデルを集約し、推論先をルーティングします。Cloudflare AI Gatewayは、OpenRouterを含むプロバイダーの前段に置ける制御レイヤーです。 さらにWorkerから、AI bindingとUnified Billingを使ってサードパーティーモデルを Cloudflare経由で呼ぶ方法もあります。これらは同じアプリケーション内で併用でき ますが、役割はそれぞれ異なります。
GPT Image 2では、この違いがエンドポイント、認証情報、請求先、リクエスト形式、 レスポンス、プライバシー、レート制限に影響します。リクエストが香港や シンガポールのcoloで処理されたという情報の読み方も変わります。
最初の基準には、公開ドキュメントが明確なOpenRouter Images APIへの直接呼び出しが 向いています。Cloudflare側のログやポリシー制御が必要ならAI Gatewayを検討でき ますが、Images APIの経路は先に実測してください。Cloudflare管理の認証情報と課金を 使う場合はAI bindingを選び、固定の送信元IPや国が明示的に必要な場合に限ってrelayを 追加します。
出発点は製品名ではなく、リクエスト経路です。
アプリケーション
-> Cloudflare Worker
-> OpenRouter Images API -> OpenAI
-> Cloudflare AI Gateway -> OpenRouter -> OpenAI
-> Cloudflare AI binding + AI Gateway -> OpenAI
-> 固定出口relay -> OpenRouterまたは別のプロバイダーこの4つは異なる問題を解決します。同じものとして扱うと、一見小さな接続先の 変更が画像ジョブの失敗につながります。
Cloudflare AI GatewayとOpenRouter:AI画像生成APIのどのレイヤーを選ぶか
WorkerからOpenRouterを直接呼び出す
OpenRouterのImages APIを使うなら、Workerからの直接呼び出しが最も単純で、公開 ドキュメントも確認しやすい経路です。WorkerがOpenRouterのトークンでリクエストを 送り、OpenRouterが利用可能な上流プロバイダーへルーティングします。今回確認した GPT Image 2のエンドポイントには、OpenAIだけが掲載されています。
この経路では、API仕様、利用記録、プロバイダールーティング、クレジット残高を OpenRouterが管理します。CloudflareはWorkerを実行しますが、推論課金の中継役では ありません。
複数モデルを試したいチームや、将来モデルを切り替える可能性があるチームには、 この直接経路が分かりやすい基準になります。障害時に調べる追加レイヤーも少なくて 済みます。
OpenRouterの前にAI Gatewayを置く
CloudflareはAI GatewayのURLを使ったOpenRouterアダプターを案内しています。 リクエストにはOpenRouterトークンが残り、モデルのルーティングと推論課金も OpenRouterが担当します。AI GatewayはCloudflare側のログ、分析、レート制御、 キャッシュなどを加えます。
画像生成では、ドキュメントの範囲をそのまま受け取らないことが重要です。現在の
Cloudflare OpenRouter連携ドキュメント
はchat/completionsのみを例示し、OpenRouter専用の/api/v1/imagesは示して
いません。同じページ内のchatパス例にも揺れがあります。したがって、Images APIが
そのまま転送できるとは、ドキュメントだけでは言えません。
Cloudflare側の制御を加える設計としては有力ですが、本番トラフィックを流す前に、 実際の認証情報と本番に近い入力で画像エンドポイントをテストしてください。必要な API契約を壊すなら、オブザーバビリティーの追加にはなりません。
Cloudflare AI bindingとUnified Billing
この経路はOpenRouterを通りません。WorkerはCloudflareのサードパーティーモデルIDを
env.AI.run()に渡します。
openai/gpt-image-2Cloudflareのカタログでは、このモデルは明確に Third-party と表示されています。
@cf/...のネイティブWorkers AIモデルではありません。そのため、ネイティブモデル
向けのNeuron無料枠や料金表をGPT Image 2の見積もりに使うことはできません。
サードパーティーモデルのbinding呼び出しにはAI Gatewayが必要です。Cloudflareが
プロバイダー認証情報を管理し、Unified Billingのクレジットから差し引くことが
できます。現在のbindingドキュメントでは、default aliasに保存したBYOKキーが
優先されます。他のaliasはbinding経路では使われず、Unified Billingに戻ります。
別のaliasを選ぶにはprovider-native endpointとcf-aig-byok-aliasが必要です。
Cloudflareの請求、管理された認証情報、Gatewayの制御をまとめたい場合に向きます。 ただし、これはbase URLの差し替えではなく、API契約の移行です。
固定出口のrelayを追加する
固定出口relayは、安定した公開ネットワーク位置を持つ小さなバックエンドです。 Workerがrelayを呼び、relayがOpenRouterなどのプロバイダーを呼び出します。送信元IPや 国の許可リストなど、Edgeランタイムだけでは保証できない要件がある場合に使います。
relayはOpenAIの推論場所を決めません。外向きリクエストを送るネットワーク位置を 管理しやすくするだけです。その代わり、容量、秘密情報、タイムアウト、キュー、監視、 パッチ、リージョン障害対応を含む別サービスを運用する必要があります。
つまりrelayは特定のネットワーク要件に対する道具であり、AIアーキテクチャの標準 部品ではありません。
| リクエスト経路 | 変わるもの | 課金と認証情報 | 向いている用途 | 保証しないもの |
|---|---|---|---|---|
| Worker -> OpenRouter | OpenRouterのモデルとImages API | OpenRouterトークンとクレジット | 直接のモデル利用とルーティング | 固定出口や推論地域 |
| Worker -> AI Gateway -> OpenRouter | OpenRouter前段のCloudflare制御層 | OpenRouterトークンとクレジット | ログとポリシーの集中管理 | 未テストのImages API互換性 |
| Worker -> AI binding -> サードパーティーモデル | Cloudflare bindingと課金経路 | Unified Billingまたは有効なdefault BYOK | 管理された認証情報 | ネイティブWorkers AI料金や同一API |
| Worker -> relay -> プロバイダー | 自前のネットワークホップ | プロバイダー認証情報とrelay費用 | 安定した送信元IPや地域 | プロバイダー内部の推論地域 |
GPT Image 2でAPI契約の違いを確認する
CloudflareとOpenRouterは現在どちらもopenai/gpt-image-2を使いますが、同じ
モデルIDでもAPIが同一とは限りません。移行前に、実際のエンドポイントメタデータと
パラメーターを確認してください。
OpenRouterの公開メタデータでは、最大16枚の入力参照、品質設定、複数のアスペクト比、
nの1〜10、出力圧縮、ストリーミングが示されています。Images APIはbase64画像と
利用量を返します。仕様は変わり得るため、本番前に最新のendpoint recordを読み直す
べきです。
Cloudflareのスキーマはpromptと最大16枚のbase64画像を受け取り、品質、サイズ、背景、
出力形式を指定できます。記載されたレスポンスは画像URIであり、ネイティブWorkers
AIの一部サンプルにあるバイナリReadableStreamではありません。
アプリケーション側では、プロバイダーのレスポンスを共通の内部形式に正規化します。
type GeneratedImage = {
bytes?: Uint8Array;
sourceUrl?: string;
mediaType: string;
providerRequestId?: string;
costUsd?: number;
};参照画像のエンコード、ストリーミング、複数出力、透明背景、利用量、エラー形式は 別々にテストしてください。透明背景についてはCloudflareの製品ページとraw schema が食い違っています。公式の整理または統合テストで確認できるまで、非対応として 扱うのが安全です。
OpenRouterの料金とCloudflare Unified Billing:手数料だけでは判断できない
公開されている GPT Image 2 endpoint record では、入力画像トークンが100万あたり8ドル、入力テキストトークンが100万あたり 5ドル、出力画像トークンが100万あたり30ドルです。OpenRouterはプロバイダーの 推論価格を上乗せしないと説明しています。Stripeでのクレジット購入は5.5%で最低 0.80ドル、暗号通貨では5%です。
Cloudflareもプロバイダー価格を上乗せしないと説明しています。Unified Billingの クレジット購入には5%が加わります。ただし、CloudflareのGPT Image 2ページは正確な モデル価格を認証済みダッシュボードに案内しており、公開された1枚あたりの価格を 推測することはできません。
トークン単価を固定の1枚価格に変換することもできません。参照画像、サイズ、品質、 出力によって使用量が変わるためです。同じ代表的なジョブ群で、成功した画像の平均 コストを測り、失敗とリトライは別に集計してください。
Cloudflare管理の認証情報を使うUnified Billingには、gatewayごとに60秒あたり 200リクエストという制限もあります。BYOKはこの特定の管理認証情報制限の対象外です。 これはレート制限であり、並列数や完了時間の保証ではありません。
AI Gatewayのプライバシー:ZDRはログを自動停止しない
「Zero Data Retention」は、複数の経路すべてを一度に覆うスイッチではありません。
Cloudflareは、Cloudflare管理の認証情報を使う対象Unified Billingトラフィックについて
GPT Image 2をZDR対応として扱います。ただし、これはAI Gatewayのログとは独立です。
Gatewayログはデフォルトで有効で、リクエストとレスポンスのpayloadを含む可能性が
あります。cf-aig-collect-log: falseでログエントリー全体を止め、
cf-aig-collect-log-payload: falseでメタデータを残したままraw payloadだけを除外できます。
OpenRouterは、時刻、モデル、トークン数などの基本メタデータを記録しますが、promptと completionはデフォルトでは保存しないと説明しています。保存は明示的なオプトインです。 ただし、リクエストは選択した上流プロバイダーに届くため、上流の保持・学習ポリシーも 判断材料になります。
2026年8月25日時点のOpenRouterプロバイダーポリシーでは、OpenAIはtraining: falseですが、
prompt retentionの記録は残っています。公開が後日になる場合は、このポリシーを
再取得してください。
商品画像のpromptには未公開の商品情報が、参照画像にはブランド素材が含まれることが あります。経路上のデータ処理者を洗い出し、不要ならGatewayのraw payloadログを止め、 採用したプロバイダーポリシーを記録してください。ZDRを有効にしてもGatewayログは 自動では消えません。
Workerが香港にいることは、香港で推論することを意味しない
CloudflareのEdgeルーティングでリクエストが香港のcoloに入ることはあります。それは Workerの入口を示すだけで、プロバイダー接続の送信元やOpenAIの推論場所は示しません。
確認したGPT Image 2の2つの契約には、推論地域を固定するパラメーターがありません。 OpenRouterのGPT Image 2は現在OpenAIの1つのendpointだけを示しているため、一般的な Provider Routingでシンガポールの別エンドポイントが生まれるわけでもありません。 AI Gatewayにも、OpenRouter宛ての通信をシンガポールから出す保証はありません。
地域を診断するなら、Worker colo、正確な経路、ヘッダーまたは最初のイベントまでの時間、 完了時間、プロバイダーrequest ID、HTTPステータス、リトライ、参照数、品質、サイズ、 出力数を記録してください。実際のユーザー地域ごとに成功率とp50/p95を比較します。
プロバイダーが固定の国やIPを要求する場合、その国にrelayを置けばネットワーク要件は
満たせます。ただし内部の推論地域は変えられません。HKGというtraceだけを理由に
relayを導入するべきではありません。
Cloudflare AI GatewayとOpenRouterの選び方:避けたい障害から逆算する
OpenRouterで最も直接的に文書化されたGPT Image 2 APIを使うなら、WorkerからImages APIを直接呼ぶ方法を基準にしてください。
Cloudflare側の可観測性、ポリシー、コスト制御が目的なら、OpenRouterの前にAI Gatewayを 置く設計が合います。ただし画像では専用Images APIを実測し、chatの例だけで互換性を 判断してはいけません。
管理された認証情報とCloudflareの一括請求が目的なら、サードパーティー契約の
openai/gpt-image-2をAI bindingで使います。無料のネイティブWorkers AIではなく、
第三者モデルとして予算化してください。
固定の送信元国やIPが必須ならrelayを使い、本番バックエンドとして設計します。並列数、 キュー、冪等性、ヘルスチェック、リージョン障害時の計画が必要です。
画像ジョブを移行するとき、すべてを一度に変えない
まずプロバイダーの上に自分の境界を作ります。不変の入力を保存し、idempotency keyを 付け、すべてのレスポンスを内部形式に正規化してください。タイムアウト時のリトライが 二重の課金生成になるのを防げます。
次に、本番と同じprompt、参照画像、品質、出力数で小規模なcanaryを実行します。HTTP
200だけでなく画像データまたはURIを検証し、プロバイダーID、利用量、Gateway log ID、
全体時間、失敗分類を記録します。
検証後に段階的にトラフィックを移し、旧経路も一時的に残します。モデル、Gateway、 パーサー、リトライ、relayを同じリリースで同時に変えると、ログは増えても原因を切り分け にくくなります。
モデルの画像品質を比較したい場合は、GPT Image 2とGeminiの商品写真比較も参照してください。
FAQ:Cloudflare AI GatewayとOpenRouter
Cloudflare AI GatewayはOpenRouterの代わりになりますか?
単独ではなりません。OpenRouterはモデルへのアクセスとルーティングを提供し、AI GatewayはCloudflare側の制御レイヤーを追加します。組み合わせることはできますが、 同じ製品でも同じ課金経路でもありません。
AI GatewayはOpenRouterのImages APIを転送できますか?
現在のCloudflareガイドはchat completionsを示すだけで、専用の/api/v1/imagesは
文書化していません。認証済みの本番相当リクエストが成功するまで、画像転送は未確認
の機能として扱ってください。
OpenRouterとCloudflare Unified Billingはどちらが安いですか?
チャージ手数料だけでは判断できません。OpenRouterはGPT Image 2のtoken単価を公開し、 Cloudflareの正確なモデル価格はダッシュボードで確認します。参照画像、サイズ、リトライ、 ログ、relay運用も総費用を変えます。同じ代表ジョブで成功画像の平均コストを比較してください。
香港のWorkerなら、香港やシンガポールで推論されますか?
いいえ。coloはEdgeの入口であり、プロバイダー接続や推論地域を示しません。固定の送信元 国やIPが明示的に必要な場合だけrelayを使います。
最後に決めるのは、本番で通すリクエスト経路
Cloudflare AI GatewayとOpenRouterは、同じ役割を競う製品ではありません。OpenRouterは モデルへのアクセスとルーティング、AI GatewayはCloudflare側の制御、AI bindingは Cloudflare管理のサードパーティー経路を担当します。relayは固定出口という別の ネットワーク要件を満たすためのインフラです。
本番で使う経路をそのままテストしてください。図はendpoint互換性を証明せず、coloは 推論地域を特定せず、ZDRの表示も複数ホップのすべてのログを説明しません。
公式ソース
事実とAPIメタデータは 2026年8月25日 に確認しました。価格、制限、製品仕様、 プロバイダーポリシーは変更される可能性があります。


