Azure OpenAI イメージとオーディオ REST API リファレンス (2024-10-21)

この記事では、2024-10-21 GA リリースの Azure OpenAI の画像生成と音声 (音声) データ プレーン推論 REST API 操作について説明します。 チャットの完了、埋め込み、完了、およびその他のすべての操作については、OpenAI REST API リファレンスAzure公式を参照してください

API 仕様

Azure OpenAIモデルやリソースの管理とやり取りは、主に3つのAPIサーフェスに分かれています。

  • コントロール プレーン
  • データプレーン - オーサリング
  • データプレーン - 推論

各APIサーフェス/仕様は異なるAzure OpenAIの機能セットをカプセル化しています。 各APIは独自のプレビューおよび安定版/一般公開版(GA)APIリリースを持っています。 プレビューリリースは現在、月次のリリースリズムに従う傾向があります。

Important

現在、新しいプレビュー推論APIが登場しました。 API ライフサイクルガイドで詳しくご覧ください。

API 最新プレビューリリース 最新のGAリリース Specifications 説明
コントロール プレーン 2025-07-01-preview 2025-06-01 仕様書ファイル コントロールプレーンAPIは 、リソースの作成モデル展開、その他の高レベルのリソース管理タスクなどの操作に使用されます。 コントロールプレーンはまた、Azure Resource Manager、Bicep、Terraform、Azure CLIなどの機能で何が可能かも管理しています。
データ プレーン v1 preview v1 仕様書ファイル データプレーンAPIは推論およびオーサリング操作を制御します。

認証

Azure OpenAIは認証のために2つの方法を提供しています。 APIキーかMicrosoft Entra IDのどちらかを使うことができます。

  • APIキー認証:この種の認証では、すべてのAPIリクエストに api-key HTTPヘッダーにAPIキーを含める必要があります。 クイックスタートは、この種の認証で通話する方法についてのガイダンスを提供します。

  • Microsoft Entra ID authentication:Microsoft Entraトークンを使ってAPI呼び出しを認証できます。 認証トークンはリクエストの中には Authorization ヘッダーとして含まれています。 提供されるトークンの前に Bearerが必ず付き、例えば Bearer YOUR_AUTH_TOKEN。 Microsoft Entra ID<>でのauthenticating の使い方ガイドをお読みいただけます。

REST API バージョン管理

サービスAPIは api-version クエリパラメータを用いてバージョン管理されています。 すべてのバージョンはYYYY-MM-DD 日付構造に従っています。 例えば次が挙げられます。

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/deployments/YOUR_DEPLOYMENT_NAME/chat/completions?api-version=2024-06-01

データプレーン推論

この記事の残りの部分では、Azure OpenAI データ プレーン推論仕様 (2024-10-21) の GA リリースでの画像とオーディオの操作について説明します。

プレビュー イメージとオーディオ操作については、 プレビュー イメージとオーディオ REST API リファレンスを参照してください

書き起こし - 作成

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-10-21

音声を入力言語に書き起こします。

URI パラメーター

