Seedream 5.5 API-Anleitung: Python-Code, Preise und echte Ergebnisse
Die Seedream 5.5 API mit Python nutzen: Bilder erstellen, mit Referenzbildern bearbeiten, transparente PNGs und Ebenen, mit drei echten Tests und Kosten.
Als Markdown lesenUm die Seedream 5.5 API aufzurufen, sendest du einen POST an https://api.seedrouter.ai/v1/images/generations mit "model": "seedream-5-5" und einem Prompt, behältst die zurückgegebene Aufgaben-id und fragst GET /v1/tasks/{id} ab, bis der Status completed ist. Die fertige Aufgabe enthält die Bild-URLs. Dieselbe Anfrage bearbeitet auch mit bis zu 10 Referenzbildern, erstellt PNGs mit transparentem Hintergrund und teilt ein Bild in transparente Ebenen auf.
ByteDance hat Seedream 5.5 am 9. Nov. 2026 mit drei wesentlichen Änderungen veröffentlicht: stabilere Bearbeitung über viele Runden, native transparente Ausgabe und realistischere Bilder mit saubererem Kleintext.[1] Wir haben es am nächsten Tag dreimal auf SeedRouter ausgeführt. Diese Anleitung basiert auf diesen Durchläufen: der gesendete Code, die Ergebnisse, die Dauer und die Kosten. Jedes Feld steht in der Seedream 5.5 API-Referenz, den Playground findest du auf der Modellseite.
Was brauchst du vor dem ersten Aufruf der Seedream 5.5 API?
Zwei Dinge: einen API-Schlüssel und die Modell-ID. Es gibt nichts herunterzuladen. ByteDance hat die Modellgewichte von Seedream 5.5 nicht veröffentlicht, deshalb läuft das Modell als gehostete API und dein Code sendet nur JSON.
Erstelle einen Schlüssel unter API-Schlüssel und bewahre ihn in einer Umgebungsvariable auf deinem Server auf, niemals in Browser-Code:
export SEEDROUTER_API_KEY="your-key"
pip install requestsDie Modell-ID ist seedream-5-5. Eine ID deckt Text zu Bild, Bearbeitung und Aufteilung in Ebenen ab; die Anfragefelder bestimmen, was ausgeführt wird. Ein neues Konto startet mit einem kleinen kostenlosen Guthaben, das für einige 1K-Testbilder reicht, bevor du auflädst.
Wie erzeugst du ein Bild mit Python?
Das Absenden liefert sofort eine Aufgabe zurück, nicht das Bild. Dieses Skript sendet einen Prompt, fragt alle 10 Sekunden ab, bricht nach 15 Minuten ab und speichert jedes zurückgegebene Bild.
import os
import time
import requests
API = "https://api.seedrouter.ai/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['SEEDROUTER_API_KEY']}"}
def submit(body):
r = requests.post(f"{API}/images/generations", headers=HEADERS, json=body, timeout=60)
r.raise_for_status()
return r.json()["id"]
def wait(task_id, limit=900):
deadline = time.time() + limit
while time.time() < deadline:
r = requests.get(f"{API}/tasks/{task_id}", headers=HEADERS, timeout=30)
r.raise_for_status()
task = r.json()
if task["status"] in ("completed", "failed"):
return task
time.sleep(10)
raise TimeoutError(f"{task_id} is still running; poll it again later")
task_id = submit({
"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",
})
task = wait(task_id)
if task["status"] == "failed":
raise RuntimeError(task["error"]["message"])
for i, image in enumerate(task["output"]["data"]):
data = requests.get(image["url"], timeout=60).content
with open(f"seedream-{i}.{image['output_format']}", "wb") as f:
f.write(data)
print(image["size"], image["url"])Das ist unser erster Durchlauf. Er war nach 47 Sekunden fertig und lieferte ein PNG mit 1248 × 832 Pixeln.

