models

Recraft: Recraft V4.1 Flash

Markdown · JSON

Recraft: Recraft V4.1 Flash

Recraft V4.1 Flash generuoja 1K rastrinius vaizdus iš teksto ir leidžia greitai išbandyti vizualines idėjas. Jis palaiko fotografiją, portretus, sudėtingas scenas ir logotipų koncepcijas, pateikia PNG arba nenuostolingo WebP rezultatus ir leidžia aiškiai nurodyti spalvų pageidavimus.

Apie modelį

Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.

Recraft V4.1 Flash yra Recraft modelis vaizdams iš teksto generuoti, skirtas greitoms iteracijoms ir didelės apimties vizualiniam darbui. Gamintojas tarp stipriųjų taikymo sričių įvardija fotografiją, portretus, atmosferą, sudėtingas scenas, mišrias technikas ir logotipų koncepcijas. Rašytinis aprašas virsta rastriniu vaizdu, kurį galima palyginti su kitomis kūrybinėmis kryptimis prieš kuriant galutinę medžiagą. Flash yra konkretus V4.1 šeimos narys, turintis savo išvesties dydį ir palaikomus valdiklius.

Pradinė išvestis priklauso Recraft 1K rastrinių vaizdų klasei. Drobę rinkitės pagal numatomą vietą: horizontali iliustracija puslapio antraštei, vertikalus portretas arba kvadratinis vaizdas kompaktiškai kortelei. Išvesties formatai – nenuostolingas WebP ir PNG.

Aprašą pradėkite nuo pagrindinio objekto ir vizualinės paskirties, tada aprašykite kadravimą, aplinką, apšvietimą ir techniką. Produkto koncepcijai naudinga instrukcija: „Kompaktiškas kreminės spalvos radijo imtuvas ant riešutmedžio stalo, vaizdas iš priekio trijų ketvirčių kampu, minkšta lango šviesa, rami redakcinė fotografija, daug tuščios vietos kairėje.“ Iliustracijai nurodykite formų kalbą, paletę ir elementų santykius. Aiškiai išvardykite idėją apibrėžiančias detales, užuot pridėję nesusijusių būdvardžių. Dokumentuotas Flash užklausos limitas yra iki 10 000 simbolių, todėl prireikus galima išsamiai aprašyti sceną.

Gamintojo valdikliai apima pageidaujamas spalvas ir norimą fono spalvą. Atkuriamiems rezultatams galima pateikti sėklą, o generavimo sąsajoje dokumentuotas nuo vieno iki šešių vaizdų skaičius vienoje užklausoje. Šie valdikliai padeda naudingai lyginti: nekeiskite objekto ir kompozicijos, pakeiskite vieną vizualinę kryptį ir įvertinkite rezultatus numatytame makete. Spalvų pageidavimai apibūdina norimą rezultatą; prieš jungdami jį su esama dizaino sistema palyginkite svarbias prekės ženklo spalvas su galutine medžiaga.

Flash kuria rastrinę grafiką. Logotipo koncepcija gali padėti pasirinkti siluetą, nuotaiką ar išdėstymą, o redaguojami kontūrai priklauso atskirai įvardytiems Vector modeliams. Flash taip pat neturi Pro versijos. Visa V4.1 linija siūlo šiuos atskirus pasirinkimus, kai svarbiausia yra vektorinis redagavimas ar didesnės raiškos detalės. Gamintojas aprašo vėlesnį tobulinimo etapą, kuris pasirinktą eskizą paverčia detalesniu vaizdu; tai atskira operacija, o ne kitoks pradinis Flash išvesties dydis.

Ši versija nepalaiko vaizdo keitimo pagal vaizdą įvesties, individualių stilių, stilių identifikatorių, stiliaus derinimo ar stiliaus etaloninių vaizdų. Jos dokumentuota sąsaja taip pat nepalaiko neigiamų užklausų ir aiškių teksto išdėstymo valdiklių. Norimą išvaizdą ir kompoziciją įrašykite į teigiamą aprašą. Jei koncepcijoje yra raidžių, cituokite norimą tekstą ir tikrinkite atvaizduotas raides; kai būtina tiksli tipografija ir vieta, naudokite atskirą maketavimo etapą.

