Einführung
Qwen Image 2.1 Image Editing überarbeitet ein bis zehn Quellbilder anhand einer geschriebenen Anweisung und gibt einen einzelnen neuen Frame zurück. Das Qwen-Team bei Alibaba hat das Modell am 21. September 2026 als Open Weights freigegeben; dieser Endpunkt ging hier am selben Tag live.
Er läuft ohne Content-Filter und ohne Reifegrad-Flag. In unseren Abnahmetests hat er einen unzensierten Quellframe durch unsere Anweisungen getragen, ohne das Motiv neu anzuziehen, etwas zu verwischen oder sich auf eine harmlosere Komposition zurückzuziehen – genau die Fehlerart, die die meisten Bearbeitungs-Endpunkte für unzensierte Arbeit unbrauchbar macht.
Den Qwen-Image-2.1-Modus nach Ausgangsmaterial wählen
| Ausgangsmaterial | Modus |
|---|---|
| Ein bis zehn Quellbilder zum Weiterarbeiten | Qwen Image 2.1 Bildbearbeitung |
| Nur ein geschriebenes Briefing | Qwen Image 2.1 Text-zu-Bild |
| Quellen plus eigene LoRA-Gewichte | Qwen Image 2.1 LoRA Bildbearbeitung |
Wichtige Funktionen und Highlights
Zehn Referenzen in einer einzigen Anfrage
Die meisten Bearbeitungs-Endpunkte nehmen eine Quelle, manche drei. Dieser liest bis zu zehn, und genau das macht eine konsistente Serie praktikabel: den Frame behalten, der die Figur etabliert hat, die Referenz mit dem Outfit dazunehmen, die mit dem Schauplatz dazunehmen – und pro Durchlauf eine einzige Variable ändern.
Quellen bleiben, wie Sie sie geschickt haben
Ein Bearbeitungs-Endpunkt, der sein Motiv stillschweigend wieder anzieht, ist schlimmer als einer, der ablehnt: Er rechnet Ihnen das falsche Bild ab. Wir haben diesem Endpunkt eine unzensierte Quelle gegeben, mit der Anweisung, sie unverändert zu lassen und neue Elemente zu ergänzen; genau das kam zurück, jedes benannte Element vorhanden.
Jede Referenz ist eingepreist, der Kostenvoranschlag folgt also der Anfrage
Zusätzliche Quellen heben die Kosten linear, und maßgeblich ist der Kostenvoranschlag, der Ihnen vor dem Absenden angezeigt wird. Eine Anfrage mit zehn Quellen kostet auf derselben Stufe ein Mehrfaches einer Anfrage mit einer Quelle – ein Grund, die Referenzen zu schicken, die arbeiten, und den Rest wegzulassen.
Request-Parameter
| Parameter | Pflicht | Beschreibung |
|---|---|---|
prompt | Ja | Bis zu 5.000 Zeichen. mindestens 1 Zeichen · höchstens 5000 Zeichen |
image_urls | Ja | Ein bis zehn Referenzbilder. mindestens 1 Einträge · höchstens 10 Einträge |
mask_url | Nein | Optionales Schwarzweißbild, das die Bearbeitung in den lokalen Modus schaltet: Weiß markiert den Bereich, der neu gemalt wird, Schwarz bleibt unverändert, ein paar Pixel weicher… |
aspect_ratio | Nein | Komponiert den Frame vor der Generierung, statt ihn hinterher zu beschneiden – wählen Sie also die Form, in der Sie veröffentlichen werden. |
resolution | Nein | Die Stufe, die Ausgabegröße und Preis setzt: 1k ist die Vorgabe und die günstigste, 1.5k liegt dazwischen, auf 2k halten Hautstruktur, Haar und Stoffbindung zusammen. |
enable_prompt_expansion | Nein | Standardmäßig an: Vor der Generierung wird der Prompt zu einer ausführlicheren Szenenbeschreibung umgeschrieben. Schalten Sie es aus, damit Ihr Wortlaut unverändert verwendet wird. Standardwert: |
background | Nein | Standardmäßig opaque. |
output_format | Nein | JPEG als Vorgabe. PNG, wenn der Frame in ein Compositing geht, WebP, wenn er direkt auf eine Seite ausgeliefert wird. |
seed | Nein | Beruhigt den Zufall, sodass eine Serie in derselben Nachbarschaft bleibt. |
Preis
| Spezifikation | Preis |
|---|---|
| $0.036 / Bild |
| $0.048 / Bild |
| $0.072 / Bild |
Anwendungsfälle
Figurenkonsistenz über einen ganzen Satz
Behalten Sie einen freigegebenen Frame als Identitätsreferenz und fahren Sie ihn pro Bild mit einer neuen Anweisung erneut. Das ist weit stabiler als die Hoffnung, ein seed reproduziere ein Gesicht.
Szenen aus einer vorhandenen Figur aufbauen
Beginnen Sie mit einer Figur, die Sie schon haben, und ergänzen Sie das zweite Motiv, die Requisiten oder den Schauplatz. Anweisungen werden ausgeführt wie geschrieben.
Garderoben- und Schauplatzwechsel
Zwei Referenzen – eine für die Person, eine für das Kleidungsstück oder den Raum – und ein Prompt, der sagt, welche welche ist.
Ein Behaltenswertes im Kontext hochziehen
Fahren Sie einen 1k-Frame als 2k-Bearbeitung erneut, mit einer Anweisung, die die Komposition bewahrt, wenn Sie das Detail wollen, ohne die ganze Szene neu zu würfeln.
Prompt-Leitfaden und Praxistipps
Benennen, was jede Referenz beiträgt
Das Modell erschließt die Rollen nicht. „Das erste Bild ist die Frau, das zweite der Raum, in dem sie steht“ ist der Unterschied zwischen einer Bearbeitung und einer Vermischung.
Sagen, was sich nicht ändern darf
Einen negativen Prompt gibt es hier nicht, Schutzklauseln gehören also in die Hauptanweisung. „Die Frau exakt wie in der Quelle lassen, nichts an ihrer Kleidung hinzufügen“ ist der Satz, der ein Bearbeitungsmodell davon abhält, ein Motiv zu bedecken, das seiner Meinung nach bedeckt gehört.
Weniger, aber bessere Referenzen schicken
Die Identität hält sich aus einer sauberen Quelle gut und driftet, je mehr Quellen sich stapeln. Da jede Referenz zusätzlich ins Geld geht, ist weniger meist beides: günstiger und schärfer.
Den Kostenvoranschlag prüfen, nicht nur die Stufe
Auf diesem Endpunkt bewegt die Zahl der Referenzen den Preis ebenso stark wie die Auflösungsstufe. Maßgeblich ist der Kostenvoranschlag vor dem Absenden – lesen Sie ihn, bevor Sie eine Anfrage mit zehn Quellen abschicken.
API-Schnellstart
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/qwen-image-2.1/edit",
"input": {
"aspect_ratio": "1:1",
"background": "opaque",
"image_urls": [
"https://example.com/reference.png"
],
"output_format": "jpeg",
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Authentifizierung, vollständiges Schema, Polling und Fehlerbehandlung stehen in der API-Referenz.

















