modeli

Recraft: Recraft V3

Markdown · JSON

Recraft: Recraft V3

Recraft V3 ustvarja fotografije, ilustracije in grafične postavitve s kompozicijo, ki upošteva besedilo, ter slogovnimi nastavitvami. Njegove ločene rastrske in SVG različice so primerne za plakate, slikovne zbirke blagovnih znamk, ikone in zasnove, pri katerih morata besedilo in vizualna struktura delovati skupaj.

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 V3 je model za ustvarjanje slik, zasnovan za grafično oblikovanje ter fotografske in ilustrirane prizore. Pisni opis določa motiv, okolje in kompozicijo; rezultat je slika. V3 nadgrajuje Recraftovo upodabljanje besedila in fotorealizem ter brez ponovnega učenja ohranja slogovno skladnost na podlagi vzorčnih slik.

Besedilo kot del kompozicije

V3 dela z besedilom znotraj slike, tudi z daljšimi besedili in srednje velikimi napisi. Recraft opisuje fazo postavitve, ki pred ustvarjanjem slike določi besede in njihove položaje. Postavitev se lahko samodejno izdela iz opisa ali ročno uredi v Recraftovem oblikovalskem okolju. To pomaga povezati naslov, ilustracijo in spremljevalno besedilo v eni kompoziciji. Proizvajalec dokumentira tudi izrecne koordinate postavitve besedila, izražene glede na sliko in ne kot fiksna mreža slikovnih pik. Vsak besedilni element vsebuje eno besedo in štiri kotne točke v normaliziranih koordinatah: (0, 0) pomeni zgornji levi kot, (1, 1) pa spodnji desni. Koordinate lahko segajo zunaj tega območja; v tem primeru se oblika obreže. Besede v izrecni postavitvi besedila morajo upoštevati dokumentirane omejitve znakov.

Za plakat ali naslovnico podajte natančno besedilo in opišite njegovo hierarhijo: katera vrstica je vodilna, kje je postavljena in kako jo slika podpira. Pri izbiri rezultata preverite upodobljeni zapis in razmike.

Slog, paleta in likovna usmeritev

V3 vključuje predpripravljene fotografske, ilustracijske in emblemne sloge ter ločeno knjižnico vektorskih slogov. Recraft V3 Raw je privzeti slog rastrskega modela, Vector art pa privzeti slog vektorske različice. Photorealism stremi k fotografskemu videzu, Illustration pa dopušča stilizirane teksture, senčenje in kompleksnejše barvne prehode. Vektorski slogi dajejo prednost oblikam, omejenim paletam in enotnim polnilom ali preprostim prelivom.

Sloge po meri je mogoče izdelati iz referenčnih slik, obstoječih združljivih slogov ali njihove kombinacije. Omogočajo ponovno uporabo vizualne usmeritve v seriji slik. Dokumentirane nastavitve mešanja omogočajo ločene uteži za reference in izvorne sloge; število uteži se ujema s številom virov. Navedeni politiki mešanja sta PaletteMatch in MaxWeight. Proizvajalec dovoljuje do 10 referenčnih slik za slog in pri V3 uporablja običajni način slogovnega ujemanja. Shranjeni slog po meri in neposredne slogovne reference so alternativni vhodi, slog po meri pa mora ustrezati modelu, uporabljenemu za ustvarjanje.

Želene barve in barva ozadja usmerjajo paleto. Dokumentiranih je do 10 barv RGB, pri čemer je vsaka komponenta med 0 in 255. Izbirne relativne uteži segajo od 0 do 1; podane morajo biti za vsako barvo ali za nobeno, njihova vsota pa ne sme presegati 1. Umetniška raven sega od 0 za statično, čisto obdelavo do 5 za bolj dinamične, nekonvencionalne kompozicije. Negativni poziv opiše neželene elemente; ločena nastavitev brez besedila onemogoči vgrajene postavitve besedila. Za ponovljivost je na voljo naključno seme. Te nastavitve ločeno vplivajo na prizor, njegov slog in vizualno postavitev.

Rastrske slike in ločena različica SVG

