Black Forest Labs: FLUX.3 Image
FLUX 3 Image kuria ir redaguoja vaizdus iš rašytinės užduoties bei iki dešimties orientyrų. Jis prideda užklausa nustatomus ribojančius stačiakampius kompozicijai ir vietiniams pakeitimams, rėmimąsi interneto bei vaizdų informacija ir penkias raiškos klases.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
FLUX 3 Image yra Black Forest Labs vaizdų generavimo ir redagavimo modelis su aiškiu kompozicijos valdymu. Tekstinis aprašymas gali sukurti naują sceną; pateikti vaizdai gali nustatyti objektą, taisytiną sceną arba kelis jungiamus elementus. Ribojantys stačiakampiai leidžia užduotyje nurodyti, kur priklauso kiekvienas elementas ir kurias esamo vaizdo dalis keisti. Rezultatas – vaizdas su prašyta scena, tekstu ir maketu, kuriuos reikia patikrinti.
Sukurkite sceną arba pateikite redagavimo nurodymą
Naujam vaizdui aprašykite objektą, veiksmą ar pozą, aplinką, šviesą ir kadravimą. Tikslų vaizdo tekstą rašykite kabutėse ir nurodykite jo vietą. Originali produkto užduotis gali rodyti raudoną turistinį puodelį ant šviesaus akmens paviršiaus, su didele antrašte virš jo ir švelnia ryto šviesa, atskleidžiančia ąselę. Apibrėžkite antraštės, produkto ir fono ryšį, užuot pateikę nesusijusius stiliaus žodžius.
Redagavimui įvardykite konkretų daiktą ir pakeitimą: perdažyti puodelį, pakeisti etiketę, perkelti figūrą arba pakeisti scenos stilių. Vienam pakeitimui nereikia ranka nubrėžto stačiakampio. Dokumentuota eiga prieš generavimą išplečia nurodymą ir gali automatiškai surasti įvardytą elementą bei pridėti stačiakampį. Grąžinta išplėsta užklausa užfiksuoja tą interpretaciją, o tai naudinga, kai nurodymas parenka ne tą daiktą arba įveda nepageidaujamą detalę.
Sujunkite ir paruoškite orientyrinius vaizdus
Konkretus gamintojo profilis priima nuo vieno iki dešimties orientyrų, pateiktų vaizdų URL arba koduotais vaizdo duomenimis. Kiekvienas turi būti bent 256×256 pikselių ir ne didesnis kaip 16 megapikselių. Orientyrą įvardykite pagal vietą arba matomą turinį, tada paaiškinkite jo vaidmenį: žmogus iš Image 1, striukė iš Image 2 ir kambarys iš Image 3. Vaizdinis orientyras yra vaizdinės informacijos šaltinis, o ne nurodymas kopijuoti visas jame esančias nesusijusias detales.
Kraštinių santykio nustatymo numatytoji reikšmė yra auto. Užklausos specifikacijoje tekste prašomas santykis turi pirmenybę; kitu atveju pirmasis orientyras nustato kadravimą, o kvadratinė išvestis naudojama kaip atsarginė, kai nei orientyras, nei prašyta forma jo nenustato. Kompozicijai numatytą scenos orientyrą dėkite pirmą arba santykį pasirinkite aiškiai. Pradinius vaizdus ir jų tvarką laikykite su rezultatu, kad vėlesnė pataisa naudotų tą patį vaizdinį pradžios tašką.
Dėliokite elementus ribojančiais stačiakampiais
Maketo užklausa derina aprašą su JSON elementų eilučių masyvu. Aprašas įvardija elementą tokiu žymekliu kaip <cup_1>; eilutėje yra id, bbox ir desc. Koordinatės yra sveikieji skaičiai nuo 0 iki 1000 tvarka [top, left, bottom, right], matuojami nuo viršutinio kairiojo kampo. Pavyzdžiui, [0, 0, 500, 500] aprašo viršutinį kairįjį ketvirtį nepriklausomai nuo vaizdo pikselių matmenų. Naudokite kraštinių santykį, kuriam maketas sukurtas, nes šis koordinačių tinklelis ištempiamas kartu su kadru.
Redagavimo eilutė vietoj to naudoja from, src_bbox ir tgt_bbox kartu su identifikatoriumi bei aprašymu. ref_image_0 reiškia pirmą pateiktą vaizdą. Sutampantys pradiniai ir tiksliniai stačiakampiai įtvirtina elementą; skirtingi jį perkelia arba keičia dydį. Nauja eilutė be šaltinio tikslinėje vietoje sugeneruoja aprašytą elementą, leisdama jį pridėti, pakeisti ar perdažyti. Šaltinio eilutė be taikinio pašalina elementą. Pridėjimus ir pašalinimus nurodykite rašytiniame nurodyme bei eilutėse, o vietoje turinčioms likti detalėms išlaikykite įtvirtinimo eilutes.
Užrašams skirkite atskirą stačiakampį ir desc pacituokite tikslų tekstą. Stačiakampiai nukreipia vietą bei mastelį; jie nėra apkirpimo kaukės, todėl elementas gali išsikišti už stačiakampio. Gamintojas praneša, kad jo pavyzdžiuose nauji daiktai maždaug 40×25 pikselių stačiakampiuose dažnai nepasirodydavo. Palikite pakankamai matomos vietos ir tikrinkite redaguotas ribas. Pikseliai už taikinio paprastai lieka stabilūs, bet šešėliai, atspindžiai ir šalia esantis apšvietimas vis tiek gali keistis.
Rėmimasis išorine informacija, išvesties klasės ir naudingi įrašai
Dokumentuotas profilis pagal numatytuosius nustatymus įjungia rėmimąsi išorine informacija, leisdamas interneto ir vaizdų paieškai informuoti generavimą. Jį galima išjungti užduočiai, kuri turi naudoti tik pateiktą aprašymą bei orientyrus. Tikrojo pasaulio objektui aiškiai įvardykite vietą, įvykį arba daiktą ir faktinį turinį atskirkite nuo meninės stilistikos. Paieškos informuotą vaizdą vis tiek reikia lyginti su autoritetinga medžiaga, kai etiketė, daiktas arba vaizduojamas įvykis turi būti tikslūs.
Penkios raiškos klasės yra 768sq, 1k, 1.5k, 2k ir 4k, numatytoji – 1k. Jos reiškia vienodo pikselių ploto pakopas, todėl tikslus plotis bei aukštis priklauso nuo pasirinkto santykio. Penkiolika fiksuotų santykių apima nuo 21:9 per kvadratinius ir vertikalius formatus iki 9:21. Šio modelio profilis dydį valdo santykiu ir raiška; jis nepateikia seed, width arba height laukų, naudojamų FLUX.2 užklausų profiliuose. Dokumentuotas jo versijos parinkiklis šiuo metu įvardija kintantį leidimą, o ne patvirtina atitiktį konkrečios datos tiekėjo svoriams.
Gamintojo eiga po asinchroninio apdorojimo grąžina vaizdą kartu su išplėsta užklausa. Pasirašyta vaizdo atsisiuntimo nuoroda galioja vieną valandą. Išsaugokite patį vaizdą, galutinę užklausą ir orientyrus, užuot pasikliovę laikina nuoroda. Peržiūrėtam failui prašytą tekstą, daiktų vietą, orientyrų tapatumą ir pakeistą sritį lyginkite numatytu rodymo dydžiu. Užbaigtas generavimas yra šių vaizdinių reikalavimų patikros pradžia.
Ailoot Ultra · Vaizdai POST /v1/images/generations black-forest-labs/flux-3-image
black-forest-labs/flux-3-image
black-forest-labs/flux-3-imagePradžia
FLUX 3 Image kuria ir redaguoja vaizdus iš rašytinės užduoties bei iki dešimties orientyrų. Jis prideda užklausa nustatomus ribojančius stačiakampius kompozicijai ir vietiniams pakeitimams, rėmimąsi interneto bei vaizdų informacija ir penkias raiškos klases.
- Leidžiamos įvestys
- Tekstas · Vaizdai
- Rezultatai
- Vaizdai
Prieinama Ailoot · įvestys ir metodai
Ailoot Ultra · Vaizdai POST /v1/images/generations
- Įvestis
text,image- Išvestis
image
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos black-forest-labs/flux-3-image | Numatyta— |
Laukasprompt | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias ilgis: 1 | Numatyta— |
Laukasresolution | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 768, 1K, 1.5K, 2K, 4K | Numatyta— |
Laukasaspect_ratio | Tipasstring | ReikalavimasNeprivaloma | Reikšmės ir ribos 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 | Numatyta— |
Laukasn | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 1 Didžiausia reikšmė: 1 | Numatyta— |
Laukasinput_references | Tipasarray | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausias elementų skaičius: 0 Didžiausias elementų skaičius: 10 | Numatyta— |
Laukasprovider | Tipasobject | ReikalavimasNeprivaloma | Reikšmės ir ribos | Numatyta— |
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrascontent_type | Specifikacijaapplication/json |
Parametrasrequired | Specifikacijamodel, prompt |
Parametrasmaterial_types | Specifikacijatext, image |
Gyvavimo ciklas: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Planai
Kaip apskaičiuojamas galutinis mokestis
Rodomi įkainiai leidžia įvertinti kainą prieš generavimą. Galutinė suma apskaičiuojama pagal užfiksuotą pradinio generavimo kainą. Išmatuota rezultato trukmė ir prognozuoti kiekiai nėra galutinis apmokestinamas kiekis.
Tarifų informacija neprideda užklausos parinkčių. Palaikomi parametrai nurodyti prie pasirinkto metodo.
- Spartusis režimas
- Nenurodyta Pasirinkus spartųjį režimą
- Flex režimas
- Nenurodyta Pasirinkus flex režimą
- Didžiausios samprotavimo pastangos
- Nenurodyta Kai didžiausioms samprotavimo pastangoms taikomas numatytasis koregavimas (default)
Numatomi įkainiai palyginimui
Kainos pagal konfigūraciją
Kiekvieną mokestį susiekite su nurodytomis sąlygomis. Kiekvienam alternatyvių konfigūracijų rinkiniui taikykite vieną įkainį.
| Konfigūracija | Įkainių lentelė | Numatomas kiekis | Mokestis |
|---|---|---|---|
| KonfigūracijaBaziniai žetonų įkainiai | Įkainių lentelėBazinis įkainis | Numatomas kiekis— | Mokestis Įvestis · Įvesties tokenai · Įvertis tik palyginimui — / 1K tokenų Išvestis · Išvesties tokenai · Įvertis tik palyginimui — / 1K tokenų Įvestis · Talpyklos skaitymas · Įvertis tik palyginimui — / 1K tokenų Įvestis · Rašymas į talpyklą · Įvertis tik palyginimui — / 1K tokenų Įvestis · Rašymas į talpyklą, 1 val · Įvertis tik palyginimui — / 1K tokenų |
| KonfigūracijaNumatoma generavimo kaina | Įkainių lentelė— | Numatomas kiekisvieno generavimo įvertis | Mokestis Išvestis · Numatoma generavimo kaina · Įvertis tik palyginimui $0.082 įvertis prieš generavimą Šis įvertis nėra papildomas mokestis ar fiksuotas užbaigto generavimo įkainis. |
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot Ultra · Vaizdai
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
Gauti ir išsaugoti rezultatus
Ailoot Ultra · Vaizdai
Atsisiųskite kiekvieną grąžintą vaizdą arba išsaugokite jo Base64 turinį
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Kito turinio skaitymas
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.
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną baigtą vaizdą; gaukite turinį iš kiekvieno grąžinto URL arba dekoduokite jo Base64 turinį.
Išsaugokite visą atsakymą ir antraštes, visus faktiškai gautus rezultatus, pradinius grąžintus identifikatorius ir visus naudojimo apskaitos laukus. Atkurkite prieigą prie pradinės operacijos pakartotinai neteikdami kūrimo užklausos.
Jei reikia patikrinti pradinį atsakymą
Išsaugokite grąžintą X-Client-Request-ID duomenims sutikrinti. Tikrinkite tik faktiškai grąžintas task_id/asset_id reikšmes arba jums priklausančią medijos biblioteką; niekada nekurkite užduoties URL iš operacijos ID ir niekada pakartotinai neteikite kūrimo užklausos.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukascreated | Tipas |
Laukasdata[].url | Tipas |
Laukasdata[].b64_json | Tipas |
Laukasusage | Tipas |
Pseudonimai
Modelių pseudonimai
Ailoot Ultra black-forest-labs/flux-3-image
Metodų kelių pseudonimai
/v1/images
Susiję ID iškvietimui
FAQ · Black Forest Labs: FLUX.3 Image
- Kokios įvestys ir rezultatai prieinami?
POST /v1/images/generations·black-forest-labs/flux-3-image:text,image→image- Kokius laukus naudoja užklausa?
POST /v1/images/generations·black-forest-labs/flux-3-image:model,prompt,resolution,aspect_ratio,n,input_references,provider- Kokie apribojimai taikomi?
POST /v1/images/generations·black-forest-labs/flux-3-image:n.minimum:1;n.maximum:1