Black Forest Labs: FLUX.3 Image
FLUX 3 Image vytváří a upravuje obrázky z písemného zadání a až deseti referencí. Přidává ohraničující rámečky zadané promptem pro kompozici a místní změny, ukotvení pomocí webového a obrazového vyhledávání a pět tříd rozlišení.
O modelu
Tento popis zahrnuje schopnosti modelu. Vstupy, výstupy a možnosti dostupné v Ailoot jsou uvedeny níže pro vybranou metodu.
FLUX 3 Image je model Black Forest Labs pro generování a úpravy obrázků s explicitním ovládáním kompozice. Textový popis může vytvořit novou scénu; dodané obrázky mohou určit objekt, scénu k úpravě nebo několik prvků ke spojení. Ohraničující rámečky umožňují v zadání určit, kam každý prvek patří a které části existujícího obrázku se mají změnit. Výsledkem je obrázek s požadovanou scénou, textem a rozvržením ke kontrole.
Vytvořte scénu nebo zadejte pokyn k úpravě
Pro nový obrázek popište objekt, děj či pózu, prostředí, světlo a rámování. Přesné znění uvnitř obrázku uveďte v uvozovkách a určete jeho umístění. Vlastní produktové zadání může ukazovat červený kempingový hrnek na světlém kamenném povrchu s velkým titulkem nad ním a měkkým ranním světlem odhalujícím ucho. Určete vztah titulku, produktu a pozadí místo nesouvisejících stylových slov.
Při úpravě označte konkrétní předmět a změnu: přebarvení hrnku, nahrazení etikety, přesunutí postavy či změnu stylu scény. Jediná úprava nevyžaduje ručně nakreslený rámeček. Dokumentovaný postup rozšiřuje pokyn před generováním a může automaticky najít pojmenovaný prvek a přidat rámeček. Vrácený rozšířený prompt zaznamenává tuto interpretaci, což je užitečné, když pokyn vybere nesprávný předmět nebo přidá nežádoucí detail.
Spojte a připravte referenční obrázky
Konkrétní profil výrobce přijímá jednu až deset referencí dodaných jako obrazové URL nebo kódovaná obrazová data. Každá musí mít alespoň 256×256 pixelů a nejvýše 16 megapixelů. Referenci pojmenujte podle pozice či viditelného obsahu a vysvětlete její roli: osoba z Image 1, bunda z Image 2 a místnost z Image 3. Obrazová reference je zdrojem vizuálních informací, nikoli pokynem ke kopírování každého nesouvisejícího detailu, který obsahuje.
Nastavení poměru stran je ve výchozím stavu auto. Ve specifikaci požadavku má poměr požadovaný v promptu přednost; jinak rámování určuje první reference a pokud je neurčuje reference ani požadovaný formát, použije se čtvercový výstup. Pro kompozici umístěte zamýšlenou referenci scény jako první nebo poměr zvolte explicitně. Zdrojové obrázky i jejich pořadí uchovejte u výsledku, aby pozdější úprava použila stejný vizuální výchozí bod.
Umístěte prvky pomocí ohraničujících rámečků
Prompt rozvržení kombinuje popisek s polem JSON tvořeným řádky prvků. Popisek pojmenuje prvek značkou jako <cup_1>; řádek obsahuje id, bbox a desc. Souřadnice jsou celá čísla od 0 do 1000 v pořadí [top, left, bottom, right], měřená od levého horního rohu. Například [0, 0, 500, 500] popisuje levou horní čtvrtinu bez ohledu na pixelové rozměry obrázku. Použijte poměr stran, pro který bylo rozvržení navrženo, protože tato souřadnicová síť se natahuje spolu s rámem.
Řádek úpravy místo toho vedle identifikátoru a popisu používá from, src_bbox a tgt_bbox. ref_image_0 znamená první dodaný obrázek. Shodné zdrojové a cílové rámečky prvek ukotvují; odlišné jej přesouvají nebo mění jeho velikost. Nový řádek bez zdroje vygeneruje na cílovém místě obsah podle svého popisu a umožňuje přidávání, nahrazování či přebarvování. Zdrojový řádek bez cíle prvek odstraní. Přidání a odstranění uveďte v písemném pokynu i v řádcích a ponechte ukotvující řádky pro detaily, které musí zůstat na místě.
Písmu dejte vlastní rámeček a jeho přesné znění uveďte v uvozovkách v desc. Rámečky řídí umístění a měřítko; nejsou ořezovými maskami, proto prvek může přesahovat obdélník. Výrobce uvádí, že nové objekty v rámečcích kolem 40×25 pixelů se v jeho příkladech často neobjevily. Ponechte dost viditelného prostoru a prohlédněte upravené hranice. Pixely mimo cíl zpravidla zůstávají stabilní, ale stíny, odlesky a blízké osvětlení se přesto mohou změnit.
Faktické ukotvení, třídy výstupu a užitečné záznamy
Dokumentovaný profil ve výchozím stavu zapíná grounding, takže generování může využívat webové a obrazové vyhledávání. Lze jej vypnout pro zadání, které má používat pouze dodaný popis a reference. U skutečného tématu jasně určete místo, událost nebo předmět a faktický obsah oddělte od uměleckého zpracování. Obrazy informované vyhledáváním stále vyžadují porovnání s autoritativními materiály, má-li být popisek, předmět či zobrazená událost přesná.
Pět tříd rozlišení je 768sq, 1k, 1.5k, 2k a 4k s výchozím 1k. V rámci každé třídy zůstává pixelová plocha stejná napříč poměry stran, takže přesná šířka a výška závisejí na zvoleném poměru. Patnáct pevných poměrů sahá od 21:9 přes čtvercové a portrétní formáty po 9:21. Profil tohoto modelu řídí velikost poměrem a rozlišením; nezpřístupňuje pole seed, width a height používaná v profilech požadavků FLUX.2. Jeho dokumentovaný výběr verze nyní označuje průběžně měněné vydání místo potvrzení datované shody vah dodavatele.
Postup výrobce vrací obrázek po asynchronním zpracování spolu s rozšířeným promptem. Podepsaný odkaz ke stažení obrázku platí jednu hodinu. Uchovejte samotný obrázek, konečný prompt a reference místo spoléhání na dočasný odkaz. U kontrolovaného materiálu porovnejte požadovaný text, umístění předmětů, identitu referencí a změněnou oblast v zamýšlené velikosti zobrazení. Dokončené generování je výchozím bodem pro kontrolu těchto vizuálních požadavků.
Ailoot Ultra · Obrázky POST /v1/images/generations black-forest-labs/flux-3-image
black-forest-labs/flux-3-image
black-forest-labs/flux-3-imageÚvod
FLUX 3 Image vytváří a upravuje obrázky z písemného zadání a až deseti referencí. Přidává ohraničující rámečky zadané promptem pro kompozici a místní změny, ukotvení pomocí webového a obrazového vyhledávání a pět tříd rozlišení.
- Přijímané vstupy
- Text · Obrázky
- Výsledky
- Obrázky
Dostupné v Ailoot · vstupy a metody
Ailoot Ultra · Obrázky POST /v1/images/generations
- Vstup
text,image- Výstup
image
| Pole | Typ | Požadavek | Hodnoty a limity | Výchozí |
|---|---|---|---|---|
Polemodel | Typstring | PožadavekPovinné | Hodnoty a limity black-forest-labs/flux-3-image | Výchozí— |
Poleprompt | Typstring | PožadavekPovinné | Hodnoty a limity Minimální délka: 1 | Výchozí— |
Poleresolution | Typstring | PožadavekVolitelné | Hodnoty a limity 768, 1K, 1.5K, 2K, 4K | Výchozí— |
Poleaspect_ratio | Typstring | PožadavekVolitelné | Hodnoty a limity 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 | Výchozí— |
Polen | Typinteger | PožadavekVolitelné | Hodnoty a limity Minimum: 1 Maximum: 1 | Výchozí— |
Poleinput_references | Typarray | PožadavekVolitelné | Hodnoty a limity Minimální počet položek: 0 Maximální počet položek: 10 | Výchozí— |
Poleprovider | Typobject | PožadavekVolitelné | Hodnoty a limity | Výchozí— |
Parametry a životní cyklus metody
| Parametr | Kontrakt |
|---|---|
Parametrcontent_type | Kontraktapplication/json |
Parametrrequired | Kontraktmodel, prompt |
Parametrmaterial_types | Kontrakttext, image |
Životní cyklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · skutečně vrácené task_id nebo záznam v knihovně médií
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarify
Jak se vypočítá konečný poplatek
Zobrazené sazby slouží k odhadu ceny před generováním. Konečný poplatek se vypočítá z nákladů zaznamenaných u původního generování. Naměřená délka výstupu ani odhadovaná množství nejsou konečným účtovaným množstvím.
Údaje o tarifech nepřidávají možnosti požadavku. Podporované parametry jsou uvedeny u vybrané metody.
- Rychlý režim
- Neuvedeno Při výběru rychlého režimu
- Režim flex
- Neuvedeno Při výběru režimu flex
- Maximální intenzita uvažování
- Neuvedeno Když se při maximální intenzitě uvažování použije výchozí úprava (default)
Odhadované sazby pro srovnání
Ceny podle konfigurace
Přiřaďte každý poplatek k uvedeným podmínkám. Pro každou sadu alternativních konfigurací použijte jednu sazbu.
| Konfigurace | Tabulka sazeb | Předpokládané množství | Poplatek |
|---|---|---|---|
| KonfiguraceZákladní sazby za tokeny | Tabulka sazebZákladní sazba | Předpokládané množství— | Poplatek Vstup · Vstupní tokeny · Odhad pouze pro srovnání — / 1K tokenů Výstup · Výstupní tokeny · Odhad pouze pro srovnání — / 1K tokenů Vstup · Čtení z mezipaměti · Odhad pouze pro srovnání — / 1K tokenů Vstup · Zápis do mezipaměti · Odhad pouze pro srovnání — / 1K tokenů Vstup · Zápis do mezipaměti, 1 hodina · Odhad pouze pro srovnání — / 1K tokenů |
| KonfiguraceOdhadovaná cena generování | Tabulka sazeb— | Předpokládané množstvíodhad pro jedno generování | Poplatek Výstup · Odhadovaná cena generování · Odhad pouze pro srovnání $0.082 odhad před generováním Tento odhad není dodatečným poplatkem ani pevnou sazbou za dokončené generování. |
Ailoot před požadavkem rezervuje odhadovanou částku. Po výsledku vyúčtuje konečný poplatek podle naměřeného využití. Při streamování se účtování řídí konečným záznamem využití. Jak funguje rezervace a vyúčtování →
Příklady požadavků
Ailoot Ultra · Obrázky
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
Přijímání a ukládání výsledků
Ailoot Ultra · Obrázky
Stáhněte každý vrácený obrázek nebo uložte jeho obsah Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Další načtení obsahu
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.
Uchovejte všechny dokončené výsledky
Uložte každý dokončený obrázek; stáhněte obsah každé vrácené URL nebo dekódujte obsah Base64.
Uchovejte úplnou odpověď a hlavičky, všechny skutečné výstupy, původní vrácené identifikátory a všechna pole s údaji o využití. Obnovte původní operaci bez opětovného odeslání požadavku na vytvoření.
Pokud je nutné ověřit původní odpověď
Uchovejte vrácené X-Client-Request-ID pro spárování záznamů. Načítejte pouze skutečně vrácené hodnoty task_id/asset_id nebo vlastní knihovnu médií; nikdy nevytvářejte URL úlohy z ID operace a nikdy znovu neodesílejte požadavek na vytvoření.
Pole odpovědi
| Pole | Typ |
|---|---|
Polecreated | Typ |
Poledata[].url | Typ |
Poledata[].b64_json | Typ |
Poleusage | Typ |
Aliasy
Aliasy modelu
Ailoot Ultra black-forest-labs/flux-3-image
Aliasy cest metod
/v1/images
Související ID modelů
FAQ · Black Forest Labs: FLUX.3 Image
- Jaké vstupy a výsledky jsou dostupné?
POST /v1/images/generations·black-forest-labs/flux-3-image:text,image→image- Jaká pole požadavek používá?
POST /v1/images/generations·black-forest-labs/flux-3-image:model,prompt,resolution,aspect_ratio,n,input_references,provider- Jaké limity platí?
POST /v1/images/generations·black-forest-labs/flux-3-image:n.minimum:1;n.maximum:1