Pro API: generera och retuschera bilder
En bild kostar 1 kredit, oavsett läge. Generering från en prompt och retuschering av en bild du skickar in går genom samma rutt.
Skicka in en bild
POST /images
{ "prompt": "portrait of a woman in a rainy street at night, neon reflections, cinematic",
"width": 832, "height": 1216 }
| Fält | Typ | Standard | Vad det gör |
|---|---|---|---|
prompt | sträng | obligatorisk | Scenen. Engelska ger de mest exakta resultaten. |
width, height | int | 1024 x 1024 | Pixelstorlek. Bra format: 1024 x 1024 (kvadrat), 832 x 1216 (porträtt), 1216 x 832 (landskap). |
mode | sträng | generation | edit, img2img eller inpaint, se nedan. Saknas fältet genereras bilden från prompten. |
image_b64 | sträng | Källbild i base64 (PNG eller JPEG), obligatorisk för alla tre retuschlägen. Maximalt 12 MB avkodat. | |
mask_b64 | sträng | Mask i base64: obligatorisk för inpaint, valfri för edit. Måla de områden som ska retuscheras i rött, i källbildens storlek. | |
lora | sträng | En tränad karaktär på kontot: det name som returneras av GET /loras. Lägg dess trigger i prompten. | |
lora2, lora2_strength | sträng, nummer | En andra karaktär och dess styrka (0 till 1, standard 1) för en scen med två personer. | |
steps | int | motorn | Lämna tomt. Motorn känner till sitt eget värde. |
Svaret:
{ "jobId": "test-79634842-4586-46d4-ad52-d9ea236ae00d", "seed": 178078967, "cost": 1 }
seed dras av motorn och returneras som information. Det kan inte fastställas som indata i
den här versionen.
De tre retuschlägen
Alla tre körs på samma instruktionsstyrda redigeringsmotor, som bevarar källbildens utseende. När du skickar en källbild läses width och height från bilden själv och behöver inte skickas med.
mode | Indata | Vad motorn gör |
|---|---|---|
edit | image_b64 + prompt (+ valfri mask_b64) | Tillämpar instruktionen på hela bilden ("add sunglasses", "make it snow"). Med en mask koncentreras förändringen till det röda området. |
inpaint | image_b64 + mask_b64 + prompt | Regenererar endast det röda området i masken, enligt instruktionen. Resten komponeras om pixel för pixel. |
img2img | image_b64 + prompt | Bearbetar om hela bilden utifrån prompten, men behåller dess komposition och utseende: en variation. |
IMG=$(base64 -w0 photo.png)
curl -s $B/images -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d "{\"mode\":\"edit\",\"prompt\":\"add a red scarf, keep everything else identical\",\"image_b64\":\"$IMG\"}"
Polling
GET /images/{jobId}
| Svar | Betydelse |
|---|---|
{ "status": "pending", "phase": "IN_QUEUE" } | I kö |
{ "status": "pending", "phase": "IN_PROGRESS" } | Renderar |
{ "status": "completed", "cost": 1, "file_url": "/pro/v1/images/{jobId}/file", ... } | Klar, fil redo |
{ "status": "failed", "detail": "..." } | Misslyckades, och ingenting debiteras |
Polla var 3:e sekund, inte snabbare: kön är delad.
Nedladdning
GET /images/{jobId}/file
Själva PNG-filen som svarskropp (Content-Type: image/png). Tillgänglig så snart statusen är completed, och 404 media_indisponible när renderingen är borta. Ladda ned den direkt, den arkiveras inte.
Avbryt
POST /images/{jobId}/cancel
Avbryter en köad eller pågående rendering. Svarar { "ok": true }. Ingenting debiteras, och kostnaden som reserverats mot nyckelns dagliga gräns återbetalas.