Qwen: Qwen Image 3
Qwen-Image-3.0 combineert beeldgeneratie en -bewerking voor informatierijke lay-outs, gedetailleerde scènes en meertalige typografie. De standaardeditie biedt een balans tussen kwaliteit en snelheid en accepteert een tekstbriefing of maximaal drie afbeeldingen met een bewerkingsinstructie.
Over het model
Deze beschrijving gaat over de mogelijkheden van het model. De via Ailoot beschikbare invoer, uitvoer en opties staan hieronder voor de geselecteerde methode.
Qwen-Image-3.0 is Qwens beeldmodel van de derde generatie, dat tekst-naar-beeldgeneratie en bewerking op basis van referenties in één model combineert. De standaardeditie biedt een balans tussen beeldkwaliteit en reactiesnelheid, terwijl Qwen-Image-3.0 Pro de op kwaliteit gerichte topeditie is. Een verzoek levert een afbeelding op: een poster, geïllustreerde uitleg, productscène, storyboard of aangepaste foto, in plaats van een bewerkbaar document of een werkende interface.
De mogelijkheden voor rijke inhoud zijn geschikt voor een canvas met meerdere samenhangende onderdelen of een geneste visuele lay-out. Bereid de koppen, exacte tekst, hiërarchie en relaties tussen panelen voor voordat u stijldetails toevoegt. Voor een productvergelijking beschrijft een bruikbare briefing de hoofdweergave van het product, de kenmerken die moeten worden gelabeld en de leesvolgorde van ondersteunende panelen. Beschrijf voor een storyboard het onderwerp, de actie en het bijschrift van elk paneel afzonderlijk. Het aanbevolen maximum voor een prompt is 4.500 tokens; besteed die ruimte aan de inhoud en lay-out die de afbeelding daadwerkelijk nodig heeft.
Het model ondersteunt gedetailleerde texturen, typografie met gedemonstreerde kleine tekst van 10 pixels en native weergave in 12 talen met meerdere lettertypen en artistieke stijlen. Met deze mogelijkheden kan een realistisch object worden gecombineerd met een informatierijk beeld, zonder te hoeven kiezen tussen een foto en een lay-out met veel tekst. Geef de exacte woorden en cijfers op die moeten worden weergegeven, in welke taal en op welke plaats. Beschouw een gegenereerde interface als een visueel ontwerp: knoppen, grafieken en labels in de afbeelding voeren geen toepassingsgedrag uit.
Met bewerking kunt u tekst wijzigen, objecten toevoegen of verwijderen, elementen verplaatsen, de handeling van een onderwerp aanpassen, een stijl overbrengen of details van een beschadigde afbeelding verbeteren. Lever één tot drie afbeeldingen en één duidelijke bewerkingsinstructie aan. De afbeeldingsnummering volgt de aangeleverde volgorde, dus benoem welke afbeelding het onderwerp levert, welke een kledingstuk of object levert en welke de omgeving levert. Vraag voor een productscène om het object uit afbeelding 1 in de omgeving van afbeelding 2 te plaatsen, met behoud van de kenmerken die het product onderscheiden. Geef wijzigingen en vereisten voor behoud expliciet aan.
Het specifieke proces voor afbeeldingsinvoer accepteert JPG, JPEG, PNG, BMP, TIFF, WebP en GIF; van een geanimeerde GIF wordt alleen het eerste frame verwerkt. Elke afbeelding mag maximaal 10 MB groot zijn. De huidige API accepteert afmetingen van 1 tot 8.000 pixels, met een verhouding tussen de lange en korte zijde van hoogstens 10:1, en adviseert 384–2.048 pixels voor goede resultaten. Kies invoer waarop de over te brengen of te bewerken details duidelijk zichtbaar zijn. Een strak uitgesneden referentie kan de omringende structuur verbergen die nodig is om een object natuurlijk te plaatsen.
De uitvoer is PNG, met één tot zes afbeeldingen per verzoek en één als standaard. Het pixeloppervlak loopt van 512 × 512 tot 2.048 × 2.048, met beeldverhoudingen tussen 1:8 en 8:1; dit zijn oppervlaktelimieten, geen regel dat elke zijde maximaal 2.048 pixels mag zijn. Als geen formaat wordt opgegeven, beveelt het model een resolutie aan op basis van de prompt. Kies een liggende, vierkante of staande compositie voor het beoogde gebruik en bekijk de geretourneerde afbeelding vervolgens op dat daadwerkelijke formaat, zodat kleine labels en fijne details kunnen worden beoordeeld waar ze zullen verschijnen.
Promptherschrijving is standaard ingeschakeld in het proces van de maker. Directe verbetering werkt voor zowel generatie als bewerking; verbetering via een agent is een uitgebreidere herschrijfmodus voor uitsluitend tekst-naar-beeld en wordt geweigerd voor beeld-naar-beeldbewerking. Redeneren is standaard ingeschakeld, vereist promptherschrijving en verlengt de generatietijd. Negatieve prompts kunnen ongewenste elementen beschrijven, terwijl een vaste seed helpt om varianten te vergelijken. Geef uitsluitingen en exacte vereisten voor behoud duidelijk aan, in plaats van te verwachten dat een seed bij een veranderende briefing een identieke afbeelding oplevert.
Controleer voor een bruikbaar eindresultaat de weergegeven woorden, eenheden, paneelvolgorde en details waaraan het onderwerp herkenbaar is. Pas daarna het specifieke onderdeel aan dat niet aan de briefing voldeed. Een antwoord met meerdere afbeeldingen biedt alternatieven om te vergelijken; bewaar bij elke geretourneerde afbeelding de prompt en referenties waarmee die is gemaakt. De afbeeldingslocaties van de maker verlopen na 24 uur, dus bewaar het daadwerkelijke afbeeldingsbestand wanneer het resultaat deel wordt van een project. De standaardeditie 3.0 blijft onderscheiden van Pro en van Qwen 2.1-modellen, die andere aantallen referenties en transparantiemogelijkheden hebben.
Ailoot Ultra · Afbeeldingen POST /v1/images/generations qwen/qwen-image-3
qwen/qwen-image-3Aan de slag
Qwen-Image-3.0 combineert beeldgeneratie en -bewerking voor informatierijke lay-outs, gedetailleerde scènes en meertalige typografie. De standaardeditie biedt een balans tussen kwaliteit en snelheid en accepteert een tekstbriefing of maximaal drie afbeeldingen met een bewerkingsinstructie.
- Toegestane invoer
- Tekst · Afbeeldingen
- Resultaten
- Afbeeldingen
Beschikbaar in Ailoot · invoer en methoden
Ailoot Ultra · Afbeeldingen POST /v1/images/generations
- Invoer
text,image- Uitvoer
image
| Veld | Type | Vereiste | Waarden en limieten | Standaard |
|---|---|---|---|---|
Veldmodel | Typestring | VereisteVereist | Waarden en limieten qwen/qwen-image-3 | Standaard— |
Veldprompt | Typestring | VereisteVereist | Waarden en limieten Minimumlengte: 1 | Standaard— |
Veldresolution | Typestring | VereisteOptioneel | Waarden en limieten 1K, 2K | Standaard— |
Veldaspect_ratio | Typestring | VereisteOptioneel | Waarden en limieten 1:1, 1:2, 1:4, 2:1, 2:3, 3:2, 3:4, 4:1, 4:3, 4:5, 5:4, 9:16, 16:9 | Standaard— |
Veldn | Typeinteger | VereisteOptioneel | Waarden en limieten Minimum: 1 Maximum: 6 | Standaard— |
Veldinput_references | Typearray | VereisteOptioneel | Waarden en limieten Minimumaantal items: 0 Maximumaantal items: 4 | Standaard— |
Veldprovider | Typeobject | VereisteOptioneel | Waarden en limieten | Standaard— |
Methodeparameters en levenscyclus
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, prompt |
Parametermaterial_types | Contracttext, image |
Levenscyclus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · daadwerkelijk teruggegeven task_id of record in de mediabibliotheek
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarieven
Zo worden de uiteindelijke kosten berekend
De getoonde tarieven ramen de kosten vóór de generatie. De definitieve kosten worden berekend op basis van de kosten die voor de oorspronkelijke generatie zijn geregistreerd. De gemeten duur van het gegenereerde resultaat en de geraamde hoeveelheden vormen niet de definitieve factureerbare hoeveelheid.
Tariefverwijzingen voegen geen verzoekopties toe. Ondersteunde parameters staan bij de geselecteerde methode.
- Snelle modus
- Niet opgegeven Wanneer de snelle modus geselecteerd is
- Flex-modus
- Niet opgegeven Wanneer de flex-modus geselecteerd is
- Maximale redeneerinspanning
- Niet opgegeven Wanneer voor maximale redeneerinspanning de default-aanpassing wordt gebruikt
Geschatte tarieven ter vergelijking
Prijzen per configuratie
Koppel elke kostenpost aan de getoonde voorwaarden. Gebruik één tarief voor elke groep alternatieve configuraties.
| Configuratie | Tariefstaffel | Verwachte hoeveelheid | Rekeneenheid | Kosten |
|---|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Verwachte hoeveelheid— | Rekeneenheid— | Kosten Invoer · Invoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Uitvoer · Uitvoertokens · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache lezen · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven · Schatting uitsluitend ter vergelijking — / 1K tokens Invoer · Cache schrijven, 1 uur · Schatting uitsluitend ter vergelijking — / 1K tokens |
| Configuratieinvoerafbeelding | Tariefstaffel— | Verwachte hoeveelheid— | Rekeneenheidper invoerafbeelding | Kosten Invoer · invoerafbeelding · Schatting uitsluitend ter vergelijking $0.006 per invoerafbeelding |
| ConfiguratieGeschatte generatiekosten | Tariefstaffel— | Verwachte hoeveelheidschatting voor één generatie | Rekeneenheid— | Kosten Uitvoer · Geschatte generatiekosten · Schatting uitsluitend ter vergelijking $0.06 schatting vóór generatie Deze raming is geen extra kost of vast tarief voor de voltooide generatie. |
Ailoot reserveert vóór een verzoek een geschat bedrag. Na het resultaat worden de uiteindelijke kosten afgerekend op basis van het gemeten verbruik. Bij streaming gebeurt de afrekening op basis van de definitieve verbruiksregistratie. Zo werken reservering en afrekening →
Voorbeeldverzoeken
Ailoot Ultra · Afbeeldingen
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'qwen/qwen-image-3', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Resultaten ophalen en opslaan
Ailoot Ultra · Afbeeldingen
Download elke teruggegeven afbeelding of sla de Base64-inhoud ervan op
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Lezen van andere inhoud
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Alle voltooide resultaten bewaren
Sla elke voltooide afbeelding op; haal elke teruggegeven URL op of decodeer de bijbehorende Base64-inhoud.
Bewaar de volledige respons en headers, iedere daadwerkelijke uitvoer, de oorspronkelijk teruggegeven identificatoren en alle verbruiksvelden. Herstel de oorspronkelijke bewerking zonder de aanmaakaanvraag opnieuw in te dienen.
Als het oorspronkelijke antwoord moet worden gecontroleerd
Bewaar de teruggegeven X-Client-Request-ID voor de reconciliatie. Lees uitsluitend daadwerkelijk teruggegeven task_id/asset_id-waarden of de eigen mediabibliotheek uit; bouw nooit een taak-URL op basis van de bewerkings-ID en dien de aanmaakaanvraag nooit opnieuw in.
Antwoordvelden
| Veld | Type |
|---|---|
Veldcreated | Type |
Velddata[].url | Type |
Velddata[].b64_json | Type |
Veldusage | Type |
Aliasnamen
Modelaliasnamen
Ailoot Ultra qwen/qwen-image-3
Aliasnamen voor methodepaden
/v1/images
Gerelateerde aanroeper-ID’s
FAQ · Qwen: Qwen Image 3
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/images/generations·qwen/qwen-image-3:text,image→image- Welke velden gebruikt het verzoek?
POST /v1/images/generations·qwen/qwen-image-3:model,prompt,resolution,aspect_ratio,n,input_references,provider- Welke limieten gelden?
POST /v1/images/generations·qwen/qwen-image-3:n.minimum:1;n.maximum:6