Praktiškas Flash rezultatas yra pasirinkta vizualinė kryptis su aiškiu aprašu, tinkamu kraštinių santykiu ir tinkamu naudoti rastriniu failu. Palyginkite objektą, kadravimą, foną ir svarbias detales tokiu dydžiu, kokiu vaizdas bus rodomas. Sėkmingą užklausą laikykite kartu su pasirinktu failu, kad kitas kūrybinis etapas tęstų pasirinktą kryptį. Greitos iteracijos padeda tyrinėti dizainą; pradinė vektorinė išvestis, derinimas pagal stiliaus etalonus ir kitos V4.1 versijos raiška lieka atskirais modelio pasirinkimais.

Ailoot Ultra · Vaizdai POST /v1/images/generations recraft/recraft-v4.1-flash

recraft/recraft-v4.1-flash

Recraft /recraft/recraft-v4.1-flash

Pradžia

Recraft V4.1 Flash generuoja 1K rastrinius vaizdus iš teksto ir leidžia greitai išbandyti vizualines idėjas. Jis palaiko fotografiją, portretus, sudėtingas scenas ir logotipų koncepcijas, pateikia PNG arba nenuostolingo WebP rezultatus ir leidžia aiškiai nurodyti spalvų pageidavimus.

Leidžiamos įvestys
Tekstas
Rezultatai
Vaizdai

Prieinama Ailoot · įvestys ir metodai

Ailoot Ultra · Vaizdai POST /v1/images/generations
Įvestis
text
Išvestis
image
Išvesties formatas
Vaizdo failas
Išvesčių skaičius
1 išvestis
LaukasTipasReikalavimasReikšmės ir ribosNumatyta
LaukasmodelTipasstringReikalavimasPrivalomaReikšmės ir ribos
recraft/recraft-v4.1-flash
Numatyta—
LaukaspromptTipasstringReikalavimasPrivalomaReikšmės ir ribos
Mažiausias ilgis: 1
Sąlygos: Netuščia UTF8 tekstinė užklausa. Bendra viso gamintojo simbolių riba nėra išgalvojama.
Numatyta—
LaukasnTipasintegerReikalavimasNeprivalomaReikšmės ir ribos
1
Numatyta1
Laukasresponse_formatTipasstringReikalavimasNeprivalomaReikšmės ir ribos
url, b64_json
Numatyta—
LaukasstreamTipasbooleanReikalavimasNeprivalomaReikšmės ir ribos
false
Numatytafalse
Įvesties medžiagos deriniai

Iš teksto į vaizdą · Privaloma: prompt

Metodo parametrai ir gyvavimo ciklas
ParametrasSpecifikacija
Parametrascontent_typeSpecifikacijaapplication/json
ParametrasrequiredSpecifikacijamodel, prompt
Parametrasmaterial_typesSpecifikacijatext
ParametrasoptionalSpecifikacijan, response_format, stream
ParametrasnSpecifikacija1
ParametrasstreamSpecifikacijafalse
Parametrasresponse_formatSpecifikacijaurl, b64_json
Parametrasreference_imagesSpecifikacijafalse
ParametraseditSpecifikacijafalse
Parametrasoutput_format_optionalSpecifikacija
Parametrasresolution_controlSpecifikacijanull
Parametrasaspect_ratio_controlSpecifikacijanull
Parametrasother_fieldsSpecifikacijaatmetama, išskyrus tikslų užfiksuotą vidinį teikėjo maršruto parinkimą

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}

Sugeneruokite vieną paveikslėlį pagal tekstinę užklausą.

Išsaugokite kiekvieną data elementą; url/b64_json yra rezultato kodavimo formos.

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 kiekisApskaitos vienetasMokestis
KonfigūracijaBaziniai žetonų įkainiaiĮkainių lentelėBazinis įkainisNumatomas kiekis—Apskaitos vienetas—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ūracijaUltraĮkainių lentelė—Numatomas kiekis—Apskaitos vienetasuž išvesties vaizdąMokestis
Išvestis · vaizdo išvestis · Įvertis tik palyginimui $0.014 už išvesties vaizdą
KonfigūracijaNumatoma generavimo kainaĮkainių lentelė—Numatomas kiekisvieno generavimo įvertisApskaitos vienetas—Mokestis
Išvestis · Numatoma generavimo kaina · Įvertis tik palyginimui $0.014 į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 →

