> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comfy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Seedream 5.5 261028 を Comfy Router で使用する

> Comfy Router 経由で byteplus/seedream-5-5-261028 を呼び出します。エンドポイント、リクエストの形状、Router が返すレスポンスについて説明します。

`byteplus/seedream-5-5-261028` のAPIリファレンスです。Comfy RouterがBytePlusから提供します。

**入力:** テキスト、画像 · **出力:** 画像

## クイックスタート

[Comfy ワークスペース](https://platform.comfy.org/profile/api-keys?onboarding=router)でキーを作成し、`COMFY_API_KEY` としてエクスポートします。Python と TypeScript のスニペットは Comfy SDK(`pip install comfy-sdk` と `npm install @comfyorg/sdk`)を使用しています。cURL のスニペットは、同じ呼び出しを生の HTTP で行うものです。

**モデル ID:** `byteplus/seedream-5-5-261028`

**エンドポイント:** `POST https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028`

> [tab] 結果を待つ
>
> ```python Python theme={null}
> from comfy_sdk import Comfy
>
> # 環境変数から COMFY_API_KEY を読み取ります。
> # SDK は自動的に冪等性キーを作成し、自動リトライで再利用します。
> with Comfy() as client:
>     result = client.models.run(
>         "byteplus/seedream-5-5-261028",
>         {
>             "prompt": "A red fox trotting through a snowy pine forest, cinematic lighting",
>             "response_format": "url",
>             "watermark": False,
>         },
>     )
>
> print(result)
> ```
>
> ```typescript TypeScript theme={null}
> import { comfy } from "@comfyorg/sdk";
>
> // 環境変数から COMFY_API_KEY を読み取ります。
> // SDK は自動的に冪等性キーを作成し、自動リトライで再利用します。
> const { data } = await comfy.models.run("byteplus/seedream-5-5-261028", {
>   prompt: "A red fox trotting through a snowy pine forest, cinematic lighting",
>   response_format: "url",
>   watermark: false,
> });
>
> console.log(data);
> ```
>
> ```bash cURL theme={null}
> curl https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028 \
>   -H "X-API-Key: $COMFY_API_KEY" \
>   -H "Idempotency-Key: $(uuidgen)" \
>   -H "Content-Type: application/json" \
>   -d "{\"prompt\": \"A red fox trotting through a snowy pine forest, cinematic lighting\", \"response_format\": \"url\", \"watermark\": false}"
> ```

> [tab] キューに送信して後で収集する
>
> 同じボディを `POST https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028/requests` に送信します。Router は実行が受け付けられるとすぐに `request_id` を伴う `201` を返し、結果は準備ができ次第、このプロセスまたは別のプロセスから収集されます。[キュー配信](https://docs.comfy.org/ja/development/comfy-router/queue.md)では、ステータス、キャンセル、収集の流れを順を追って説明します。
>
> ```python Python theme={null}
> import asyncio
> from comfy_sdk import AsyncComfy
>
> # 環境変数から COMFY_API_KEY を読み取ります。
> # 各 submit() 呼び出しは独自の Idempotency-Key を発行し、自動リトライで再利用します。
> async def main():
>     async with AsyncComfy() as client:
>         handle = await client.models.submit(
>             "byteplus/seedream-5-5-261028",
>             {
>                 "prompt": "A red fox trotting through a snowy pine forest, cinematic lighting",
>                 "response_format": "url",
>                 "watermark": False,
>             },
>         )
>         print("request_id:", handle.request_id)  # モデル ID と合わせて、別プロセスが必要とするすべてです
>
>         # リクエストが完了するまでポーリングし、サーバーが示す Retry-After だけ待機します。
>         async for update in handle.iter_events():
>             print(update.status, update.queue_position)
>
>         # プロバイダー自身のペイロードで、models.run() が返すのと同じ値です。
>         # 失敗またはキャンセル済みのリクエストは、ここで型付きの Router エラーを発生させます。
>         result = await handle.get()
>
>     print(result)
>
> asyncio.run(main())
> ```
>
> ```typescript TypeScript theme={null}
> import { comfy } from "@comfyorg/sdk";
>
> // 環境変数から COMFY_API_KEY を読み取ります。
> // 各 submit() 呼び出しは独自の Idempotency-Key を発行し、自動リトライで再利用します。
> const handle = await comfy.models.submit("byteplus/seedream-5-5-261028", {
>   prompt: "A red fox trotting through a snowy pine forest, cinematic lighting",
>   response_format: "url",
>   watermark: false,
> });
> console.log("requestId:", handle.requestId); // モデル ID と合わせて、別プロセスが必要とするすべてです
>
> // リクエストが完了するまでポーリングし、サーバーが示す Retry-After だけ待機します。
> for await (const update of handle.events()) {
>   console.log(update.status, update.queuePosition);
> }
>
> // models.run() が返すのと同じ結果です。失敗またはキャンセル済みのリクエストはここで reject されます。
> const result = await handle.get();
>
> console.log(result.data);
> ```
>
> ```bash cURL theme={null}
> # 1. 送信します。Router は request_id、status_url、response_url、cancel_url を伴う 201 を返します。
> curl https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028/requests \
>   -H "X-API-Key: $COMFY_API_KEY" \
>   -H "Idempotency-Key: $(uuidgen)" \
>   -H "Content-Type: application/json" \
>   -d "{\"prompt\": \"A red fox trotting through a snowy pine forest, cinematic lighting\", \"response_format\": \"url\", \"watermark\": false}"
>
> # 2. status が COMPLETED になるまでポーリングし、各レスポンスが示す Retry-After 秒だけ待機します。
> REQUEST_ID="<request_id from the 201 body>"
> curl -i https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028/requests/$REQUEST_ID/status \
>   -H "X-API-Key: $COMFY_API_KEY"
>
> # 3. 収集します。実行中はステータスボディを伴う 202、完了後はモデルネイティブの出力を伴う 200 を返します。
> curl https://api.comfy.org/v2/models/byteplus/seedream-5-5-261028/requests/$REQUEST_ID \
>   -H "X-API-Key: $COMFY_API_KEY"
> ```

## スキーマ

### 入力

**background** `string`

生成される画像を透明な背景（アルファチャンネル）にするかどうかを制御します。seedream-5.0-pro、5.0-flash、および自身のスキーマでこの項目が文書化されている新しい Seedream モデルでサポートされています。
auto: モデルがプロンプトと output\_format から判断します。output\_format が jpeg の場合、出力は常に不透明になります。
transparent: 透明な背景を持つ RGBA 画像を出力します。output\_format が jpeg の場合はエラーを返します。
opaque: 不透明な背景を持つ RGB 画像を出力します。seedream-5.0-pro のデフォルトです。
seedream-5.0-pro は、アルファチャンネルを持つ 1 枚の png 入力画像を用いた画像から画像への変換でのみ、透明出力をサポートします。
レイヤー分離シナリオではサポートされません。layer\_decomposition を有効にした状態で渡すとエラーを返します。

指定可能な値: `auto`、`transparent`、`opaque`

**guidance\_scale** `number`

出力画像が入力プロンプトにどれだけ忠実に従うかを制御します。範囲は \[1, 10] です。値が大きいほどプロンプトへの追従性が高くなります。seedream-5.0-pro、5.0-lite、4.5、4.0 ではサポートされません。

範囲: `1` から `10`

形式: `float`

**image** `string | string[]`

編集する画像（複数可）。アクセス可能な URL、または data URI プレフィックス付きの Base64 ペイロードで指定します。参照画像の上限がこのモデルでは 14 ではなく 10 である点を除き、共有の Seedream フィールドと同じです。

**layer\_decomposition** `boolean` (default: false)

レイヤー分離を有効にするかどうかを制御します。このパラメータをサポートするのは seedream-5.0-pro、5.0-flash、5.5 のみです。
true: レイヤー分離モード。モデルは単一の入力画像を 1 枚のベース画像と複数のレイヤー（最大 16、seedream-5.5 では最大 99）に分解し、生成された各レイヤーの位置と内容の情報を返します。これには重なり順（z\_index）、バウンディングボックス（bounding\_box）、名前（name）、説明（description）が含まれます。
false: 標準の画像生成モードです。レイヤー分離は行われません。
レイヤー分離モードに関する注意: 入力画像は 1 枚のみサポートされます（複数の画像を渡すとエラーを返します）。いずれか 1 つのレイヤーの生成に失敗した場合、リクエスト全体が失敗します（部分的な成功はサポートされません）。返される画像は最大 17 枚です（ベース画像 1 枚 + レイヤー 16 枚）。seedream-5.5 は最大で layer\_decomposition\_options.max\_images 枚の画像（ベース画像 1 枚 + 最大 99 レイヤー）を返します。sequential\_image\_generation、sequential\_image\_generation\_options、tools、stream を渡すとエラーを返します。

**layer\_decomposition\_options** `object`

レイヤー分離モードのオプションです。このパラメータをサポートするのは seedream-5.5 のみで、layer\_decomposition が true の場合にのみ適用されます。

**layer\_decomposition\_options.max\_images** `integer` (default: 30)

このリクエストが返す画像の最大総数で、ベース画像とレイヤーを合わせた枚数です。範囲: \[2, 100]。プロンプトで画像の分割方法が指定されていない場合、モデルは max\_images と入力画像の複雑さに基づいてレイヤーを計画します。値が大きいほど、通常はより細かいレイヤーになります。

範囲: `2` から `100`

**model** `string`

モデル識別子です。サポートされるモデル: seedream-4-0-250828、seedream-4-5-251128、seedream-5-0-260128、seedream-5-0-pro-260628、seedream-5-0-flash-260915、seedream-5-5-261028。POST /proxy/byteplus/api/v3/images/generations への直接の v1 呼び出しでは必ず指定する必要があります。プロキシはそれ以外の値や省略された値を 400 で拒否します。このスキーマの `required` リストに含まれていないのは、Comfy Router が /v2/models/byteplus/\{model} の `{model}` パスセグメントからこの値を設定するためで、Router の呼び出し元は省略します。

**optimize\_prompt\_options** `object`

プロンプト最適化機能の設定です。このパラメータをサポートするのは seedream-5.0-pro/5.0-lite/4.5/5.5（standard モードのみをサポートし、seedream-5.5 は fast を指定するとエラーを返します）と seedream-4.0 のみです。

**optimize\_prompt\_options.mode** `string` (default: "standard")

プロンプト最適化機能のモードを設定します。standard = より高品質ですが、生成時間は長くなります。fast = より高速ですが、品質は平均的になります。

指定可能な値: `standard`、`fast`

**output\_format** `string` (default: "jpeg")

出力画像の形式を指定します。このパラメータをサポートするのは seedream-5.0-pro、5.0-flash、5.0-lite、5.5 のみです。seedream-5.5 のデフォルトは png です。レイヤー分離シナリオでは、output\_format はベース画像の形式のみを制御し、各レイヤーは常に png で出力されます。

指定可能な値: `png`、`jpeg`

**prompt** `string`

画像の生成または変換のためのテキスト記述です。
レイヤー分離シナリオ（layer\_decomposition を有効にした seedream-5.0-pro、5.0-flash、5.5）では任意です。プロンプトを指定した場合、モデルはプロンプトの意図に従って指定された要素を認識して分離します。プロンプトを指定しない場合、モデルは画像内の主要な要素をすべて自動的に検出し、独立したレイヤーに分離します。

**response\_format** `string` (default: "url")

レスポンスで返される生成画像の形式を指定します。

指定可能な値: `url`、`b64_json`

**seed** `integer` (default: -1)

画像生成の確率性を制御するランダムシードです。範囲: \[-1, 2147483647]。指定しない場合は、シードが自動的に生成されます。同じ出力を再現するには、同じシード値を使用してください。

範囲: `-1` から `2147483647`

**sequential\_image\_generation** `string`

バッチ生成機能を無効にするかどうかを制御します。このパラメータは seedream-5.0-lite、4.5、4.0 でのみサポートされています（seedream-5.0-pro、5.0-flash、5.5 ではサポートされません）。指定可能な値:
auto: 自動モードでは、モデルはユーザーのプロンプトに基づいて、複数の画像を返すかどうか、および画像を何枚含めるかを自動的に決定します。
disabled: バッチ生成機能を無効にします。モデルは1枚の画像のみを生成します。

指定可能な値: `auto`, `disabled`

**sequential\_image\_generation\_options** `object`

このパラメータをサポートするのは seedream-5.0-lite、4.5、4.0 のみです（seedream-5.0-pro、5.0-flash、5.5 はサポートしていません）。
バッチ画像生成機能の設定です。このパラメータは、sequential\_image\_generation が auto に設定されている場合にのみ有効です。

**sequential\_image\_generation\_options.max\_images** `integer` (default: 15)

このリクエストで生成する画像の最大数を指定します。入力参照画像の数 + 生成される画像の数 ≤ 15。

範囲: `1` から `15`

**size** `string`

"seedream-4-0-250828": 生成される画像の仕様を設定します。2つの方法を使用できますが、併用はできません。
方法 1 | 解像度を指定します。指定可能な値: 1K、2K、4K
方法 2 | 幅と高さをピクセル単位で指定します。デフォルト: 2048x2048、総ピクセル数: \[1024x1024, 4096x4096]、アスペクト比: \[1/16, 16]
"seedream-4-5-251128": 2つの方法を使用できます。
方法 1 | 解像度を指定します。指定可能な値: 2K、4K
方法 2 | 幅と高さをピクセル単位で指定します。デフォルト: 2048x2048、総ピクセル数: \[2560x1440, 4096x4096]、アスペクト比: \[1/16, 16]
"seedream-5-0-260128": 2つの方法を使用できます。
方法 1 | 解像度を指定します。指定可能な値: 2K、3K
方法 2 | 幅と高さをピクセル単位で指定します。デフォルト: 2048x2048、総ピクセル数: \[2560x1440, \~3072x3072]、アスペクト比: \[1/16, 16]
"seedream-5-0-pro-260628": 2つの方法を使用できます（併用はできません）。
方法 1 | 解像度を指定し、プロンプトで画像のアスペクト比、形状、用途を記述します。最終的なサイズはモデルが決定します。指定可能な値: 1K、2K
方法 2 | 幅と高さをピクセル単位で指定します。デフォルト: 1024x1024、総ピクセル数: \[1024x1024 (1048576), 2048x2048 (4194304)]、アスペクト比: \[1/16, 16]
"seedream-5-0-flash-260915": 2つの方法を使用できます（併用はできません）。
方法 1 | 解像度を指定し、プロンプトで画像のアスペクト比、形状、用途を記述します。最終的なサイズはモデルが決定します。指定可能な値: 1K、1.5K、2K。デフォルト: 2K
方法 2 | 幅と高さをピクセル単位で指定します。総ピクセル数: \[1280x720 (921600), 2048x2048x1.1025 (4624220)]、アスペクト比: \[1/16, 16]
"seedream-5-5-261028": 2つの方法を使用できます（併用はできません）。
方法 1 | 解像度を指定します。指定可能な値: 1K、1.5K、2K。デフォルト: 2K
方法 2 | 幅と高さをピクセル単位で指定します。総ピクセル数: \[1280x720 (921600), 2048x2048x1.1025 (4624220)]、アスペクト比: \[1/16, 16]
"seedream-5-0-pro-260628"、"seedream-5-0-flash-260915"、および "seedream-5-5-261028" で layer\_decomposition が有効な場合: 解像度レベルの方法のみがサポートされます。指定可能な値: 1K、1.5K、2K、auto。デフォルト: auto。
ベース画像は、オリジナルの入力画像のアスペクト比を維持して、指定された解像度で出力されます。各レイヤーは、オリジナル画像でのアスペクト比を維持しながら、指定された解像度に近いサイズで出力されます。
auto: 出力は入力画像のサイズとアスペクト比に基づきます。\[1280x720, \~2048x2048] 内の入力はオリジナルの入力サイズで出力されます。1K より小さい入力は 1K で出力され、2K より大きい入力は 2K で出力されます。

**stream** `boolean` (default: false)

Comfy Router は完全な JSON 結果を取得するため、明示的に指定された stream フラグを false に設定します。v1 プロキシでは、このフィールドはストリーミング出力モードを有効にするかどうかを制御します。このパラメータをサポートするのは seedream-5.0-lite、4.5、4.0 のみです（seedream-5.0-pro、5.0-flash、5.5 はサポートしていません）。
false = すべての出力画像が一度に返されます。
true = 生成後すぐに各出力画像が返されます。

**watermark** `boolean` (default: true)

生成済みの画像にウォーターマークを追加するかどうかを指定します。
false = ウォーターマークなし
true = 'AI generated' ラベル付きのウォーターマークを追加します

Router が `GET /v2/models/byteplus/seedream-5-5-261028/openapi.json` で提供するスキーマから生成されています。これは、リクエストがプロバイダーに到達する前に、Router が呼び出しを検証する対象となる同じドキュメントです。

### 出力

**created** `integer`

リクエストが作成された時刻を示す Unix タイムスタンプ（秒単位）

**data** `object[]`

生成された画像の情報を含みます。
レイヤー分離のシナリオでは、配列の最初の要素がベース画像（z\_index=0）で、それに続く要素がレイヤーとなり、z\_index の昇順で並びます。

**data\[].b64\_json** `string`

Base64 でエンコードされた画像データ（response\_format が "b64\_json" の場合）

**data\[].background** `string`

画像が実際に持つ背景タイプ（transparent または opaque）。レイヤー分離のシナリオでは、ベース画像は常に opaque で、すべてのレイヤーは transparent です。このフィールドを返すのは seedream-5.5 のみです。

**data\[].bounding\_box** `object`

現在のレイヤーがベース画像内で占める領域のバウンディングボックス情報。このフィールドを返すのはレイヤーのみで、ベース画像はキャンバス全体を覆うため bounding\_box を返しません。layer\_decomposition が true の場合にのみ返されます。

**data\[].bounding\_box.absolute** `integer[]`

レイヤーのバウンディングボックスの絶対ピクセル座標。出力されるベース画像の座標系で、左上隅を (0, 0) とします。座標の形式: \[left, top, right, bottom]。

**data\[].bounding\_box.normalized** `integer[]`

レイヤーのバウンディングボックスのパーミル量子化（正規化）座標。ベース画像のサイズに基づいて \[0, 1000] の離散的な整数範囲に比例マッピングされ、最大 1000 で切り捨てられます。座標の形式: \[left, top, right, bottom]。

**data\[].description** `string`

現在分離された要素の詳細な説明。name よりも豊富なレイヤーの特徴（色、状態、マテリアルなど）を提供します。このフィールドを返すのはレイヤーのみで、ベース画像は返しません。layer\_decomposition が true の場合にのみ返されます。

**data\[].name** `string`

現在分離された要素の名前/ラベル。分離された被写体の特徴からモデルが自動的に生成します。このフィールドを返すのはレイヤーのみで、ベース画像は返しません。layer\_decomposition が true の場合にのみ返されます。

**data\[].output\_format** `string`

出力画像のファイル形式。このフィールドをサポートするのは seedream-5.0-pro と 5.5 のみです。

**data\[].size** `string`

画像の幅と高さ（ピクセル単位）。形式は \<width>x\<height> です。このパラメータをサポートするのは seedream-5.0-pro、5.0-lite、5.5、4.5、4.0 のみです。

**data\[].url** `string (uri)`

画像ダウンロード用の URL（response\_format が "url" の場合）

形式: `uri`

**data\[].z\_index** `integer`

レイヤーの重なり順。下から上へ増加します。0 が最下層のレイヤー（ベース画像）で、値が大きいほど上に位置します。レイヤーを正しい重なり順で完全な画像に再合成するために使用します。layer\_decomposition が true の場合にのみ返されます。

**error** `object`

エラー情報（存在する場合）

**error.code** `string`

上流の ModelArk のエラーコード。SensitiveContentDetected、InputTextSensitiveContentDetected、InputImageSensitiveContentDetected、InputVideoSensitiveContentDetected、InputAudioSensitiveContentDetected、OutputTextSensitiveContentDetected、OutputImageSensitiveContentDetected、OutputVideoSensitiveContentDetected、OutputAudioSensitiveContentDetected はコンテンツポリシーによる拒否を示します。ファミリーにはドット区切りの理由が付く場合があります（例: InputImageSensitiveContentDetected.PrivacyInformation、OutputVideoSensitiveContentDetected.PolicyViolation、OutputImageSensitiveContentDetected.DeepFake）。これは列挙型ではなくオープンな文字列で、その他のコードは検証エラーやプロバイダーの障害を表します。Router は HTTP 400 のエラーエンベロープおよび HTTP 200 の失敗タスク応答においてポリシーファミリーを認識しますが、トランスポート層の失敗を上書きすることはありません。

**error.message** `string`

エラーメッセージ

**model** `string`

リクエストに使用されたモデル ID

**usage** `object`

**usage.generated\_images** `integer`

モデルが生成した画像の数

**usage.input\_images** `integer`

モデルに入力された画像の数。このフィールドをサポートするのは seedream-5.0-pro と 5.5 のみです。

**usage.output\_tokens** `integer`

モデルが生成した画像に使用されたトークン数。

**usage.total\_tokens** `integer`

このリクエストで消費されたトークンの総数。

## 例

### 入力

```json theme={null}
{
  "prompt": "A red fox trotting through a snowy pine forest, cinematic lighting",
  "response_format": "url",
  "watermark": false
}
```

### 出力

```json theme={null}
{
  "created": 1767225600,
  "data": [
    {
      "size": "1024x1024",
      "url": "https://example.invalid/byteplus/seedream-4-0-250828/generated.png"
    }
  ],
  "model": "seedream-5-5-261028",
  "usage": {
    "generated_images": 1
  }
}
```

## 出荷前の確認

SDK は `Idempotency-Key` を生成し、自動リトライで再利用します。手動リトライでは元のキーを再利用してください。Router は最大 10 分間接続を保持できます。

リクエストが失敗すると、Router は理由を説明する `X-Comfy-Error-Type` レスポンスヘッダーを送信します。`422` は、プロバイダーを呼び出す前に Router が入力を拒否したことを意味し、`413` はリクエスト本文が Router の受け入れ可能なサイズを超えていたことを意味します。生成されたアセットは [結果 URL の有効期限](https://docs.comfy.org/ja/development/comfy-router/reference.md#結果アセット) があるため、早めにダウンロードしてください。

上記のフィールド説明に記載されているサイズ制限は、プロバイダーの仕様から引用した、そのフィールドに対するプロバイダー自身の上限です。Router はリクエスト本文全体に対して別の上限を適用し、base64 エンコードされたメディアもこれにカウントされます。[リクエスト本文のサイズ](https://docs.comfy.org/ja/development/comfy-router/limitations.md) を参照してください。

このページは、Comfy Router 経由で呼び出す 1 つのパートナーモデルについて説明しています。同じ `comfy-sdk` / `@comfyorg/sdk` パッケージには、Comfy Cloud 上で ComfyUI のワークフローグラフ全体を実行するための 2 つ目のクライアントも含まれています: `Comfy(api_key=...)` / `new Comfy({ apiKey })`、および `client.workflows`、`client.assets`、`client.jobs`。[Comfy SDKs](https://docs.comfy.org/ja/development/api-development/sdks.md) を参照してください。

> [card] [ヘッダー](https://docs.comfy.org/ja/development/comfy-router/headers.md)
>
> 認証、冪等性、リクエスト ID、エラー分類、リトライ間隔、支出上限。

> [card] [Router API の利用](https://docs.comfy.org/ja/development/comfy-router/api.md)
>
> モデルの検出、バリデーションエラー、リトライ、課金。

> [card] [制限事項](https://docs.comfy.org/ja/development/comfy-router/limitations.md)
>
> Router が現在対応していないことと、代替手段。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.