modeli

Recraft: Recraft V4 Pro

Markdown · JSON

Recraft: Recraft V4 Pro

Recraft V4 Pro ustvarja rastrske slike 2K za podrobne kompozicije, fotorealizem, ilustracijo in ustvarjalno delo za tisk. Je izdaja V4 z višjo ločljivostjo, z besedilnimi opisi, izbirnimi slogovnimi vhodi in ločenim postopkom pretvorbe slike v sliko.

O modelu

Ta opis zajema zmožnosti modela. Vhodi, izhodi in možnosti, ki so na voljo v Ailoot, so spodaj navedeni za izbrano metodo.

Recraft V4 Pro je rastrski model z višjo ločljivostjo v družini Recraft V4. V4 se osredotoča na vizualno presojo, uravnoteženo kompozicijo, skladne barve in skrbno razumevanje ustvarjalne usmeritve. Proizvajalec izdajo Pro namenja drobnejšim podrobnostim, bolj realističnim kompleksnim prizorom in zahtevnejšim produkcijskim podobam. Uporabite jo za podrobno ilustracijo, uredniško sliko, koncept plakata ali drugo gradivo, ki mu koristi večji rastrski rezultat. Ostaja ločena od poznejšega modela V4.1 in izhoda SVG modela V4 Pro Vector.

Natančna proizvajalčeva oznaka je recraftv4_pro. Dokumentirani izhod je rastrski 2K v formatu WebP brez izgub ali PNG: 2048 × 2048 slikovnih pik za kvadrat, 2688 × 1536 za 16:9 in 1664 × 2560 za 2:3. Druga podprta razmerja imajo svoje dimenzije. Izberite razmerje stranic za predvideno postavitev ali natančno dovoljeno velikost; poljubna velikost v slikovnih pikah ni del dokumentiranih pravil ustvarjanja. Standardni V4 ima manjši rastrski izhod 1K, vektorski modeli pa nimajo fiksne ločljivosti v slikovnih pikah.

V4 lahko razume kratek poziv za raziskovanje ali strukturiran poziv za nadzorovan rezultat. Za konkretno likovno usmeritev proizvajalčev vodnik vodi od motiva in okolja do kadriranja, lastnosti, prostorskih razmerij, osvetlitve, globine in vzdušja. Za uredniško sliko izdelka zahtevajte dramatično navpično fotografijo kiparsko oblikovanega stola, površine iz brušene kovine, stransko osvetlitev, mirno temno ozadje in prostor nad predmetom za naslov. Poimenovanje teh razmerij jasneje določi predvideno kompozicijo kot splošna zahteva po vrhunski sliki.

Ustvarjalni razpon družine vključuje pripovedno ilustracijo, fotorealistične prizore in prostorske podobe z opredeljenimi materiali in osvetlitvijo. Rezultat z videzom 3D je še vedno slika, ne prizor 3D, ki bi ga bilo mogoče urejati. Pri grafičnem plakatu določite vizualne plasti in njihovo medsebojno delovanje: ozadje, ilustracijo ali fotografijo, hierarhijo naslova in spremljevalno besedilo. V4 je namenjen berljivim kratkim in srednje dolgim frazam, vendar je treba končni zapis in hierarhijo preveriti, ne sklepati o njiju iz imena modela.

Trenutna dokumentacija za ustvarjanje dovoljuje pozive do 10.000 znakov, od enega do šest izhodov, naključno seme ter nastavitve želenih barv in barve ozadja. Izbirni slogi po meri ali združljive referenčne slike lahko videz usmerjajo s prilagodljivim ali natančnim ujemanjem. Model ne sprejema starejših nastavitev V3: negative_prompt, predpripravljenih slogov, text_layout, artistic_level in no_text. Predvideno končno sliko opišite v pozitivnem pozivu ter jasno ohranite zahteve za motiv, postavitev in barve. Za ustvarjanje po referenčnem slogu uporabite od ene do deset slik PNG, JPG ali WebP, skupaj največ 64 MB in vsako manjšo od 20 MB. Najkrajša stranica vsake reference mora meriti vsaj 256 slikovnih pik, najdaljša največ 4.096 slikovnih pik, ločljivost pa največ 16 milijonov slikovnih pik. Uporabite bodisi te reference bodisi združljiv shranjeni slog, ne obojega.

Recraft za V4 dokumentira ločen postopek pretvorbe slike v sliko. Združuje obstoječo sliko in poziv z močjo od 0 do 1 za nadzor stopnje spremembe, pri tem pa ne sprejema nastavitev slogov po meri za V4. Izvirnik pripravite v proizvajalčevih omejitvah za slikovni vhod in navedite lastnosti, ki naj se prenesejo v novi rezultat. Pri večjem končnem gradivu preverite drobne podrobnosti, izrez in napise v predvideni velikosti. Dodatne rastrske podrobnosti izdaje Pro podpirajo ta pregled, slika pa ostaja ustvarjena interpretacija podanega ustvarjalnega opisa. Za pretvorbo slike v sliko pošljite PNG, JPG, WebP ali SVG, manjši od 20 MB, z največ 16 milijoni slikovnih pik in obema stranicama med 256 in 4.096 slikovnimi pikami.