Informacinio tarifo duomenys

Modelio informacinės lentelės nekeičia metodo pasirinkimo, kainos įverčių ar mokesčių. Galiojantys mokesčiai nustatomi pagal pasirinkto Ailoot metodo įkainius.

Paveikslėlių kainodaros konfigūracijos

Kainos pagal konfigūraciją

KonfigūracijaApmokestinimo sąlygosMokestis
KonfigūracijaIšvesties paveikslėlisApmokestinimo sąlygosKainodaros variantas nedeklaruotas.Mokestis
Išvestis · Išvesties vaizdas $0.014 už vaizdą

Lygiaverčiai sąrašų įrašai apibūdina tą patį mokestį; jie neprideda antro mokesčio.

Užklausų pavyzdžiai

Ailoot Ultra · Vaizdai

curlPython SDKNode.js SDK
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=json.loads('{"model": "recraft/recraft-v4.1-flash", "prompt": "A lighthouse on a cliff, watercolor", "n": 1, "response_format": "b64_json"}')

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
from openai import OpenAI
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")

request={'model': 'recraft/recraft-v4.1-flash', 'prompt': 'A lighthouse on a cliff, watercolor', 'n': 1, 'response_format': 'b64_json'}
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.images.generate(**request)
Path("sdk-result.txt").write_text(str(result),encoding="utf-8")
save_images([{"b64_json":getattr(item,"b64_json",None),"url":getattr(item,"url",None)} for item in result.data])
import OpenAI from "openai";
import { readFileSync, writeFileSync } from "node:fs";
const key=process.env.AILOOT_API_KEY;
if(!key) throw new Error("Set your actual Ailoot API key");
const client=new OpenAI({baseURL:"https://api.ailoot.ai/v1",apiKey:key,maxRetries:0});
const request={"model": "recraft/recraft-v4.1-flash", "prompt": "A lighthouse on a cliff, watercolor", "n": 1, "response_format": "b64_json"};
const result=await client.images.generate(request);
writeFileSync("sdk-result.json",JSON.stringify(result,null,2));
if(!result.data?.length) throw new Error("No completed images");
for(let index=0;index<result.data.length;index++) {
  const item=result.data[index];let encoded=item.b64_json,uri=item.url||"",raw;
  if(!encoded && uri.startsWith("data:image/")) {
    const comma=uri.indexOf(",");if(comma<0 || !uri.slice(0,comma).includes(";base64")) throw new Error("Unsupported image data URI");
    encoded=uri.slice(comma+1);
  }
  if(encoded) {
    if(encoded.length%4!==0 || !/^[A-Za-z0-9+/]*={0,2}$/.test(encoded)) throw new Error("Invalid Base64");
    raw=Buffer.from(encoded,"base64");
  } else if(uri) {
    const u=new URL(uri,"https://api.ailoot.ai");
    if(u.protocol!=="https:" || u.username || u.password) throw new Error("Invalid returned URL");
    const owned=u.origin==="https://api.ailoot.ai" && u.pathname.startsWith("/v1/media/assets/") && u.pathname.endsWith("/content");
    const response=await fetch(u,{headers:owned?{Authorization:"Bearer "+key}:{},redirect:"manual"});
    if(!response.ok) throw new Error("Image content download failed: "+response.status);
    raw=Buffer.from(await response.arrayBuffer());
  } else throw new Error("Image has neither bytes nor URL");
  if(!raw.length) throw new Error("Empty image result");
  const ext=raw.subarray(0,4).equals(Buffer.from([137,80,78,71]))?"png":raw[0]===255&&raw[1]===216?"jpg":raw.toString("ascii",0,4)==="RIFF"&&raw.toString("ascii",8,12)==="WEBP"?"webp":raw.toString("utf8").trimStart().startsWith("<svg")||raw.toString("utf8").trimStart().startsWith("<?xml")?"svg":"bin";
  writeFileSync(`image-${index}.${ext}`,raw);
}
console.log("Every returned image saved; sdk-result.json retains complete metadata");

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}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Išsaugoti visus baigtus rezultatus

