次の方法で共有


Azure OpenAI イメージ生成モデルを使用する方法

OpenAI のイメージ生成モデルでは、ユーザーが指定したテキスト プロンプトと必要に応じて提供される画像に基づいてイメージがレンダリングされます。 このガイドでは、イメージ生成モデルを使用し、REST API 呼び出しを使用してそのオプションを構成する方法を示します。

Prerequisites

イメージ生成 API を呼び出す

次のコマンドは、コードでイメージ モデルを使用する最も基本的な方法を示しています。 これらのモデルをプログラムで初めて使用する場合は、 クイックスタートから開始することをお勧めします。

POST 要求を次の宛先に送信します。

https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/generations?api-version=<api_version>

URL:

次の値を置き換えます。

  • <your_resource_name> は、Azure OpenAI リソースの名前です。
  • <your_deployment_name> は、DALL-E 3 または GPT-image-1 モデルデプロイの名前です。
  • <api_version> は、使う API のバージョンです。 たとえば、2025-04-01-preview のようにします。

必要なヘッダー:

  • Content-Type: application/json
  • api-key: <your_API_key>

Body:

要求本文の例を次に示します。 いくつかのオプションを指定します。これらについては、後のセクションで定義します。

{
    "prompt": "A multi-colored umbrella on the beach, disposable camera",
    "model": "gpt-image-1",
    "size": "1024x1024", 
    "n": 1,
    "quality": "high"
}

Tip

イメージ生成トークンのコストについては、「 イメージ トークン」を参照してください。

Output

イメージ生成 API 呼び出しが成功した場合の応答は、次の例のようになります。 b64_json フィールドには、出力イメージ データが含まれています。

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "b64_json": "<base64 image data>"
        }
    ]
} 

Note

response_format パラメーターは、常に base64 でエンコードされたイメージを返す GPT-image-1 ではサポートされていません。

API 呼び出しの拒否

プロンプトと画像は、コンテンツ ポリシーに基づいてフィルター処理され、プロンプトまたは画像にフラグが設定されるとエラーが返されます。

プロンプトにフラグが設定されている場合、メッセージの error.code 値は contentFilter に設定されます。 次に例を示します。

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Your task failed as a result of our safety system."
    }
}

生成画像自体がフィルター処理される可能性もあります。 この場合、エラー メッセージは、"生成された画像は安全システムによりフィルター処理されました" に設定されます。 次に例を示します。

{
    "created": 1698435368,
    "error":
    {
        "code": "contentFilter",
        "message": "Generated image was filtered as a result of our safety system."
    }
}

テキストからイメージへのプロンプトを書き込む

プロンプトには、画像に表示するコンテンツと、画像の視覚的なスタイルが記述されている必要があります。

プロンプトを記述するときは、Image API にコンテンツ モデレーション フィルターが付属していることを検討してください。 サービスがプロンプトを有害なコンテンツとして認識した場合、画像は生成されません。 詳細については、「コンテンツのフィルター処理」を参照してください。

Tip

テキスト プロンプトを調整してさまざまな種類の画像を生成する方法については、イメージ プロンプト エンジニアリング ガイドを参照してください。

API オプションを指定する

イメージ生成モデルでは、次の API 本文パラメーターを使用できます。

Size

生成される画像のサイズを指定します。 GPT-image-1 モデルの 1024x10241024x1536、または 1536x1024 のいずれかである必要があります。 正方形の画像は生成が速くなります。

Quality

画質には、 lowmediumhighの 3 つのオプションがあります。低品質の画像をより高速に生成できます。

既定値は high です。

Number

1 つの API 呼び出しで 1 から 10 個のイメージを生成できます。 既定値は 1 です。

ユーザーID

ユーザー パラメーターを使用して、要求を行うユーザーの一意の識別子を指定します。 これは、使用パターンの追跡と監視に役立ちます。 値には、ユーザー ID や電子メール アドレスなどの任意の文字列を指定できます。

出力形式

生成されたイメージの形式を指定するには、 output_format パラメーターを使用します。 サポートされている形式は、 PNGJPEGです。 既定値は PNGです。

Note

WEBP イメージは、Azure AI Foundry モデルの Azure OpenAI ではサポートされていません。

Compression

生成されたイメージの圧縮レベルを指定するには、 output_compression パラメーターを使用します。 0100の間に整数を入力します。ここで、0は圧縮なし、100は最大圧縮です。 既定値は 100です。

Streaming

ストリーミング応答を有効にするには、 stream パラメーターを使用します。 trueに設定すると、生成された部分イメージが API によって返されます。 これにより、ユーザーの視覚的なフィードバックが高速になり、認識される待機時間が向上します。 partial_images パラメーターを設定して、生成される部分イメージの数を制御します (1 から 3)。

Image Edit API を呼び出す

Image Edit API を使用すると、指定したテキスト プロンプトに基づいて既存のイメージを変更できます。 API 呼び出しはイメージ生成 API 呼び出しに似ていますが、入力イメージも指定する必要があります。

Important

入力イメージのサイズは 50 MB 未満で、PNG または JPG ファイルである必要があります。

POST 要求を次の宛先に送信します。

https://<your_resource_name>.openai.azure.com/openai/deployments/<your_deployment_name>/images/edits?api-version=<api_version>

URL:

次の値を置き換えます。

  • <your_resource_name> は、Azure OpenAI リソースの名前です。
  • <your_deployment_name> は、DALL-E 3 または GPT-image-1 モデルデプロイの名前です。
  • <api_version> は、使う API のバージョンです。 たとえば、2025-04-01-preview のようにします。

必要なヘッダー:

  • Content-Type: multipart/form-data
  • api-key: <your_API_key>

Body:

要求本文の例を次に示します。 いくつかのオプションを指定します。これらについては、後のセクションで定義します。

Important

Image Edit API は、JSON データではなくマルチパート/フォーム データを受け取ります。 次の例は、cURL 要求にアタッチされるサンプル フォーム データを示しています。

-F "image[]=@beach.png" \
-F 'prompt=Add a beach ball in the center' \
-F "model=gpt-image-1" \
-F "size=1024x1024" \
-F "n=1" \
-F "quality=high"

Output

画像編集 API 呼び出しが成功した場合の応答は、次の例のようになります。 b64_json フィールドには、出力イメージ データが含まれています。

{ 
    "created": 1698116662, 
    "data": [ 
        { 
            "b64_json": "<base64 image data>"
        }
    ]
} 

API オプションを指定する

画像生成モデルで使用できるパラメーターに加えて、次の API 本文パラメーターを画像編集モデルで使用できます。

Image

イメージ値は、編集するイメージ ファイルを示します。

入力の忠実性

input_fidelity パラメーターは、入力画像のスタイルと特徴 (特に顔の特徴) に合わせてモデルが実行する作業量を制御します

これにより、関連のない領域を変更することなく、画像を微妙に編集できます。 高い入力忠実度を使用すると、面は標準モードよりも正確に保持されます。

Mask

mask パラメーターは、メイン イメージ入力パラメーターと同じ型です。 これらの領域で完全に透明なピクセル (ゼロのアルファ) を使用して、モデルで編集するイメージの領域を定義します。 マスクは PNG ファイルで、入力イメージと同じサイズにする必要があります。

Streaming

ストリーミング応答を有効にするには、 stream パラメーターを使用します。 trueに設定すると、生成された部分イメージが API によって返されます。 これにより、ユーザーの視覚的なフィードバックが高速になり、認識される待機時間が向上します。 partial_images パラメーターを設定して、生成される部分イメージの数を制御します (1 から 3)。