Recraft dokumentira dve različici V3. Rastrski model ustvarja WebP brez izgub ali PNG in je primeren za fotografske podrobnosti, senčenje in teksturirano ilustracijo. Recraft V3 Vector ustvarja SVG: poti in oblike, ki jih je mogoče skalirati brez fiksne ločljivosti v slikovnih pikah. Primeren je za piktograme, zamisli za logotipe, značke in podrobne vektorske ilustracije. Pretvorba rastra v vektor je ločen postopek od neposrednega ustvarjanja vektorske grafike.

Obe različici imata lastno identiteto. Slika z vektorskim videzom in dejanski izhod SVG sta različni možnosti. Predvideni izhod izberite pri pripravi oblikovalskega postopka, namesto da skupno ime V3 obravnavate kot dokaz, da vsak postopek vrača isto vrsto datoteke.

Urejanje in dodelava obstoječih podob

Recraftova dokumentacija V3 navaja pretvorbo slike v sliko, zapolnjevanje izbranih delov slike, razširjanje slike ter zamenjavo ali ustvarjanje ozadja. Pretvorba slike v sliko združuje obstoječo sliko z novim opisom. Zapolnjevanje znova ustvari izbrano območje z uporabo slike in ustrezne maske; razširjanje dodaja vsebino zunaj prvotnega kadra. Postopki za ozadje obravnavajo okolico motiva.

Pripadajoči nabor orodij vključuje tudi brisanje, odstranjevanje ozadja, vektorizacijo in dva načina povečevanja ločljivosti. Ustvarjalno povečevanje lahko uvede nove podrobnosti; ostro povečevanje je namenjeno ostrejši povečani različici obstoječe vsebine. To so ločeni postopki z lastnimi vhodi in rezultati, ne dodatni pomeni imena rastrskega ali vektorskega modela.

Omejitve pozivov, velikosti in izvornih slik

Proizvajalčeva specifikacija za ustvarjanje z V3 sprejema poziv do 1000 znakov in 1–6 slik na zahtevo. Podpira 14 razmerij stranic: 1:1, 2:1, 1:2, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5, 6:10, 14:10, 10:14, 16:9 in 9:16. Dokumentirani rastrski primeri vključujejo 1024x1024, 1820x1024 in 1024x1820. Natančne rastrske dimenzije morajo biti s podprtega seznama; SVG uporablja razmerja stranic brez fiksne velikosti v slikovnih pikah. Če velikost ni podana, jo proizvajalčev sistem izbere iz poziva.

Za postopke s slikovnim vhodom proizvajalec navaja PNG, JPG in WebP ter SVG, kjer ga posamezni postopek dovoljuje. Datoteke morajo biti manjše od 20 MB, z največ 16 MP in najdaljšo stranico največ 4096 slikovnih pik. Najkrajša stranica meri vsaj 256 slikovnih pik, z izjemo 32 slikovnih pik pri ostrem povečevanju. Maske se po velikosti ujemajo s sliko in uporabljajo čisto črno in belo; slogovne reference imajo skupno omejitev 64 MB.

Za projekt z Ailoot API nalogo pretvorite v osredotočen slikovni opis: natančno besedilo, razporeditev predmetov, vizualni slog in želeno kompozicijo. Plakat, prizor z izdelkom in serija ikon zahtevajo različne opise; pri odločanju o uporabi vsakega rezultata ohranite ustrezne razlike med različicami in postopki V3.

Ailoot Ultra · Slike POST /v1/images/generations recraft/recraft-v3

recraft/recraft-v3

Recraft /recraft/recraft-v3

Začetek

Recraft V3 ustvarja fotografije, ilustracije in grafične postavitve s kompozicijo, ki upošteva besedilo, ter slogovnimi nastavitvami. Njegove ločene rastrske in SVG različice so primerne za plakate, slikovne zbirke blagovnih znamk, ikone in zasnove, pri katerih morata besedilo in vizualna struktura delovati skupaj.

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-v3
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.08 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.08 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.08 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-v3', '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-v3', '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-v3", "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-v3

Druga imena poti metod

/v1/images

Povezani ID-ji za klic

recraft/recraft-v3

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

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

Katera polja uporablja zahteva?

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

Katere omejitve veljajo?

POST /v1/images/generations · recraft/recraft-v3: 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