Black Forest Labs: FLUX.3 Image
FLUX 3 Image maakt en bewerkt afbeeldingen vanuit een geschreven briefing en maximaal tien referenties. Het voegt begrenzingsvakken in de prompt toe voor compositie en lokale wijzigingen, onderbouwing via web- en afbeeldingszoekopdrachten en vijf resolutieklassen.
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.
FLUX 3 Image is het beeldgeneratie- en bewerkingsmodel van Black Forest Labs met expliciete controle over de compositie. Een tekstbeschrijving kan een nieuwe scène maken; aangeleverde afbeeldingen kunnen een onderwerp, een te herwerken scène of meerdere te combineren elementen vastleggen. Begrenzingsvakken laten een briefing specificeren waar elk element hoort en welke delen van een bestaande afbeelding moeten veranderen. Het resultaat is een afbeelding waarvan je de gevraagde scène, tekst en lay-out kan controleren.
Maak een scène of geef een bewerkingsinstructie
Beschrijf voor een nieuwe afbeelding onderwerp, actie of houding, omgeving, licht en kadrering. Zet exacte tekst in de afbeelding tussen aanhalingstekens en geef aan waar die verschijnt. Een oorspronkelijke productbriefing kan een rode kampeerbeker op een bleek stenen oppervlak tonen, met een grote kop erboven en zacht ochtendlicht dat het handvat zichtbaar maakt. Bepaal het verband tussen kop, product en achtergrond, in plaats van losse stijlwoorden te geven.
Benoem voor bewerking het specifieke object en de wijziging: geef de beker een andere kleur, vervang een label, verplaats een figuur of verander de stijl van de scène. Eén bewerking vereist geen handmatig getekend vak. De gedocumenteerde workflow breidt de instructie vóór de generatie uit en kan het benoemde element lokaliseren en automatisch een vak toevoegen. De teruggestuurde uitgebreide prompt legt die interpretatie vast, wat nuttig is als een instructie het verkeerde object selecteert of een ongewenst detail introduceert.
Combineer en bereid referentiebeelden voor
Het specifieke producentenprofiel accepteert één tot tien referenties, aangeleverd als afbeeldings-URL's of gecodeerde afbeeldingsdata. Elke referentie moet minstens 256×256 pixels zijn en niet groter dan 16 megapixels. Benoem een referentie via haar positie of zichtbare inhoud en leg haar rol uit: de persoon uit Image 1, de jas uit Image 2 en de kamer uit Image 3. Een afbeeldingsreferentie is een bron van visuele informatie, geen opdracht om elk ongerelateerd detail erin te kopiëren.
De beeldverhoudingsinstelling staat standaard op auto. Volgens de aanvraagspecificatie krijgt een in de prompt gevraagde verhouding voorrang; anders bepaalt de eerste referentie de kadrering, met vierkante uitvoer als terugval wanneer noch een referentie noch een gevraagd formaat die levert. Plaats voor een compositie de bedoelde scènereferentie eerst of kies de verhouding expliciet. Bewaar bronafbeeldingen en hun volgorde bij het resultaat, zodat een latere herziening hetzelfde visuele vertrekpunt gebruikt.
Plaats elementen met begrenzingsvakken
Een lay-outprompt combineert een beschrijving met een JSON-array van elementrijen. De beschrijving benoemt een element met een markering zoals <cup_1>; de rij bevat id, bbox en desc. Coördinaten zijn gehele getallen van 0 tot 1000 in de volgorde [top, left, bottom, right], gemeten vanaf de linkerbovenhoek. Zo beschrijft [0, 0, 500, 500] het kwart linksboven, ongeacht de pixelafmetingen van het beeld. Gebruik de beeldverhouding waarvoor de lay-out is ontworpen, want dat coördinatenraster rekt mee met het kader.
Een bewerkingsrij gebruikt in plaats daarvan from, src_bbox en tgt_bbox naast de identificatie en beschrijving. ref_image_0 betekent de eerste aangeleverde afbeelding. Gelijke bron- en doelvakken verankeren een element; verschillende vakken verplaatsen of schalen het. Een nieuwe rij zonder bron genereert de beschrijving op de doellocatie en maakt toevoegingen, vervangingen of kleurwijzigingen mogelijk. Een bronrij zonder doel verwijdert het element. Vermeld toevoegingen en verwijderingen zowel in de geschreven instructie als in de rijen en behoud ankerrijen voor details die op hun plaats moeten blijven.
Geef tekst een eigen vak en citeer de exacte formulering in desc. Vakken sturen plaatsing en schaal; het zijn geen knipmaskers, dus een element kan buiten de rechthoek uitsteken. De maker meldt dat nieuwe objecten in vakken van ongeveer 40×25 pixels in zijn voorbeelden vaak niet verschenen. Voorzie voldoende zichtbare ruimte en controleer de bewerkte randen. Pixels buiten het doel blijven doorgaans stabiel, maar schaduwen, reflecties en nabije belichting kunnen toch veranderen.
Brononderbouwing, uitvoerklassen en bruikbare records
Het gedocumenteerde profiel schakelt brononderbouwing standaard in, zodat web- en afbeeldingszoekopdrachten informatie voor de generatie kunnen leveren. Je kan die uitschakelen voor een briefing die alleen de aangeleverde beschrijving en referenties moet gebruiken. Benoem bij een werkelijk onderwerp duidelijk de locatie, gebeurtenis of het object en hou feitelijke inhoud gescheiden van artistieke uitwerking. Vergelijk beelden op basis van zoekresultaten nog steeds met gezaghebbend materiaal wanneer een label, object of afgebeelde gebeurtenis nauwkeurig moet zijn.
De vijf resolutieklassen zijn 768sq, 1k, 1.5k, 2k en 4k, met 1k als standaard. Ze vertegenwoordigen niveaus met een gelijke pixeloppervlakte, dus de exacte breedte en hoogte hangen af van de gekozen verhouding. Vijftien vaste verhoudingen lopen van 21:9 via vierkante en staande formaten tot 9:21. Het profiel van dit model stuurt het formaat via verhouding en resolutie; het stelt niet de velden seed, width of height uit de FLUX.2-aanvraagprofielen beschikbaar. De gedocumenteerde versieselector benoemt momenteel een veranderende release en legt geen gedateerde overeenkomst met leveranciersgewichten vast.
De producentenworkflow geeft na asynchrone verwerking een afbeelding terug, samen met de uitgebreide prompt. De ondertekende downloadlink voor de afbeelding is één uur geldig. Bewaar de daadwerkelijke afbeelding, definitieve prompt en referenties in plaats van op een tijdelijke link te vertrouwen. Vergelijk voor een beoordeeld beeld de gevraagde tekst, objectplaatsing, referentie-identiteit en het gewijzigde gebied op de bedoelde weergavegrootte. Een voltooide generatie is het vertrekpunt om die visuele vereisten te controleren.
Ailoot Ultra · Afbeeldingen POST /v1/images/generations black-forest-labs/flux-3-image
black-forest-labs/flux-3-image
black-forest-labs/flux-3-imageAan de slag
FLUX 3 Image maakt en bewerkt afbeeldingen vanuit een geschreven briefing en maximaal tien referenties. Het voegt begrenzingsvakken in de prompt toe voor compositie en lokale wijzigingen, onderbouwing via web- en afbeeldingszoekopdrachten en vijf resolutieklassen.
- 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 black-forest-labs/flux-3-image | Standaard— |
Veldprompt | Typestring | VereisteVereist | Waarden en limieten Minimumlengte: 1 | Standaard— |
Veldresolution | Typestring | VereisteOptioneel | Waarden en limieten 768, 1K, 1.5K, 2K, 4K | Standaard— |
Veldaspect_ratio | Typestring | VereisteOptioneel | Waarden en limieten 21:9, 2:1, 16:9, 3:2, 7:5, 4:3, 5:4, 1:1, 4:5, 3:4, 5:7, 2:3, 9:16, 1:2, 9:21, auto | Standaard— |
Veldn | Typeinteger | VereisteOptioneel | Waarden en limieten Minimum: 1 Maximum: 1 | Standaard— |
Veldinput_references | Typearray | VereisteOptioneel | Waarden en limieten Minimumaantal items: 0 Maximumaantal items: 10 | 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 | Kosten |
|---|---|---|---|
| ConfiguratieBasistarieven voor tokens | TariefstaffelBasistarief | Verwachte hoeveelheid— | 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 |
| ConfiguratieGeschatte generatiekosten | Tariefstaffel— | Verwachte hoeveelheidschatting voor één generatie | Kosten Uitvoer · Geschatte generatiekosten · Schatting uitsluitend ter vergelijking $0.082 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': 'black-forest-labs/flux-3-image', '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 black-forest-labs/flux-3-image
Aliasnamen voor methodepaden
/v1/images
Gerelateerde aanroeper-ID’s
FAQ · Black Forest Labs: FLUX.3 Image
- Welke invoer en resultaten zijn beschikbaar?
POST /v1/images/generations·black-forest-labs/flux-3-image:text,image→image- Welke velden gebruikt het verzoek?
POST /v1/images/generations·black-forest-labs/flux-3-image:model,prompt,resolution,aspect_ratio,n,input_references,provider- Welke limieten gelden?
POST /v1/images/generations·black-forest-labs/flux-3-image:n.minimum:1;n.maximum:1