Image
Seedream 5.5
Seedream 5.5 でテキストから画像生成、最大 10 枚の参照画像での編集、透明な背景、文字認識付きレイヤー分解に対応。画像単位の課金でタスクとして受け取れます。
Seedream 5.5 は ByteDance の画像モデルです。1 回のリクエストで、プロンプトから、またはプロンプトと最大 10 枚の参照画像から画像を 1 枚生成するほか、画像を 1 枚、背景のベース画像と透明レイヤーに分解し、任意で各テキストレイヤーの文字も読み取れます。リクエストを送信し、返されたタスク ID を保持して、完成した画像をタスクから読み取ってください。参照画像は URL で渡します。
モデル ID
| モデル ID | 入力 | 出力サイズ | リクエストあたりの画像数 |
|---|---|---|---|
seedream-5-5 | テキスト、画像 0–10 枚 | 1K、1.5K、2K または WIDTHxHEIGHT | 1 枚、レイヤー分解では 2–100 枚(背景のベース画像を含む) |
現在の料金はモデルページをご覧ください。
クイックサンプル
curl https://api.seedrouter.ai/v1/images/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedream-5-5",
"prompt": "A ceramic teapot shaped like a sleeping fox on a linen tablecloth, soft morning window light, shallow depth of field. No text.",
"size": "1K"
}'エンドポイント
POST https://api.seedrouter.ai/v1/images/generations| ヘッダー | 値 |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
レスポンスはタスク({"id": "task_...", "status": "processing"})であり、完成した画像ではありません。結果は GET /v1/tasks/{task_id} をポーリングして取得してください。API キーはサーバー側のコードで保持してください。参照画像とレイヤー分解は同じリクエストの image で渡します。このモデルでは /v1/images/edits は使わず、400 が返されます。
パラメータ
| フィールド | 型 | デフォルト | 説明 |
|---|---|---|---|
model | 文字列 | 必須 | seedream-5-5 |
prompt | 文字列 | 必須 | 生成する画像の説明。layer_decomposition では任意です。分けたい要素を指定するか、省略するとモデルが被写体、テキスト、背景を自動で見つけます。 |
image | URL または URL リスト | なし | 公開画像 URL を 1 件、または最大 10 件のリストで指定します。省略するとテキストから画像を生成します。layer_decomposition では必ず 1 件です。すべての参照画像が課金対象です。 |
size | 文字列 | 2K | 解像度区分 1K、1.5K、2K、または正確なピクセル寸法 WIDTHxHEIGHT。出力サイズを参照してください。layer_decomposition では auto(デフォルト)、1K、1.5K、2K のみです。 |
output_format | 列挙型 | png | png または jpeg。layer_decomposition では背景のベース画像にのみ適用され、レイヤーは常に PNG です。 |
background | 列挙型 | auto | auto、opaque、transparent。transparent は参照画像の有無にかかわらず使えますが、png 出力が必要です。layer_decomposition では auto も含め、このフィールドを省略してください。 |
layer_decomposition | 真偽値 | false | 入力画像を 1 枚、背景のベース画像と透明 PNG レイヤーに分解します。 |
layer_decomposition_options.max_images | 整数 | 30 | layer_decomposition でのみ使用します。背景のベース画像を含めて 2–100 枚。これは上限で、返される枚数が少なくなる場合があります。 |
layer_decomposition_options.text_recognition | 真偽値 | false | layer_decomposition でのみ使用します。通常のテキストレイヤーに認識した文字を追加します。文字認識を参照してください。 |
optimize_prompt_options.mode | 列挙型 | standard | standard のみ。プロンプトの最適化は常にオンで、オフにはできません。 |
watermark | 真偽値 | false | true で「AI generated」マークを付けます。 |
content_filter | 真偽値 | true | API でのみ設定できます。Playground では常にオンです。 |
この一覧にないフィールドはリクエスト転送前に削除され、エラーの原因にも出力の変更にもなりません。n、stream、seed、response_format は利用できません。各リクエストは画像を 1 枚、layer_decomposition では最大 max_images 枚返します。callback_url は利用できません。代わりにタスクをポーリングしてください。
出力サイズ
| 指定方法 | 例 | ルール |
|---|---|---|
| 解像度区分 | "size": "2K" | 1K、1.5K、2K。prompt に形を記述してください。モデルがその記述からアスペクト比を選びます。 |
| 正確なピクセル寸法 | "size": "2560x1440" | 総ピクセル数 921,600〜4,624,220、幅 / 高さは 1/16〜16。 |
3K や 4K の解像度区分やアスペクト比による指定はありません。2K で 16:9 のフレームに固定するには、2560x1440 を送信してください。1K と 1.5K は同料金です。2K や 261 万ピクセルを超えるサイズは高い料金になります(料金の要素を参照)。
参照画像
編集する画像を 1 枚、組み合わせる画像を複数枚渡し、prompt で維持する部分と変更する部分を指定してください。「画像 1 のジャケット」のように、画像は順番で参照します。
{
"model": "seedream-5-5",
"prompt": "Turn this scene into a snowy winter night with warm light from the lighthouse windows, keep the composition",
"image": "https://example.com/lighthouse.jpg",
"size": "2560x1440"
}透明な背景
background: "transparent" を設定すると、プロンプトのみ、または参照画像から、背景が透明な PNG を取得できます:
{
"model": "seedream-5-5",
"prompt": "A glossy red enamel pin shaped like a cherry, product cutout",
"background": "transparent",
"output_format": "png",
"size": "1K"
}レイヤー分解
layer_decomposition: true と画像を必ず 1 枚送信してください。タスクは最初に背景のベース画像を返し、続いて各レイヤーを透明 PNG として返します。
{
"model": "seedream-5-5",
"image": "https://example.com/poster.jpg",
"layer_decomposition": true,
"size": "1K",
"layer_decomposition_options": { "max_images": 4, "text_recognition": true }
}各レイヤーに z_index(背景のベース画像は 0、大きい番号ほど上)、background、そしてモデルが提供する場合は name、description、bounding_box が含まれます。bounding_box.absolute は背景のベース画像のピクセル単位の [left, top, right, bottom] です。bounding_box.normalized は同じボックスを 0–1000 に換算した値です。レイヤーファイルは選択した解像度区分で描画されるため、ピクセル寸法がボックスと異なる場合があります。画像を再構成するには、各レイヤーをボックスのサイズに合わせ、z_index の昇順に背景のベース画像に配置してください。
解像度区分で背景のベース画像と各レイヤーのサイズを設定します。auto では入力画像に合わせ、1K 未満なら引き上げ、2K を超える場合は引き下げて出力します。
文字認識
layer_decomposition_options.text_recognition: true を指定すると、通常の印刷文字を含むレイヤーには text_recognition も付きます。全文の text(行を \n で結合)と lines が含まれ、各行には個別の bounding_box と、異なる書式のテキストを表す runs があります。各テキスト断片の style には similar_font_family、foreground_color(#RRGGBB)、そして bold、italic、underline、strikethrough、shadow、translucent の属性が含まれます。フォントと属性はモデルの推定です。装飾文字や手書き文字にはテキストが返されず、分解時に prompt を送ると文字認識が抑制される場合もあるため、このフィールドは任意として扱ってください。
メディア入力
各参照画像は公開 HTTP(S) URL で渡します。Base64 の data URI は受け付けません。ファイルを自分のストレージにアップロードし、その URL を渡してください。対応形式は JPEG、PNG、WebP、BMP、TIFF、GIF、HEIC、HEIF です。各画像は最大 30 MB、総ピクセル数は最大 36,000,000 です。AVIF と JP2 は非対応です。入力を読み取れないタスクは失敗し、課金されません。
料金の要素
現在のレートはモデルの料金セクションをご覧ください。Seedream 5.5 はピクセル数による料金区分に応じて出力画像 1 枚ごとに課金され、さらにすべての参照画像に料金がかかります:
cost = Σ each returned image's price for its own tier + reference images × reference price- 低い料金区分は 261 万ピクセル以下(
1Kと1.5K)です。それを超える画像は高い料金区分になります。 - 参照画像は最初の 1 枚から、すべて課金対象です。レイヤー分解では入力画像 1 枚分が課金されます。
- レイヤー分解は背景のベース画像と各レイヤーが課金対象で、それぞれのサイズに応じた料金区分を使います。
- タスク受理時の確保額は最大の結果を想定しています。指定した料金区分の画像 1 枚分、またはレイヤー分解では
max_images枚分(省略時は 30 枚)です。autoは高い料金区分として計算します。その後、実際に返された画像分を課金し、差額を解放します。
最終的な課金額はアカウントの利用履歴で確認できます。失敗したタスクは課金されません。
出力スキーマ
送信するとタスクが返されます:
{"id": "task_...", "model": "seedream-5-5", "status": "processing", "created_at": 1794323757}タスクを取得する
GET https://api.seedrouter.ai/v1/tasks/{task_id}status が completed または failed になるまで、10〜20 秒ごとにポーリングしてください。ポーリング中のネットワークタイムアウトは生成の失敗を意味しません。タスク ID を保持して確認を再開してください。進捗確認のために別のタスクを作成しないでください。
完了したタスク
{
"id": "task_...",
"model": "seedream-5-5",
"status": "completed",
"created_at": 1794323757,
"finished_at": 1794323804,
"output": {
"data": [
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/0.png",
"size": "1248x832",
"output_format": "png",
"background": "opaque"
}
]
}
}レイヤー分解タスクでは、背景のベース画像、各レイヤーの順に表示されます。以下は文字認識をオンにして実際にポスターを分解した結果で、背景のベース画像と三つのレイヤーのうち最初のレイヤーを示しています:
{
"data": [
{ "url": "https://static.seedrouter.ai/media/tasks/task_example/0.png", "size": "836x1254", "output_format": "png", "background": "opaque", "z_index": 0 },
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/1.png",
"size": "1455x721",
"output_format": "png",
"background": "transparent",
"z_index": 1,
"name": "Dark blue serif main title text with dash decorations",
"description": "Dark blue serif main title text reading \"BLUE TIDE SESSIONS\", with short horizontal dash decorations on its left and right sides.",
"bounding_box": { "absolute": [0, 0, 836, 414], "normalized": [0, 0, 1000, 330] },
"text_recognition": {
"text": "BLUE TIDE\nSESSIONS",
"lines": [
{
"bounding_box": { "absolute": [146, 69, 694, 196], "normalized": [175, 55, 830, 156] },
"runs": [
{
"text": "BLUE TIDE",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
},
{
"bounding_box": { "absolute": [175, 168, 664, 300], "normalized": [209, 134, 794, 239] },
"runs": [
{
"text": "SESSIONS",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
}
]
}
}
]
}私たちのテストでは 1K 画像は 47 秒、参照画像 1 枚を使った 2K の編集は 40 秒、画像四枚を返した 1K のレイヤー分解は 39 秒でした。多くのレイヤーに分解する場合は数分かかることがあります。
エラー
タスク作成前に拒否されたリクエストは、HTTP エラーと error オブジェクトを返し、課金されません。受理後に失敗したタスクは、照会時に HTTP 200 と status: "failed"、そして error オブジェクトを返します。
コード・HTTP ステータス・リトライの指針は共通エラーカタログを参照してください。
{
"id": "task_...",
"model": "seedream-5-5",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}送信自体がタイムアウトした場合は、再送信の前にタスクを確認してください。最初のリクエストが受理されている可能性があります。
ヒント
- 試作は
1Kまたは1.5Kで始めてください。1.5Kと1Kは同料金です。 - 形を固定するには正確なピクセル寸法を指定してください。たとえば、2K の 16:9 には
2560x1440を使います。 - 参照画像はすべて有料です。編集に必要な画像だけ送ってください。
- レイヤー分解では、想定する要素数に近い
max_imagesを指定してください。確保額もそれに応じて変わります。 - 文字の取得が主な目的なら、
text_recognitionをオンにし、分解時のpromptは省略してください。