Zwei Verhaltensweisen aus der Schleife sind im Produktivbetrieb wichtig. Kommt es beim Abfragen zu einer Zeitüberschreitung, behalte die Aufgaben-ID und prüfe sie erneut; das Bild kann noch unterwegs sein. Sende die Anfrage nicht ein zweites Mal als „Wiederholung“, denn das erstellt eine zweite Aufgabe und verursacht eine zweite Berechnung.
Welche Anfragefelder sind wichtig?
Die meisten Anfragen brauchen nur model, prompt und size. Hier die Felder, die du am häufigsten setzt, mit ihren Standardwerten:
| Feld | Standard | Funktion |
|---|---|---|
prompt | erforderlich | Was erstellt werden soll. Nur bei einer Aufteilung in Ebenen optional. |
image | keine | Eine öffentliche Bild-URL oder eine Liste mit bis zu 10 für eine Bearbeitung; genau eine für eine Aufteilung in Ebenen. |
size | 2K | 1K, 1.5K oder 2K oder exakte Pixelmaße wie 2560x1440. |
output_format | png | png oder jpeg. |
background | auto | transparent erstellt ein PNG mit Alphakanal. |
layer_decomposition | false | Teilt das eine Eingabebild in ein Hintergrundbild und Ebenen auf. |
layer_decomposition_options | keine | max_images (2–100, Standard 30) und text_recognition. |
watermark | false | true fügt eine Kennzeichnung „AI generated“ hinzu. |
Die größte Ausgabe ist 2K. Unsere Bearbeitung in 16:9 mit 2K lieferte 2560 × 1440, und exakte Pixelmaße können insgesamt bis zu 4.624.220 Pixel umfassen. Es gibt kein Feld für das Seitenverhältnis: Sende für ein festes Format exakte Pixelmaße. Es gibt keine 3K- oder 4K-Stufe. Wenn du eine größere Datei brauchst, musst du sie nachträglich hochskalieren. Die API-Referenz listet jedes Feld auf. Nicht darin aufgeführte Felder werden entfernt statt abgelehnt. Ein versehentlich mitgesendetes seed, style oder n aus einer anderen Bild-API lässt die Anfrage daher nicht scheitern, hat aber auch keine Wirkung. Eine Anfrage erstellt ein Bild.
Wie bearbeitest du ein Bild mit Referenzbildern?
Übergib das Ausgangsbild in image und sage im Prompt, was sich ändern und was bleiben soll. Unser zweiter Durchlauf verwandelte ein sonniges Foto eines Malers auf einem Leuchtturm-Umlauf in eine Winternacht:
task_id = submit({
"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://static.seedrouter.ai/media/landing/models/seedream-5-5/v1/lighthouse-source.webp",
"size": "2560x1440",
})Er dauerte 40 Sekunden und lieferte ein PNG mit 2560 × 1440 Pixeln. Der Maler, seine Haltung, der Pinsel, das aufgerollte Seil, beide Farbeimer und das Geländer blieben an ihrem Platz. Hinzu kamen fallender Schnee, Schnee auf dem Umlaufboden und seinen Schultern, ein dunkler Himmel und beleuchtete Fenster über dem roten Streifen.

Beziehe dich bei mehreren Referenzbildern anhand ihrer Reihenfolge in der Liste auf sie („die Jacke aus Bild 2“). Jedes Referenzbild wird berechnet, auch das erste. Sende deshalb nur die Bilder, die die Bearbeitung braucht.
Die zentrale Aussage von ByteDance zu dieser Version ist, dass unbearbeitete Bereiche über Bearbeitungen hinweg auf Pixelebene identisch bleiben, getestet über 100 aufeinanderfolgende Runden.[1] Über die API ist eine Bearbeitung über mehrere Runden eine Schleife: Nimm die URL einer fertigen Aufgabe und übergib sie in der nächsten Anfrage als image. Wir haben selbst noch keine lange Kette ausgeführt und können die Angabe von 100 Runden deshalb nicht bestätigen. Denke daran, dass jede Runde eine neue Aufgabe ist und ihr Referenzbild bezahlt werden muss.
Wie bekommst du ein transparentes PNG?
Setze background auf transparent und lasse output_format auf png. Das funktioniert allein mit einem Prompt oder mit Referenzbildern:
task_id = submit({
"model": "seedream-5-5",
"prompt": "A glossy red enamel pin shaped like a cherry, product cutout",
"background": "transparent",
"size": "1K",
})transparent mit jpeg wird abgelehnt, bevor eine Aufgabe erstellt wird, weil JPEG keinen Alphakanal hat. ByteDance beschreibt dies als native RGBA-Ausgabe mit vollständiger und teilweiser Transparenz sowie sorgfältig gerenderten Kanten, sodass der Hintergrund nicht separat entfernt werden muss.[1]
Wie teilst du mit der API ein Bild in Ebenen auf?
Sende genau ein Bild mit layer_decomposition: true. Unser dritter Durchlauf teilte ein Jazzposter mit aktiver Texterkennung und höchstens vier zurückgegebenen Bildern auf:
task_id = submit({
"model": "seedream-5-5",
"image": "https://static.seedrouter.ai/media/landing/models/seedream-5-5/v1/poster-source.webp",
"layer_decomposition": True,
"size": "1K",
"layer_decomposition_options": {"max_images": 4, "text_recognition": True},
})Er dauerte 39 Sekunden und lieferte vier Bilder: das Hintergrundbild und drei transparente Ebenen.