Ailoot Ultra · Slike POST /v1/images/generations recraft/recraft-v4-pro

recraft/recraft-v4-pro

Recraft /recraft/recraft-v4-pro

Začetek

Recraft V4 Pro ustvarja rastrske slike 2K za podrobne kompozicije, fotorealizem, ilustracijo in ustvarjalno delo za tisk. Je izdaja V4 z višjo ločljivostjo, z besedilnimi opisi, izbirnimi slogovnimi vhodi in ločenim postopkom pretvorbe slike v sliko.

Dovoljeni vhodi
Besedilo · Slike
Rezultati
Slike

Na voljo v Ailoot · vhodi in metode

Ailoot Ultra · Slike POST /v1/images/generations
Vhod
text, image
Izhod
image
Izhodni format
Slikovna datoteka
PoljeVrstaZahtevaVrednosti in omejitvePrivzeto
PoljemodelVrstastringZahtevaObveznoVrednosti in omejitve
recraft/recraft-v4-pro
Privzeto—
PoljepromptVrstastringZahtevaObveznoVrednosti in omejitve
Najmanjša dolžina: 1
Privzeto—
PoljenVrstaintegerZahtevaIzbirnoVrednosti in omejitve
Najmanj: 1
Največ: 6
Privzeto—
Poljeaspect_ratioVrstastringZahtevaIzbirnoVrednosti in omejitve
1:1, 4:3, 3:4, 16:9, 9:16, auto
Privzeto—
Poljeinput_referencesVrstaarrayZahtevaIzbirnoVrednosti in omejitve
Najmanjše število elementov: 0
Največ elementov: 1
Privzeto—
Kombinacije vhodnih gradiv

Iz besedila v sliko · Obvezno: prompt

Parametri in življenjski cikel metode
ParameterSpecifikacija
Parametercontent_typeSpecifikacijaapplication/json
ParameterrequiredSpecifikacijamodel, prompt
Parametermaterial_typesSpecifikacijatext, image
Parameteroptional_controlsSpecifikacijaaspect_ratio, n, input_references
Parameterexact_supported_parametersSpecifikacija{"aspect_ratio":{"type":"enum","values":["1:1","4:3","3:4","16:9","9:16","auto"]},"n":{"type":"range","min":1,"max":6},"input_references":{"type":"range","min":0,"max":1}}
Parameterreference_material_ruleSpecifikacijaSamo dejanske slikovne reference stranke; zanje veljajo pogoji ponudnikove končne točke.

Druga imena metode: /v1/images

Življenjski cikel: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · Dejansko vrnjeni task_id ali zapis v medijski knjižnici

GET /v1/media/assets/{asset_id}/content

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Uporabite natančen model in dokumentirana vhodna polja.

Ohranite celoten odgovor, vsak dejanski izhod in prvotne vrnjene ID-je.

Cenik

Kako se izračuna končni strošek

Prikazane cene so namenjene oceni stroškov pred generiranjem. Končni znesek se izračuna na podlagi stroška, zabeleženega za izvirno generiranje. Izmerjeno trajanje izhoda in napovedane količine niso končna obračunska količina.

Tarifni podatki ne dodajajo možnosti zahteve. Podprti parametri so navedeni pri izbrani metodi.

Hitri način
Ni navedeno Ko je izbran hitri način
Način flex
Ni navedeno Ko je izbran način flex
Najvišja raven razmišljanja
Ni navedeno Ko najvišja raven razmišljanja uporablja privzeto prilagoditev (default)

Ocenjene cene za primerjavo

Cene po nastavitvah

Vsak strošek povežite s prikazanimi pogoji. Za vsak nabor alternativnih nastavitev uporabite eno ceno.

NastavitevCenovna lestvicaPredvidena količinaObračunska enotaStrošek
NastavitevOsnovne cene žetonovCenovna lestvicaOsnovna cenaPredvidena količina—Obračunska enota—Strošek
Vhod · Vhodni žetoni · Ocena samo za primerjavo — / 1K žetonov
Izhod · Izhodni žetoni · Ocena samo za primerjavo — / 1K žetonov
Vhod · Branje predpomnilnika · Ocena samo za primerjavo — / 1K žetonov
Vhod · Zapis v predpomnilnik · Ocena samo za primerjavo — / 1K žetonov
Vhod · Zapis v predpomnilnik, 1 ura · Ocena samo za primerjavo — / 1K žetonov
NastavitevUltraCenovna lestvica—Predvidena količina—Obračunska enotana izhodno slikoStrošek
Izhod · izhod slike · Ocena samo za primerjavo $0.5 na izhodno sliko
NastavitevOcenjeni strošek ustvarjanjaCenovna lestvica—Predvidena količinaocena za eno generiranjeObračunska enota—Strošek
Izhod · Ocenjeni stroški ustvarjanja · Ocena samo za primerjavo $0.5 ocena pred ustvarjanjem