名前 In 必須 タイプ 説明
エンドポイント パス はい 文字列
url
OpenAI Azureエンドポイント(プロトコルおよびホスト名、例:https://aoairesource.openai.azure.com)に対応しています。「aoairesource」をAzure OpenAIリソース名に置き換えてください。 https://{your-resource-name}.openai.azure.com
デプロイメント ID パス はい 文字列 音声入力モデルのデプロイID

サポートモデルの詳細については、[/azure/ai-foundry/openai/concepts/models#audio-models]をご覧ください。
api-version クエリ はい 文字列 API バージョン

リクエストヘッダー

名前 必須 タイプ 説明
APIキー 正しい 文字列 ここにAzure OpenAI API キーを提供してください

リクエストボディ

Content-Type: マルチパート/フォームデータ

名前 タイプ 説明 必須 デフォルト
ファイル 文字列 音声ファイルオブジェクトを文字起こしします。 はい
ダイアログを表示する 文字列 モデルのスタイルをガイドしたり、前の音声セグメントを続けるためのオプションテキスト。 プロンプトは音声言語に合っているべきです。 いいえ
response_format audioResponseFormat 出力のフォーマットを定義します。 いいえ
温度 number サンプリング温度は0から1の間です。 0.8のような高い値は出力をよりランダムにし、0.2のように低い値はより集中して決定的になります。 0に設定された場合、モデルは対数確率で一定の閾値に達するまで自動的に温度を上げます。 いいえ 0
言語 文字列 入力音声の言語。 入力言語をISO-639-1形式で提供することで、精度と遅延が向上します。 いいえ

Responses

ステータスコード: 200

説明: OK

Content-Type(コンテンツの種類) Type 説明
application/json audioResponse または audioVerboseResponse
text/plain 文字列 テキストがテキスト、vtt、srtのいずれかだった場合、出力形式で文字起こしresponse_format。

Examples

提供された音声データから文字起こしテキストと関連メタデータを取得します。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-10-21

回答:ステータスコード:200

{
  "body": {
    "text": "A structured object when requesting json or verbose_json"
  }
}

提供された音声データから文字起こしテキストと関連メタデータを取得します。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/transcriptions?api-version=2024-10-21

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

回答:ステータスコード:200

{
  "type": "string",
  "example": "plain text when requesting text, srt, or vtt"
}

翻訳 - 作成

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-10-21

入力された音声を英語テキストに書き起こし・翻訳します。

URI パラメーター

名前 In 必須 タイプ 説明
エンドポイント パス はい 文字列
url
OpenAI Azureエンドポイント(プロトコルおよびホスト名、例:https://aoairesource.openai.azure.com)に対応しています。「aoairesource」をAzure OpenAIリソース名に置き換えてください。 https://{your-resource-name}.openai.azure.com
デプロイメント ID パス はい 文字列 デプロイされた文字起こしモデルのデプロイ ID。

サポートモデルの詳細については、[/azure/ai-foundry/openai/concepts/models#audio-models]をご覧ください。
api-version クエリ はい 文字列 API バージョン

リクエストヘッダー

名前 必須 タイプ 説明
APIキー 正しい 文字列 ここにAzure OpenAI API キーを提供してください

リクエストボディ

Content-Type: マルチパート/フォームデータ

名前 タイプ 説明 必須 デフォルト
ファイル 文字列 翻訳用の音声ファイル。 はい
ダイアログを表示する 文字列 モデルのスタイルをガイドしたり、前の音声セグメントを続けるためのオプションテキスト。 プロンプトは英語で書かれるべきです。 いいえ
response_format audioResponseFormat 出力のフォーマットを定義します。 いいえ
温度 number サンプリング温度は0から1の間です。 0.8のような高い値は出力をよりランダムにし、0.2のように低い値はより集中して決定的になります。 0に設定された場合、モデルは対数確率で一定の閾値に達するまで自動的に温度を上げます。 いいえ 0

Responses

ステータスコード: 200

説明: OK

Content-Type(コンテンツの種類) Type 説明
application/json audioResponse または audioVerboseResponse
text/plain 文字列 テキストがテキスト、vtt、srtのいずれかだった場合、出力形式で文字起こしresponse_format。

Examples

提供された音声データから英語の文字起こしテキストと関連するメタデータを取得します。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-10-21

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

回答:ステータスコード:200

{
  "body": {
    "text": "A structured object when requesting json or verbose_json"
  }
}

提供された音声データから英語の文字起こしテキストと関連するメタデータを取得します。

POST https://{endpoint}/openai/deployments/{deployment-id}/audio/translations?api-version=2024-10-21

"---multipart-boundary\nContent-Disposition: form-data; name=\"file\"; filename=\"file.wav\"\nContent-Type: application/octet-stream\n\nRIFF..audio.data.omitted\n---multipart-boundary--"

回答:ステータスコード:200

{
  "type": "string",
  "example": "plain text when requesting text, srt, or vtt"
}

イメージの生成

POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-10-21

与えられたDall-eモデル展開時のテキストキャプションから画像の一括を生成する

URI パラメーター

名前 In 必須 タイプ 説明
エンドポイント パス はい 文字列
url
OpenAI Azureエンドポイント(プロトコルおよびホスト名、例:https://aoairesource.openai.azure.com)に対応しています。「aoairesource」をAzure OpenAIリソース名に置き換えてください。 https://{your-resource-name}.openai.azure.com
デプロイメント ID パス はい 文字列 展開されたdall-eモデルのデプロイID
api-version クエリ はい 文字列 API バージョン

リクエストヘッダー

名前 必須 タイプ 説明
APIキー 正しい 文字列 ここにAzure OpenAI API キーを提供してください

リクエストボディ

コンテンツ タイプ: アプリケーション/json

名前 タイプ 説明 必須 デフォルト
ダイアログを表示する 文字列 目的の画像のテキスト説明。 最大長さは4,000文字です。 はい
n 整数 生成すべき画像の数。 いいえ 1
size imageSize 生成される画像のサイズ。 いいえ 1024 x 1024
response_format imagesResponseFormat 生成された画像が返される形式。 いいえ url
ユーザー 文字列 エンドユーザーを表す一意の識別子であり、悪用の監視や検出に役立ちます。 いいえ
品質 imageQuality 生成される画像の品質。 いいえ 標準
スタイル imageStyle 生成された画像のスタイル。 いいえ vivid

Responses

ステータスコード: 200

説明: OK

Content-Type(コンテンツの種類) Type 説明
application/json generateImagesResponse

ステータスコード: デフォルト

説明:エラーが発生しました

Content-Type(コンテンツの種類) Type 説明
application/json dalleErrorResponse

Examples

プロンプトを与えられた画像を作成します。

POST https://{endpoint}/openai/deployments/{deployment-id}/images/generations?api-version=2024-10-21

{
 "prompt": "In the style of WordArt, Microsoft Clippy wearing a cowboy hat.",
 "n": 1,
 "style": "natural",
 "quality": "standard"
}

回答:ステータスコード:200

{
  "body": {
    "created": 1698342300,
    "data": [
      {
        "revised_prompt": "A vivid, natural representation of Microsoft Clippy wearing a cowboy hat.",
        "prompt_filter_results": {
          "sexual": {
            "severity": "safe",
            "filtered": false
          },
          "violence": {
            "severity": "safe",
            "filtered": false
          },
          "hate": {
            "severity": "safe",
            "filtered": false
          },
          "self_harm": {
            "severity": "safe",
            "filtered": false
          },
          "profanity": {
            "detected": false,
            "filtered": false
          }
        },
        "url": "https://dalletipusw2.blob.core.windows.net/private/images/e5451cc6-b1ad-4747-bd46-b89a3a3b8bc3/generated_00.png?se=2023-10-27T17%3A45%3A09Z&...",
        "content_filter_results": {
          "sexual": {
            "severity": "safe",
            "filtered": false
          },
          "violence": {
            "severity": "safe",
            "filtered": false
          },
          "hate": {
            "severity": "safe",
            "filtered": false
          },
          "self_harm": {
            "severity": "safe",
            "filtered": false
          }
        }
      }
    ]
  }
}

Components

チャット、入力候補、埋め込み、その他のテキスト操作で使用されるスキーマ定義については、OpenAI REST API リファレンスAzure参照してください。 次のスキーマは、このページでの画像とオーディオの操作をサポートしています。

innerErrorCode

内側のエラーオブジェクトのエラーコード。

説明:内側のエラーオブジェクトのエラーコード。

: 文字列

既定値:

列挙名:InnerErrorCode

列挙値:

価値 説明
責任あるAIポリシー違反 プロンプトはさらにコンテンツフィルターのルールの一つに違反していました。

dalleErrorResponse

名前 タイプ 説明 必須 デフォルト
エラー dalleError いいえ

dalleError

名前 タイプ 説明 必須 デフォルト
param 文字列 いいえ
文字列 いいえ
inner_error dalleInnerError 内部の誤りに追加の詳細を加えた。 いいえ

dalleInnerError

内部の誤りに追加の詳細を加えた。

名前 タイプ 説明 必須 デフォルト
コード innerErrorCode 内側のエラーオブジェクトのエラーコード。 いいえ
content_filter_results dalleFilterResults コンテンツフィルタリングのカテゴリ(ヘイト、性的、暴力、self_harm)、検出されたかどうか、そして有害なコンテンツの強度やリスクレベルを決定する重症度レベル(very_low、低、中、高)およびフィルタリングの有無に関する情報。 脱獄コンテンツや罵り言葉に関する情報、検出されたかどうか、フィルタリングされているかどうか。 顧客ブロックリストの情報(フィルタリング済みか)やID(ID)も含めて。 いいえ
修正版プロンプト 文字列 画像を生成するために使われたプロンプト、もしプロンプトに修正があったなら。 いいえ

contentFilterSeverityResult

名前 タイプ 説明 必須 デフォルト
filtered boolean はい
severity 文字列 いいえ

contentFilterDetectedResult

名前 タイプ 説明 必須 デフォルト
filtered boolean はい
detected boolean いいえ

dalleFilterResults

コンテンツフィルタリングのカテゴリ(ヘイト、性的、暴力、self_harm)、検出されたかどうか、そして有害なコンテンツの強度やリスクレベルを決定する重症度レベル(very_low、低、中、高)およびフィルタリングの有無に関する情報。 脱獄コンテンツや罵り言葉に関する情報、検出されたかどうか、フィルタリングされているかどうか。 顧客ブロックリストの情報(フィルタリング済みか)やID(ID)も含めて。

名前 タイプ 説明 必須 デフォルト
性的 contentFilterSeverityResult いいえ
violence contentFilterSeverityResult いいえ
hate contentFilterSeverityResult いいえ
self_harm contentFilterSeverityResult いいえ
profanity contentFilterDetectedResult いいえ
脱獄 contentFilterDetectedResult いいえ

audioResponse

json response_format翻訳または転写応答

名前 タイプ 説明 必須 デフォルト
SMS 送信 文字列 翻訳または文字起こしのテキスト。 はい

audioVerboseResponse

response_formatが翻訳または転写された応答verbose_json

名前 タイプ 説明 必須 デフォルト
SMS 送信 文字列 翻訳または文字起こしのテキスト。 はい
タスク 文字列 音声タスクの種類。 いいえ
言語 文字列 Language. いいえ
duration number Duration. いいえ
セグメント アレイ いいえ

audioResponseFormat

出力のフォーマットを定義します。

説明:出力のフォーマットを定義します。

: 文字列

既定値:

列挙値:

  • Json
  • SMS 送信
  • srt
  • verbose_json
  • vtt

imageQuality

生成される画像の品質。

説明:生成される画像の品質。

: 文字列

既定値: standard

エナム名:品質

列挙値:

価値 説明
標準 標準品質の画像は標準的な品質で作られます。
hd HD画質は、より細かく、画像全体でより一貫性のある画像を作り出します。

imagesResponseFormat

生成された画像が返される形式。

説明:生成された画像が返される形式。

: 文字列

既定値: URL

列挙名:ImagesResponseFormat

列挙値:

価値 説明
url 生成された画像をダウンロードするための一時的なアクセスを提供するURLです。
b64_json 生成された画像はbase64エンコード文字列として返されます。

imageSize

生成される画像のサイズ。

説明:生成される画像のサイズ。

: 文字列

既定値: 1024 x 1024

エナム名:サイズ

列挙値:

価値 説明
1792x1024 生成される画像の望ましいサイズは1792×1024ピクセルです。
1024 x 1792 生成される画像の希望サイズは1024×1792ピクセルです。
1024 x 1024 生成画像の希望サイズは1024×1024ピクセルです。

imageStyle

生成された画像のスタイル。

説明:生成された画像のスタイル。

: 文字列

既定値: 鮮やか

エンム名:スタイル

列挙値:

価値 説明
vivid Vividは超リアルでドラマチックな映像を作り出します。
natural 自然なものは、より自然で、過度にリアルでないイメージを作り出します。

generateImagesResponse

名前 タイプ 説明 必須 デフォルト
created 整数 操作が作られたUnixのタイムスタンプ。 はい
データ アレイ 成功した場合の操作結果データ はい

次のステップ

REST API を使用したモデルと微調整について説明します。 OpenAI をAzureする基になるモデルの詳細について説明します。