移行ガイドAzure OpenAIから
Azure OpenAIだけの構成から、Azureを複数のプロバイダーの1つにする構成へ
Azure OpenAIは、お客様のAzureサブスクリプション上で、エンタープライズ契約とAzureのコンテンツフィルターのもとでOpenAIのモデルを実行します。INFROはそれをすべてそのまま維持し、お客様のキーでお客様のリソースを呼び出します。変わるのは、アプリケーションがINFROを呼び出すようになることです。INFROはAzureからOpenAIや他のプロバイダーへのフェイルオーバー、呼び出し前の予算適用、リクエストごとの費用記録を行えます。
Microsoft Foundry ModelsのAzure OpenAI。2025年8月からapi-versionなしのv1 API
INFROのアカウントはセルフサービスで作成できます。 カタログ、ドキュメント、API仕様は公開済みで、ゲートウェイもデプロイ済みです。v1以降の機能には「今後提供」と表示しています。 プランとトライアル
現状
名前
Microsoftのドキュメントでは、現在Azure OpenAI in Microsoft Foundry Modelsと呼ばれています。以前のAzure AI FoundryというプラットフォームはMicrosoft Foundryになりました。
v1 API
2025年8月から、/openai/v1/パスではapi-versionが不要になり、通常のOpenAIクライアントで動作します。Azureが販売する他のFoundryモデルも、同じチャット補完の構文で提供されます。
INFROが呼び出すもの
リソースのapi-keyを使ったhttps://{resource}.openai.azure.com/openai/v1。送られるmodelは、接続のモデルマップにあるデプロイ名、なければモデル名です。Responsesのリクエストは書かれたとおりにAzureへ送られます。
Azureが唯一のプロバイダーで、統制がすでにAzureにあるなら、ゲートウェイを追加しても得るものは少ないかもしれません。次のいずれかに当てはまるなら、そのままにしてください。
- Entra IDのみを使い、リソースでキーが無効化されている。INFROのAzure接続はリソースのAPIキーを使います。
- すべてをAzureテナントまたはデータゾーンの内側にとどめる必要がある。INFROはアプリとAzureの間のCloudflareのネットワーク上で動きます。データの所在の指定はロードマップにあります。
- Azureの評価、保存された補完、バックグラウンドのResponses、またはAssistantsやRealtimeのAPIを使っている。INFROはこれらを提供しません。
- Azureが唯一のプロバイダーで、費用に関する疑問にはすでにAzure Monitorが答えている。
変更点を1行ずつ。ここにないものはそのままです。
| Azure OpenAI | INFRO | |
|---|---|---|
| ベースURL | https://{resource}.openai.azure.com/openai/v1/または/openai/deployments/{name}/...?api-version=。 | https://api.infro.io/v1 |
| 認証情報 | api-key、またはEntra IDのベアラートークン。 | INFROのゲートウェイキー。INFROはリソース名とキーを接続として暗号化して保持します。 |
| モデルID | デプロイ名。例:gpt-prod。 | openai/gpt-5.6-terra。接続がこれをgpt-prodにマッピングします。またはルート名。 |
| フィールド | user、metadata、store。レスポンス内のcontent_filter_results。 | metadata { user_id, session_id, tags }はINFROが記録し、転送しません。Azureのコンテンツフィルターは引き続きお客様のリソース上で動作します。 |
変更前 · Azure OpenAI v1
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://my-company.openai.azure.com/openai/v1/",
apiKey: process.env.AZURE_OPENAI_API_KEY,
});
await client.chat.completions.create({
model: "gpt-prod", // deployment name
messages: [{ role: "user", content: "Hello" }],
});変更後 · INFRO
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.infro.io/v1",
apiKey: process.env.INFRO_API_KEY,
});
await client.chat.completions.create({
// A route: Azure deployment first, OpenAI second
model: "gpt-prod",
messages: [{ role: "user", content: "Hello" }],
});モデルマップ内のデプロイ
Azure接続で、openai/gpt-5.6-terraをデプロイgpt-prodにマッピングします。マッピングのないモデルは、モデル自体の名前をデプロイ名として送られます。
コンテンツフィルターは引き続き機能する
Azureはお客様のリソース上でフィルターを適用します。Azureが拒否したリクエストは、ルートのmoderationルールに従います。拒否をそのまま返すか、選択した場合は次のターゲットにフェイルオーバーします。
複数のリソース
各Azureリソース(リージョンまたはデータゾーンごとに1つ)をそれぞれ別の接続として接続すると、ルートは別のプロバイダーを試す前に、それらの間でフェイルオーバーできます。
Azure OpenAIのオブジェクトとINFROのオブジェクトの対応。2026年10月19日に読んだAzure OpenAIの公開ドキュメントに基づき、ゲートウェイの実装と照合しています。 INFROにないものは1行あります。
| Azure OpenAI | そこでの役割 | INFROでは |
|---|---|---|
| リソースとキー異なる | キーまたはEntra IDを使うAzure OpenAIリソース。 | リソース名とキーを暗号化して保持するAzure接続。Entra IDには非対応です。 |
| デプロイ同じ形式 | 各モデルの名前付きデプロイと、そのデプロイの種類。 | カタログIDからデプロイ名へのモデルマップ。 |
| フェイルオーバー異なる | リソースをまたぐ処理はアプリケーション側の役割です。 | Azureリソースと他のプロバイダーをまたぐルート。種類ごとの障害ルール付き。 |
| クォータとPTU異なる | デプロイごとの1分あたりトークン数、Provisioned Throughput。 | Azure側は変わりません。INFROは、呼び出し前に拒否するドル建ての予算を追加します。 |
| コンテンツフィルターとPrompt Shields同じ形式 | リソースごとに設定し、デプロイごとに割り当て。 | 引き続きお客様のリソース上で動作します。必要であれば、INFROがその上に独自のガードレールを追加します。 |
| プロンプトキャッシュ同じ形式 | 自動プレフィックスキャッシュ、prompt_cache_key、新しいモデルでの明示的なブレークポイント。 | 送られたとおりにAzureに渡され、キャッシュはAzure側で行われます。INFROはオプトインの完全一致レスポンスキャッシュを追加します。 |
| Responses API異なる | 推奨。バックグラウンドタスク、保存されたレスポンス。 | /v1/responsesは書かれたとおりにAzureへ送られます。INFROはレスポンスを保存しないため、previous_response_idとbackgroundは拒否されます。 |
| 評価と保存された補完なし | /openai/v1/evals、store、metadata。 | なし。 |
| 費用異なる | Azure Cost Management。 | プロジェクト、キー、ユーザー、タグごとのリクエスト単位の推定費用。Azureの請求とは突合しません。 |
Azure OpenAIの公開ドキュメントに対する当社の読み取りであり、トライアルやベンチマークではありません。誤りがあればお知らせください。該当する行を修正します。
INFROが行わないこと
- Entra IDやマネージドIDでAzureに認証すること。
- Assistants、Realtime、評価、バッチ、ファインチューニングを提供すること。
- トラフィックをAzureテナントまたはデータゾーン内にとどめること。
- Azureの請求と突合すること。
引き継がれないもの
- 切り替え前のAzure Monitorのメトリクスとログ。Azureに残ります。
- 保存された補完と保存されたレスポンス。
質問
- Azureのコンテンツフィルターは引き続き適用されますか?
- はい。INFROはお客様自身のリソースを呼び出し、Azureはこれまでどおりそこでフィルターを適用します。
- 利用料は誰が請求しますか?
- お客様のAzureサブスクリプションでMicrosoftから。INFROはサブスクリプションで、モデル支出への上乗せは0%です。
- コード内のデプロイ名をそのまま使えますか?
- はい。デプロイ名と同じ名前のINFROルートを作成すれば、呼び出し側は同じ
modelを送り続けられます。
当社と一緒に、またはご自身で移行
移行プログラムでは、通話でAzure OpenAIの設定をINFROの接続、ルート、予算に対応付け、最初のサービスを一緒に移行します。プロバイダーは引き続きお客様に直接請求し、INFROはサブスクリプションで、モデル利用料への上乗せは0%です。
出典
このページにあるAzure OpenAIについての記述は、すべて2026年10月19日に読んだこれらの資料に基づいています。トライアル、ベンチマーク、会話から推測したものはありません。
- Microsoft Learn — API lifecycle and the v1 API2026年10月19日に確認
- Microsoft Learn — REST reference2026年10月19日に確認
- Microsoft Learn — Deployment types2026年10月19日に確認
- Microsoft Learn — Content filtering2026年10月19日に確認
- Microsoft Learn — Prompt caching2026年10月19日に確認