Engineering
Glossvation Engineering
AI

Azure OpenAI Service の採用判断 — OpenAI API との違い・企業導入のポイント

Azure OpenAI Service と本家 OpenAI API の違い、エンタープライズ要件 (データ所在地・SLA・プライベートリンク)、Responsible AI フィルター、料金の読み方まで。

Glossvation ·

Azure OpenAI と OpenAI API、何が違うのか

同じ GPT-4o / o1 / embedding モデルが使えるのに、Azure 経由版と本家版で以下が大きく違います。

Azure OpenAI ServiceOpenAI API (本家)
データ所在地選択可 (Japan East 等)米国リージョン中心
データ学習利用使用されない (明示)オプトアウト要
SLA99.9% (Standard)ベストエフォート
プライベート接続Private Endpoint / VNetインターネット経由のみ
認証Azure AD (Entra ID)API Key
モデル提供タイミング遅れがち (本家で発表 → 1〜3 ヶ月遅れ)発表即日
コンテンツフィルター強制 (無効化できない)柔軟
請求Azure 統合 (企業契約・前払い等)クレジットカード

判断軸: 法令・コンプライアンス・エンタープライズ契約が要るなら Azure OpenAI、研究・個人・素早い実験なら本家 OpenAI。

エンタープライズ要件が必要なケース

1. データ主権・ガバナンス

  • 医療・金融・公共: 日本国内 (Japan East / West) に API エンドポイント + データ保管を集約できる
  • 訓練データへの利用禁止が契約で明記されている → 社内データを安心して投入可能

2. 既存 Azure 資産との統合

  • Entra ID (旧 Azure AD) で統合認証 → 「誰がどのプロンプトを投げたか」監査可能
  • Azure Monitor / Application Insights で LLM 呼び出しメトリクスを統合
  • 他 Azure サービス (Cognitive Search / Document Intelligence) と Managed Identity で安全接続

3. プライベート接続

on-prem / VNet
    ↓ ExpressRoute / Private Endpoint
Azure OpenAI Endpoint (公衆インターネット経由なし)

金融業界等で「インターネット経由の AI API 呼び出し禁止」なら、Azure 経由一択。

使えるモデル (2024+ 時点)

シリーズ用途
GPT-4o / GPT-4o mini汎用の現行フラッグシップ、マルチモーダル対応
o1 / o1-mini推論特化、数学・コード生成に強い
GPT-4 Turbo旧世代、コンテキスト 128K
GPT-3.5 Turbo旧世代、コスト重視
text-embedding-3-large / small埋め込み、RAG で使う
DALL-E 3画像生成
Whisper音声 → テキスト

注意: Azure 側でモデルがデプロイ可能になるタイミングは本家より 1〜3 ヶ月遅れることが多い。最新モデルをすぐ使いたいプロトタイプは OpenAI 本家、本番は Azure という使い分けも。

最小実装 (Python)

import os
from openai import AzureOpenAI

client = AzureOpenAI(
    api_key=os.environ["AZURE_OPENAI_API_KEY"],
    api_version="2024-10-21",
    azure_endpoint="https://my-resource.openai.azure.com/",
)

response = client.chat.completions.create(
    model="gpt-4o",  # ← Azure では "deployment name" を指定
    messages=[
        {"role": "system", "content": "あなたは丁寧な日本語アシスタントです。"},
        {"role": "user", "content": "Kubernetes の Pod と Deployment の違いは?"},
    ],
    temperature=0.3,
)
print(response.choices[0].message.content)

Azure 固有の違い:

  • モデル名ではなく デプロイメント名 を model= に渡す (Azure Portal で先に deployment を作る)
  • api_version 指定必須
  • azure_endpoint に自分の Resource の URL

Responsible AI (コンテンツフィルター)

Azure OpenAI は 4 カテゴリのコンテンツフィルターが強制有効:

  • Hate (ヘイト)
  • Sexual (性的)
  • Violence (暴力)
  • Self-harm (自傷)

入力・出力の両方でフィルタリング。完全に無効化できない (一部カテゴリの閾値調整は申請制で可)。

実務: 業務用途ならデフォルトで問題ないが、

  • 医療現場 (自傷関連の相談を扱う) → 申請が必要
  • 文学・エンタメ (暴力描写を扱う) → ユースケースによっては使いにくい

→ 用途によっては OpenAI 本家 or Anthropic (Claude) との棲み分けを検討。

RAG 構成例

Azure AI Search + Azure OpenAI の組み合わせが定番:

社内ドキュメント (PDF/Word)
    ↓ Azure AI Search (embedding + インデックス化)
    ↓ 検索 (hybrid)
Azure OpenAI (ChatGPT-like UI) ←── プロンプト + 検索結果

Azure AI Studio の「Chat on your data」で、ノーコードで PDF/Word から Q&A ボットを作れる。社内 FAQ の第一歩には有力。

料金 (2024+ 時点、東日本)

モデル入力 ($/1Mトークン)出力 ($/1Mトークン)
GPT-4o$2.50$10.00
GPT-4o mini$0.15$0.60
o1$15.00$60.00
text-embedding-3-large$0.13—

Provisioned Throughput Units (PTU): 1 時間あたり固定枠で購入。大量トラフィックなら PTU で固定費化すると従量より安くなるケースも。エンタープライズ契約で年間コミット → 割引交渉可能。

落とし穴

1. Quota / RateLimit 制限

Azure OpenAI は デフォルトで Token/分 (TPM) が低い。新規サブスクリプションだと 10K TPM 程度。本番用途は Quota 増加申請を事前に。即日対応ではないので計画を。

2. 「デプロイメント名」と「モデル名」の混同

ドキュメントの API 例は model: "gpt-4o" だが Azure では自分の deployment 名 (例: gpt4o-prod)。本家コードをコピペすると動かない事故。

3. 日本リージョンで使えないモデル

Japan East で GPT-4o は OK だが、o1 系は米国のみ (2024 時点)。用途によっては US East 等に別 Resource を作る必要も。

4. コンテンツフィルター誤発火

真面目な質問が誤ってブロックされることがある (特に医療系)。error.code == 'content_filter' のエラーハンドリングを UI に実装しておく。

5. API キー管理

Azure Portal で API Key 2 本発行される。ローテーション運用 (Key1 → Key2 に切り替え → Key1 再発行) の手順を整備。Managed Identity 認証に切り替えればキー管理不要。

まとめ

  • データガバナンス・企業契約・プライベート接続 が必要なら Azure OpenAI
  • 最新モデルの即日利用・柔軟な実験 なら OpenAI 本家
  • 両方を環境 (dev / prod) で使い分けるハイブリッド戦略もアリ
  • RAG + 社内データ利用なら Azure AI Search 統合が強力

関連記事