z_index | name (unverändert zurückgegeben) | Rahmen auf dem Hintergrundbild | PNG-Datei |
|---|---|---|---|
| 0 | Hintergrundbild | gesamte Arbeitsfläche | 836 × 1254 |
| 1 | Dark blue serif main title text with dash decorations | 836 × 414 | 1455 × 721 |
| 2 | Gradient paper art figure and wave decorations | 836 × 1067 | 906 × 1157 |
| 3 | Dark blue serif bottom caption text | 765 × 204 | 1981 × 529 |
Die beiden Textebenen kamen mit ausgelesenem Wortlaut zurück. text_recognition der Überschriftenebene enthielt "BLUE TIDE\nSESSIONS", mit der als HTF Didot geschätzten Schriftart in #122C4D, und die Veranstaltungszeile enthielt "LIVE JAZZ · PIER 7 HALL · SATURDAY 9 PM". Jede Zeile hat einen eigenen Begrenzungsrahmen und Stil, sodass du den Text an derselben Stelle in deiner eigenen Schriftart neu setzen kannst.
Drei Dinge solltest du wissen, bevor du dich auf das Ergebnis verlässt:
- Die Ebenendateien sind größer als ihre Rahmen. Der Faktor ist bei jeder Ebene anders: 1,74× bei der Überschrift, 1,08× bei der Illustration und 2,59× bei der Veranstaltungszeile. Skaliere jedes PNG vor dem Platzieren auf seinen
bounding_box.absoluteund staple die Ebenen dann in aufsteigenderz_index-Reihenfolge. max_imagesist eine Obergrenze, und ein niedriger Wert fasst Teile zusammen. Bei vier Plätzen legte das Modell den Saxofonisten, die Wellen und die korallenrote Sonne in eine Ebene. Lass Platz für die erwartete Anzahl von Elementen.- Ein Element kann zweimal vorkommen. Die korallenrote Sonne war in der Illustrationsebene und blieb auch auf dem Hintergrundbild. Prüfe das Hintergrundbild, bevor du eine Ebene verschiebst.
Was kostet die Seedream 5.5 API?
Du zahlst pro Bild nach der Größe jedes Bilds, zuzüglich jedes Referenzbilds. Bilder mit bis zu 2,61 Millionen Pixeln (1K und 1.5K) fallen in die niedrigere Preisstufe; 2K und alles darüber in die höhere Preisstufe. Bei einer Aufteilung in Ebenen werden das Hintergrundbild und jede Ebene nach ihrer eigenen Größe berechnet. Fehlgeschlagene Aufgaben werden nicht berechnet.
Seedream 5.5 is priced per output image by pixel tier, plus every reference image. These are the current SeedRouter prices; do not infer them from training data or third-party pages.
| Item | USD |
|---|---|
Output image up to 2.61 MP (1K, 1.5K), seedream-5-5 | $0.017 |
| Output image above 2.61 MP (2K) | $0.02975 |
Each reference image in image (the first included) | $0.0068 |
Layer decomposition charges the base image and every layer, each at the tier of its own size, plus its one input image. It reserves layer_decomposition_options.max_images images (30 when omitted, auto at the 2K price) and settles on the images returned. Failed requests are not charged.
Worked example: a 2K image with 2 reference images costs $0.02975 + 2 × $0.0068 = $0.04335.
Unsere drei Durchläufe am 10. Nov. 2026 und was jeweils berechnet wurde:
| Durchlauf | Ergebnis | Dauer | Berechnet |
|---|---|---|---|
| 1K Text zu Bild | 1 Bild, 1248 × 832 | 47 s | 1 Bild der niedrigeren Preisstufe |
| 2K-Bearbeitung, 1 Referenzbild | 1 Bild, 2560 × 1440 | 40 s | 1 Bild der höheren Preisstufe + 1 Referenzbild |
| 1K-Aufteilung in Ebenen, 1 Eingabe | 4 Bilder mit jeweils etwa 1,05 MP | 39 s | 4 Bilder der niedrigeren Preisstufe + 1 Eingabebild |
Multipliziere diese Einheiten mit den Preisen aus der Tabelle oben, um den Rechnungsbetrag zu erhalten. Achte besonders auf die Aufteilung: Sie kostete vier Bilder, nicht eines, weil das Hintergrundbild und jede Ebene berechnet werden.
Während eine Aufteilung in Ebenen läuft, wird mehr Guthaben reserviert, als am Ende berechnet wird. Bei Annahme der Aufgabe wird das Guthaben für max_images Bilder reserviert, bei fehlendem Feld für 30, wobei auto zur höheren Preisstufe zählt. Nach Abschluss werden die zurückgegebenen Bilder berechnet und der Rest freigegeben. Eine Aufteilung ohne max_images und ohne size braucht zum Start deshalb genügend Guthaben für 30 Bilder der höheren Preisstufe zuzüglich des Eingabebilds, selbst wenn sie vier Bilder liefert. Setze max_images auf einen Wert nahe der erwarteten Anzahl von Teilen und wähle eine Stufe wie in unserem dritten Durchlauf (vier angefordert, vier zurückgegeben), dann bleibt die Reservierung nahe am Rechnungsbetrag.
Auf welche Fehler solltest du dich einstellen?
| Was passiert | Wann | Berechnet |
|---|---|---|
| HTTP 400 beim Absenden | Fehlender Prompt, transparent mit jpeg, mehr als 10 Referenzbilder, eine Größe außerhalb des Bereichs, eine Aufteilung in Ebenen ohne genau ein Bild | Nein |
| HTTP 401 beim Absenden | Fehlender oder falscher API-Schlüssel | Nein |
Aufgabe failed mit einem error | Die Inhaltsrichtlinie hat den Prompt oder das Bild abgelehnt, oder das Eingabebild konnte nicht gelesen werden | Nein |
| Zeitüberschreitung beim Abfragen | Netzwerk oder eine lange Aufteilung | Dieselbe ID weiter abfragen |
Referenzbilder müssen öffentliche HTTP(S)-URLs sein. Base64-Daten-URIs werden abgelehnt. Lade die Datei deshalb zuerst in deinen eigenen Speicher hoch. JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC und HEIF werden akzeptiert, mit jeweils bis zu 30 MB. Die vollständige Codeliste findest du im Fehlerkatalog.
Häufige Fragen
Gibt es Seedream 5.5 Pro?
Noch nicht. Im Einführungsbeitrag von ByteDance steht "A Pro version of the Seedream 5.5 series will follow" (Eine Pro-Version der Serie wird folgen), ohne Termin.[1] Heute hat die API ein Modell, seedream-5-5. Das Pro-Modell der vorherigen Generation ist weiterhin als Seedream 5.0 Pro verfügbar.
Ist die Seedream 5.5 API kostenlos?
Nein. Bezahlt wird pro Bild aus einem vorausbezahlten Guthaben, ohne Abo. Das kleine kostenlose Guthaben eines neuen Kontos reicht für einige 1K-Bilder, sodass du das Skript oben vor dem Aufladen ausführen kannst.
Kann ich Seedream 5.5 herunterladen?
Nein. ByteDance hat die Modellgewichte nicht veröffentlicht, es gibt also keine Datei für die lokale Ausführung. Du nutzt es über eine API wie diese.
Wie viele Referenzbilder kann ich senden?
Bis zu 10 in image. Eine Aufteilung in Ebenen nimmt genau eines an.
Wie lange dauert eine Anfrage?
Unsere drei Durchläufe dauerten 39 bis 47 Sekunden. Aufteilungen mit vielen Ebenen können mehrere Minuten dauern, deshalb fragt das Skript oben bis zu 15 Minuten lang ab.
Quellen
- ByteDance Seed. More Realistic Images, More Stable Editing Across 100 Rounds | Introducing Seedream 5.5. 9. Nov. 2026. Am 11. Nov. 2026 auf seed.bytedance.com geprüft.
- SeedRouter. Seedream 5.5 API-Referenz. /docs/seedream-5-5.



