Seedream 5.0 Pro
Seedream 5.0 Pro API の使い方。画像生成、参照画像による編集、レイヤー分解、透過 PNG、リクエスト項目、レスポンス、料金を解説します。
Seedream 5.0 Pro は、プロンプトから画像を 1 枚生成し、最大 10 枚の参照画像を編集・合成できます。1 枚の画像をベース画像と最大 16 枚の透明レイヤーに分解することもできます。出力は 1K、1.5K、2K、またはピクセル数を指定したサイズです。モデルの詳細と Playground。
Wan API に接続する
API のベース URL は https://api.wanapi.app です。API キー設定で Wan モデルファミリーのキーを作成し、Authorization: Bearer YOUR_API_KEY として送信してください。キーはサーバー側で保管します。Playground はウェブサイトのログインセッションを使い、同じアカウントの残高から課金します。
GET /v1/models で、そのキーから利用できるモデルを取得できます。Seedream 5.0 Pro は OpenAI Images API を使用します。POST /v1/images/generations には JSON、POST /v1/images/edits には JSON または multipart によるファイルアップロードで送信します。画像の準備ができるとレスポンスが返るため、ポーリングするタスクはありません。
| 設定 | Seedream 5.0 Pro |
|---|---|
| モデル ID | bytedance/seedream-5.0-pro |
size | 1K、1.5K、2K(既定値)、または総ピクセル数が 921,600〜4,624,220、アスペクト比が 1:16〜16:1 となる WIDTHxHEIGHT。 |
image | 最大 10 枚の参照画像。 |
| 出力 | 1 回のリクエストで画像 1 枚。layer_decomposition を使う場合は、ベース画像 1 枚と最大 16 レイヤー。 |
画像を生成する
サーバー側で WAN_API_KEY に API キーを設定してください。リクエストは一度だけ送信します。通常は 1 分以内に生成が完了しますが、クライアントのタイムアウトは少なくとも 4 分に設定してください。
curl https://api.wanapi.app/v1/images/generations \
-H "Authorization: Bearer $WAN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "bytedance/seedream-5.0-pro",
"prompt": "A minimalist magazine cover: a red fox in fresh snow at dawn, the bold serif title \"QUIET WILD\" across the top",
"size": "1K"
}'レスポンスは OpenAI Images 形式です。以下の値は例示です。
{
"created": 1792022400,
"data": [
{
"url": "https://cdn.example.com/image-1.jpg",
"size": "1024x1024",
"output_format": "jpeg"
}
],
"usage": {
"generated_images": 1
}
}画像 URL は 30 日間利用できます。それ以上必要な場合は、ご自身でファイルを保存してください。"response_format": "b64_json" を送信すると、各画像が Base64 形式でも b64_json に返されます。
Seedream 5.0 Pro の料金
生成された画像は、ピクセル数に応じて 1 枚ごとに公式料金の 30% 引きで課金されます。261 万ピクセル以下の画像(1K と 1.5K)には低い単価、それより大きい画像には高い単価が適用されます。最初の参照画像は無料で、2 枚目以降は 1 枚ごとに参照画像の単価が加算されます。画像生成前に拒否されたリクエストには課金されません。
| 課金項目 | 公式定価 | Wan API の料金 |
|---|---|---|
| 2.61 MP 以下の画像(1K、1.5K) | $0.045 | 取得できません |
| 2.61 MP を超える画像(2K) | $0.09 | 取得できません |
| レイヤー分解:返された画像がすべて 2.61 MP 以下 | $0.0225 | 取得できません |
| 大きい画像を含むレイヤー分解結果:2.61 MP 以下の各画像 | $0.0225 | 取得できません |
| 大きい画像を含むレイヤー分解結果:2.61 MP を超える各画像 | $0.045 | 取得できません |
| 2 枚目以降の参照画像 1 枚ごと | $0.003 | 取得できません |
Wan API では、Seedream 5.0 Pro の画像、追加の参照画像、1K または 1.5K のレイヤー分解を、公式の画像単価の 30% 引きで提供しています。2.61 MP を超える画像を含むレイヤー分解結果には、公式料金が適用されます。
レイヤー分解では、ベース画像と返された各レイヤーに課金されます。すべての画像が 2.61 MP 以下なら、各画像に割引後のレイヤー単価が適用されます。一つでもそれより大きい画像がある場合は、すべての画像にそれぞれのサイズに応じた公式レイヤー単価が適用されます。見積もりは最大 17 枚分です。
公式料金: BytePlus ModelArk. 確認日:2026-10-23。
レイヤー分解では、ベース画像と返されたすべてのレイヤーに課金されます。すべての画像が 261 万ピクセル以下なら、各画像が公式レイヤー料金の 30% 引きになります。返された画像の一つでもそれより大きい場合は、すべての画像にそれぞれのサイズに応じた公式レイヤー単価が適用されます。2K では必ずこの条件に該当します。最大 17 枚分をまかなえる残高が必要ですが、実際に支払うのは返された画像の分だけです。
リクエストフィールド
JSON オブジェクトを送信します。model は必須です。layer_decomposition が true の場合を除き、prompt も必須です。未定義のフィールドは受け付けません。
| フィールド | 型 | 仕様 |
|---|---|---|
model | 文字列 | 必須:bytedance/seedream-5.0-pro。 |
prompt | 文字列 | 生成する内容、またはレイヤー分解で分離する要素。英語、中国語などに対応しています。英語で約 600 語以内にすると最良の結果が得られます。 |
image | 文字列または string[] | 最大 10 枚の参照画像を HTTP(S) URL、または形式名が小文字の data:image/<format>;base64,... で指定します。形式:JPEG、PNG、WebP、BMP、TIFF、GIF、HEIC、HEIF。1 枚あたり 30 MB 以下、アスペクト比 1:16〜16:1。 |
size | 文字列 | 画像生成:1K、1.5K、2K(既定値)または WIDTHxHEIGHT。レイヤー分解:1K、1.5K、2K または auto(既定値)。 |
layer_decomposition | 真偽値 | 既定値は false。true にすると、ちょうど 1 枚の PNG または JPEG 画像をベース画像と最大 16 レイヤーに分解します。 |
optimize_prompt_options | オブジェクト | {"mode": "standard"}(既定値)または {"mode": "fast"}。高速モードは、品質がわずかに下がる代わりに生成時間を短縮します。 |
output_format | 文字列 | jpeg(既定値)または png。レイヤー分解ではベース画像の形式を指定します。レイヤーは常に PNG です。 |
background | 文字列 | opaque(既定値)または transparent。透明背景には、アルファチャンネル付きの入力画像がちょうど 1 枚と、PNG 出力が必要です。レイヤー分解とは併用できません。 |
watermark | 真偽値 | 既定値は true。AI 生成を示す小さなラベルを追加します。削除するには false を送信してください。 |
nsfw_checker | 真偽値 | 既定値の true ではコンテンツチェックが有効です。false ではそのチェックを行わずに送信します。料金は変わりません。 |
response_format | 文字列 | url(既定値)または b64_json。 |
n | 整数 | 任意。値は 1 のみ。 |
stream、sequential_image_generation、tools、seed、guidance_scale、mask は、このモデルでは対応していないため受け付けません。
参照画像を編集・合成する
画像 1 枚と編集指示を指定するか、合成する複数の画像を渡します。
{
"model": "bytedance/seedream-5.0-pro",
"prompt": "Place the perfume bottle from image 1 on the marble table from image 2, soft window light",
"image": [
"https://example.com/bottle.png",
"https://example.com/table.jpg"
],
"size": "2K",
"output_format": "png"
}POST /v1/images/edits は同じフィールドを受け付けます。multipart では、image または image[] フィールドにファイルをアップロードし、optimize_prompt_options は JSON 文字列で送信してください。
レイヤー分解
{
"model": "bytedance/seedream-5.0-pro",
"prompt": "Separate the title text, the parrot and the background",
"image": "https://example.com/poster.png",
"layer_decomposition": true,
"size": "2K"
}レスポンスではベース画像が最初に並びます。各レイヤーには重ね順、位置、説明が追加されます。
{
"created": 1792022400,
"data": [
{ "url": "https://cdn.example.com/image-1.jpg", "size": "2048x2048", "output_format": "jpeg", "z_index": 0 },
{
"url": "https://cdn.example.com/image-2.png",
"size": "1273x265",
"output_format": "png",
"z_index": 1,
"bounding_box": { "absolute": [383, 120, 1655, 384], "normalized": [187, 59, 808, 188] },
"name": "Title text",
"description": "Yellow serif title text"
}
],
"usage": { "input_images": 1, "generated_images": 2 }
}一つでもレイヤーの生成に失敗すると、リクエスト全体が失敗します。プロンプトで上限を超える数のレイヤーを指定すると、一部のレイヤー内容が省かれる場合があります。
エラー
エラーは OpenAI 形式の {"error": {"message", "type", "code"}} で返されます。
| HTTP | code | 意味 |
|---|---|---|
| 400 | invalid_request または検証メッセージ | 対応していないフィールドまたは組み合わせです。リクエストを修正してください。課金されていません。 |
| 400 | content_policy_violation | プロンプト、入力画像、または出力がコンテンツポリシーにより拒否されました。課金されていません。 |
| 402 | insufficient quota | 残高をチャージしてから再送信してください。 |
| 429 | rate_limited | リクエストが多すぎます。時間をおいて再試行してください。 |
| 502 | submission_unknown | 結果を受信できませんでした。このリクエストには課金されていません。再送信する前に利用ログを確認してください。 |
| 503 | upstream_unavailable | 画像生成は一時的に利用できません。このリクエストには課金されていません。 |
タイムアウト後は、利用ログを確認するまでリクエストを自動で再送信しないでください。