Ta ocena ni dodatno plačilo ali fiksna cena za dokončano generiranje.

Ailoot pred zahtevo rezervira ocenjeni znesek. Po rezultatu obračuna končni strošek na podlagi izmerjene porabe. Obračun pretakanja uporablja končni zapis porabe. Kako delujeta rezervacija in obračun →

Podrobnosti referenčne tarife

Referenčne lestvice modela ne spreminjajo izbire metode, ocen cen ali stroškov. Veljavni stroški uporabljajo cene izbrane metode Ailoot.

Konfiguracije cen slik

Cene po nastavitvah

NastavitevObračunski pogojiStrošek
NastavitevIzhodna slikaObračunski pogojiRazličica cen ni deklarirana.Strošek
Izhod · Izhodna slika $0.5 na sliko

Enakovredne navedbe opisujejo isti zaračunani znesek; ne dodajajo druge pristojbine.

Primeri zahtev

Ailoot Ultra · Slike

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={'model': 'recraft/recraft-v4-pro', '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
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-pro', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
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-pro", "prompt": "a red panda astronaut floating in space, studio lighting"};
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");

Prejmi in shrani rezultate

Ailoot Ultra · Slike

Prenesite vsako vrnjeno sliko ali shranite njeno vsebino Base64

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Ohrani vse dokončane rezultate

Shranite vsako dokončano sliko; pridobite vsebino z vsake vrnjene URL ali dekodirajte njeno vsebino Base64.

Ohranite vsak element data in celotno porabo; pridobite lastništvo in shranite vse dejansko vrnjene slike. Brez izmišljenih URL-jev ali ID-jev.

Če je treba preveriti izvirni odgovor

Če je treba preveriti rezultat generiranja ali urejanja slike, shranite izvirni operation_id/X-Client-Request-ID in vrnjene podatke o rezultatu. Obstoječe rezultate, ki vam pripadajo, pridobite prek medijske knjižnice z dejanskimi vrednostmi task_id ali asset_id. Zahteve za generiranje/urejanje ne pošiljajte znova in iz operation_id ne sestavljajte URL za periodično preverjanje stanja.

Polja odgovora
PoljeVrsta
PoljecreatedVrstainteger
Poljedata[].urlVrstastring
Poljedata[].b64_jsonVrstabase64 string
PoljeusageVrstaobject

Druga imena

Druga imena modelov

Ailoot Ultra recraft/recraft-v4-pro

Druga imena poti metod

/v1/images

Povezani ID-ji za klic

recraft/recraft-v4-pro

FAQ · Recraft: Recraft V4 Pro
Kateri vhodi in rezultati so na voljo?

POST /v1/images/generations · recraft/recraft-v4-pro: text, image → image

Katera polja uporablja zahteva?

POST /v1/images/generations · recraft/recraft-v4-pro: model, prompt, n, aspect_ratio, input_references

Katere omejitve veljajo?

POST /v1/images/generations · recraft/recraft-v4-pro: n.minimum: 1; n.maximum: 6

Več podrobnosti

Ailoot povežite s Claude Code, OpenCode, Hermes ali svojo aplikacijo.

Podjetje in njegov portfelj projektov

Podjetje in njegov portfelj projektov: milijoni strank; mesečna prodaja v milijardah.

Žetone kupujte s popustom.

Naročniški popust za redno delo. Promocijske kode prinesejo do 50% popusta na nakup žetonov.

Naročnina
Za redne zahteve izberite paket s popustom.
Promocijska koda do 50%
Kodo vnesite ob nakupu. Cena se preračuna po veljavni akciji.
Poraba v zgodovini
Za vsako zahtevo se shranijo model, žetoni in znesek.

Izberite naročnino · Oglejte si cene modelov

API povežite z izdelkom, ki ga prodajate.

SaaS, aplikacije in boti po ponudbi in licenčni pogodbi Ailoot. Za nadaljnjo prodajo zaprosite za preprodajno licenco.

Komercialna aplikacija
Ustvarjanje besedila, slik, videa in zvoka vključite v plačljive funkcije svoje storitve.
Licenca za preprodajalca
Pošljite opis projekta in shemo dostopa. Zahtevajte pisne pogoje uporabe in nadaljnje prodaje.
Dokumenti na strani
Ponudba, licenčna pogodba in politika obdelave podatkov so dostopne pred povezavo.

Zaprosite za preprodajno licenco · Ponudba in licenčna pogodba