Išsaugokite kiekvieną baigtą vaizdą; gaukite turinį iš kiekvieno grąžinto URL arba dekoduokite jo Base64 turinį.

Išsaugokite kiekvieną duomenų elementą. Iškoduokite kiekvieną b64_json arba atsisiųskite turinį pagal kiekvieną grąžintą pasirašytą URL. Failo plėtinį pasirinkite pagal faktinį MIME tipą ir baitus.

Jei reikia patikrinti pradinį atsakymą

Jei vaizdo generavimo ar redagavimo rezultatą reikia patikrinti, išsaugokite pradinį operation_id/X-Client-Request-ID ir grąžintą informaciją apie rezultatą. Atkurkite prieigą prie esamų jums priklausančių rezultatų per medijos biblioteką, naudodami faktines task_id arba asset_id reikšmes. Pakartotinai neteikite generavimo ar redagavimo užklausos ir nekurkite būsenos tikrinimo URL iš operation_id.

Atsakymo laukai
LaukasTipas
LaukascreatedTipasinteger
Laukasdata[].urlTipasstring
Laukasdata[].b64_jsonTipasbase64 string
LaukasusageTipasobject
Klaidos ir tolesni veiksmai
AtsakymasSąlygaKitas žingsnis
Atsakymas400 · invalid_request_errorSąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmėKitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus.
Atsakymasserver_errorSąlygaGrąžintame atsakyme nurodoma, kad operaciją arba rezultatą reikia patikrintiKitas žingsnisIšsaugokite pradinį grąžintą operacijos ar užduoties ID, užklausos antraštes ir atsakymą; toliau tikrinkite tos pačios pradinės operacijos duomenis palaikomais būdais. Kūrimo užklausos pakartotinai neteikite.

Pseudonimai

Modelių pseudonimai

Ailoot Ultra recraft/recraft-v4.1-flash

Metodų kelių pseudonimai

Naudokite aukščiau nurodytus metodų kelius.

Susiję ID iškvietimui

recraft/recraft-v4.1-flash

FAQ · Recraft: Recraft V4.1 Flash
Kokios įvestys ir rezultatai prieinami?

POST /v1/images/generations · recraft/recraft-v4.1-flash: text → image

Kokius laukus naudoja užklausa?

POST /v1/images/generations · recraft/recraft-v4.1-flash: model, prompt, n, response_format, stream

Išsamiau

Prijunkite Ailoot prie Claude Code, OpenCode, Hermes arba savo programos.

Įmonė ir jos projektų portfelis

Įmonė ir jos projektų portfelis: milijonai klientų; mėnesio pardavimai siekia milijardus.

Pirkite žetonus su nuolaida.

Prenumeratos nuolaida reguliariam darbui. Kodai — iki 50% žetonų pirkimui.

Prenumerata
Pasirinkite planą su nuolaida reguliarioms užklausoms.
Nuolaidos kodas iki 50%
Įveskite kodą perkant. Kaina perskaičiuojama pagal galiojančios akcijos sąlygas.
Išlaidos istorijoje
Kiekvienai užklausai išsaugomi modelis, žetonai ir suma.

Pasirinkti prenumeratą · Peržiūrėti modelių kainas

Prijunkite API prie produkto, kurį parduodate.

SaaS, programos ir botai pagal Ailoot ofertą bei licencijos sutartį. Perpardavimui paprašykite perpardavėjo licencijos.

Komercinė programa
Teksto, vaizdų, video ir garso kūrimą integruokite į mokamas paslaugos funkcijas.
Perpardavėjo licencija
Atsiųskite projekto aprašymą ir prieigos schemą. Paprašykite rašytinių naudojimo ir perpardavimo sąlygų.
Dokumentai svetainėje
Oferta, licencijos sutartis ir duomenų tvarkymo politika prieinamos prieš prisijungiant.

Paprašyti perpardavėjo licencijos · Oferta ir licencijos sutartis