Modelle

Recraft: Recraft V4.1 Flash

Markdown · JSON

Recraft: Recraft V4.1 Flash

Recraft V4.1 Flash erzeugt aus Text 1K-Rasterbilder für schnelle visuelle Iterationen. Es unterstützt Fotografie, Porträts, komplexe Szenen und Logoentwürfe, mit Ausgaben als PNG oder verlustfreies WebP und ausdrücklichen Farbvorgaben.

Über das Modell

Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.

Recraft V4.1 Flash ist Recrafts Text-to-Image-Modell für schnelle Iterationen und umfangreiche Bildproduktion. Der Hersteller nennt Fotografie, Porträts, Atmosphäre, komplexe Szenen, Mixed Media und Logoentwürfe als besonders geeignete Anwendungen. Aus einem schriftlichen Briefing entsteht ein Rasterbild, das sich vor der Entwicklung des finalen Motivs mit anderen kreativen Richtungen vergleichen lässt. Flash ist ein bestimmtes Mitglied der V4.1-Familie mit eigener Ausgabegröße und eigenen unterstützten Steuerelementen.

Die native Ausgabe gehört zur 1K-Rasterbildklasse von Recraft. Wählen Sie die Bildfläche passend zur vorgesehenen Platzierung: eine horizontale Illustration für einen Seitenkopf, ein vertikales Porträt oder ein quadratisches Motiv für eine kompakte Karte. Die Ausgabeformate sind verlustfreies WebP und PNG.

Beginnen Sie das Briefing mit dem Hauptmotiv und dem visuellen Zweck. Beschreiben Sie anschließend Bildausschnitt, Umgebung, Beleuchtung und Medium. Für einen Produktentwurf eignet sich etwa: „Ein kompaktes cremefarbenes Radio auf einem Walnussholzschreibtisch, vordere Dreiviertelansicht, weiches Fensterlicht, ruhiges redaktionelles Foto, großzügiger Freiraum links.“ Benennen Sie für eine Illustration Formensprache, Palette und Beziehungen zwischen den Elementen. Machen Sie die Details, die die Idee ausmachen, ausdrücklich, statt unzusammenhängende Adjektive hinzuzufügen. Flash erlaubt laut Dokumentation Prompts mit bis zu 10.000 Zeichen. Eine detaillierte Szene lässt sich daher beschreiben, wenn die Aufgabe es erfordert.

Zu den Steuerelementen des Herstellers gehören bevorzugte Farben und eine gewünschte Hintergrundfarbe. Für reproduzierbare Ergebnisse kann ein Seed angegeben werden; die Generierungsschnittstelle dokumentiert ein bis sechs Bilder pro Anfrage. Diese Steuerelemente ermöglichen einen nützlichen Vergleich: Halten Sie Motiv und Komposition konstant, verändern Sie eine visuelle Richtung und prüfen Sie die erzeugten Bilder im vorgesehenen Layout. Farbvorgaben beschreiben das gewünschte Ergebnis. Vergleichen Sie wichtige Markenfarben mit dem fertigen Bild, bevor Sie es mit einem vorhandenen Designsystem kombinieren.

Flash erzeugt Rastergrafiken. Ein Logoentwurf kann bei der Wahl von Silhouette, Stimmung oder Anordnung helfen; bearbeitbare Pfade gehören dagegen zu den gesondert benannten Vector-Modellen. Flash besitzt auch keine Pro-Variante. Die vollständige V4.1-Reihe bietet diese separaten Optionen, wenn Vektorbearbeitung oder höher auflösende Details für das Ergebnis entscheidend sind. Der Hersteller beschreibt einen späteren Verfeinerungsschritt, der einen ausgewählten Entwurf zu einem detailreicheren Bild weiterentwickelt. Dieser Schritt ist eine eigenständige Operation und keine andere native Flash-Ausgabegröße.

Diese Ausgabe unterstützt keine Image-to-Image-Eingabe, benutzerdefinierten Stile, Stilkennungen, Stilabgleiche oder Stilreferenzbilder. Ihre dokumentierte Schnittstelle schließt zudem negative Prompts und ausdrückliche Textlayout-Steuerungen aus. Formulieren Sie die gewünschte Erscheinung und Komposition im positiven Briefing. Wenn Schrift Teil eines Entwurfs ist, zitieren Sie den vorgesehenen Wortlaut und prüfen Sie die gerenderten Buchstaben. Nutzen Sie einen separaten Layoutschritt, wenn exakte Typografie und Platzierung erforderlich sind.

Ein praktisches Ergebnis von Flash ist eine ausgewählte visuelle Richtung mit klarem Briefing, geeignetem Seitenverhältnis und nutzbarer Rasterdatei. Vergleichen Sie Motiv, Bildausschnitt, Hintergrund und wichtige Details in der Größe, in der das Bild erscheinen wird. Bewahren Sie den erfolgreichen Prompt zusammen mit der ausgewählten Datei auf, damit der nächste kreative Schritt der gewählten Richtung folgt. Schnelle Iterationen helfen bei der Gestaltungssuche. Native Vektorausgabe, Abgleich mit Stilreferenzen und die Auflösung einer anderen V4.1-Ausgabe bleiben eigenständige Modellentscheidungen.

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

recraft/recraft-v4.1-flash

Recraft /recraft/recraft-v4.1-flash

Start

Recraft V4.1 Flash erzeugt aus Text 1K-Rasterbilder für schnelle visuelle Iterationen. Es unterstützt Fotografie, Porträts, komplexe Szenen und Logoentwürfe, mit Ausgaben als PNG oder verlustfreies WebP und ausdrücklichen Farbvorgaben.

Zulässige Eingaben
Text
Ergebnisse
Bilder

In Ailoot verfügbar · Eingaben und Methoden

Ailoot Ultra · Bilder POST /v1/images/generations
Eingabetypen
text
Ausgabetypen
image
Ausgabeformat
Bilddatei
Ausgabeanzahl
1 Ausgabe
FeldTypAnforderungWerte und LimitsStandard
FeldmodelTypstringAnforderungErforderlichWerte und Limits
recraft/recraft-v4.1-flash
Standard—
FeldpromptTypstringAnforderungErforderlichWerte und Limits
Mindestlänge: 1
Bedingungen: Nicht leerer UTF8-Prompt. Es wird keine herstellerweit geltende Zeichengrenze erfunden.
Standard—
FeldnTypintegerAnforderungOptionalWerte und Limits
1
Standard1
Feldresponse_formatTypstringAnforderungOptionalWerte und Limits
url, b64_json
Standard—
FeldstreamTypbooleanAnforderungOptionalWerte und Limits
false
Standardfalse
Kombinationen von Eingabematerialien

Text zu Bild · Erforderlich: prompt

Methodenparameter und Lebenszyklus
ParameterVertrag
Parametercontent_typeVertragapplication/json
ParameterrequiredVertragmodel, prompt
Parametermaterial_typesVertragtext
ParameteroptionalVertragn, response_format, stream
ParameternVertrag1
ParameterstreamVertragfalse
Parameterresponse_formatVertragurl, b64_json
Parameterreference_imagesVertragfalse
ParametereditVertragfalse
Parameteroutput_format_optionalVertrag
Parameterresolution_controlVertragnull
Parameteraspect_ratio_controlVertragnull
Parameterother_fieldsVertragAbgelehnt, außer bei der exakt festgelegten internen Anbieterrouting-Konfiguration

Lebenszyklus: synchronous_result_then_owned_library

GET /v1/media/tasks/{task_id} · die tatsächlich zurückgegebene task_id oder ein Eintrag in der Medienbibliothek

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

GET /v1/media/assets

GET /v1/media/assets/{asset_id}

Ein Bild aus dem Prompt erzeugen.

Speichern Sie jedes Datenelement; url/b64_json sind Ergebniskodierungen.

Tarife

So wird die endgültige Gebühr berechnet

Die angezeigten Tarife dienen zur Kostenschätzung vor der Generierung. Der endgültige Betrag wird aus den für die ursprüngliche Generierung erfassten Kosten berechnet. Die gemessene Ausgabedauer und prognostizierte Mengen sind nicht die endgültige abrechenbare Menge.

Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.

Schnellmodus
Nicht angegeben Wenn der Schnellmodus ausgewählt ist
Flex-Modus
Nicht angegeben Wenn der Modus flex ausgewählt ist
Maximaler Denkaufwand
Nicht angegeben Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird

Geschätzte Tarife zum Vergleich

Preise nach Konfiguration

Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.

KonfigurationTarifstaffelPrognostizierte MengeAbrechnungseinheitGebühr
KonfigurationBasistarife für TokenTarifstaffelGrundtarifPrognostizierte Menge—Abrechnungseinheit—Gebühr
Eingabe · Eingabetoken · Schätzung nur zum Vergleich — / 1K Token
Ausgabe · Ausgabetoken · Schätzung nur zum Vergleich — / 1K Token
Eingabe · Cache-Lesen · Schätzung nur zum Vergleich — / 1K Token
Eingabe · Cache-Schreiben · Schätzung nur zum Vergleich — / 1K Token
Eingabe · Cache-Schreiben, 1 Stunde · Schätzung nur zum Vergleich — / 1K Token
KonfigurationUltraTarifstaffel—Prognostizierte Menge—Abrechnungseinheitpro AusgabebildGebühr
Ausgabe · Bildausgabe · Schätzung nur zum Vergleich $0.014 pro Ausgabebild
KonfigurationGeschätzte GenerierungskostenTarifstaffel—Prognostizierte MengeSchätzung für eine GenerierungAbrechnungseinheit—Gebühr
Ausgabe · Geschätzte Generierungskosten · Schätzung nur zum Vergleich $0.014 Schätzung vor der Generierung

Diese Schätzung ist weder eine zusätzliche Gebühr noch ein fester Tarif für die abgeschlossene Generierung.

Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →

Details zum Referenztarif

Referenztarifstaffeln auf Modellebene ändern weder Methodenauswahl noch Kostenvoranschläge oder Gebühren. Für die aktive Abrechnung gelten die Tarife der ausgewählten Ailoot-Methode.

Preiskonfigurationen für Bilder

Preise nach Konfiguration

KonfigurationAbrechnungsbedingungenGebühr
KonfigurationAusgabebildAbrechnungsbedingungenEs ist keine Preisvariante deklariert.Gebühr
Ausgabe · Ausgabebild $0.014 pro Bild

Gleichwertige Einträge beschreiben dieselbe Abrechnung; sie fügen keine zweite Gebühr hinzu.

Beispielanfragen

Ailoot Ultra · Bilder

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");

Ergebnisse abrufen und speichern

Ailoot Ultra · Bilder

Laden Sie jedes zurückgegebene Bild herunter oder speichern Sie seinen Base64-Inhalt

  • GET /v1/media/tasks/{task_id}
  • GET /v1/media/assets/{asset_id}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Alle fertiggestellten Ergebnisse aufbewahren

Speichern Sie jedes fertiggestellte Bild; rufen Sie jede zurückgegebene URL ab oder dekodieren Sie seinen Base64-Inhalt.

Jedes Datenelement speichern. Jedes b64_json dekodieren oder jede zurückgegebene signierte URL abrufen. Die Dateiendung anhand des tatsächlichen MIME-Typs bzw. der Bytes wählen.

Wenn die ursprüngliche Antwort geprüft werden muss

Wenn das Ergebnis einer Bildgenerierung oder -bearbeitung geprüft werden muss, die ursprüngliche operation_id/X-Client-Request-ID und die zurückgegebenen Ergebnisinformationen aufbewahren. Bereits vorhandene eigene Ergebnisse über die Medienbibliothek anhand tatsächlicher task_id- oder asset_id-Werte wiederherstellen. Die Generierungs-/Bearbeitungsanfrage nicht erneut senden und keine Abfrage-URL aus operation_id bilden.

Antwortfelder
FeldTyp
FeldcreatedTypinteger
Felddata[].urlTypstring
Felddata[].b64_jsonTypbase64 string
FeldusageTypobject
Fehler und nächste Schritte
AntwortBedingungNächster Schritt
Antwort400 · invalid_request_errorBedingungPflichtfelder, Darstellung des Eingabematerials oder Parameterwert ungültigNächster SchrittDie angegebenen Felder vor einer neuen Erstellungsanfrage korrigieren.
Antwortserver_errorBedingungDie zurückgegebene Antwort gibt an, dass der Vorgang oder das Ergebnis eine Prüfung erfordertNächster SchrittDie ursprünglich zurückgegebene Vorgangs-/Aufgaben-ID, die Anfrageheader und die Antwort aufbewahren; mit unterstützten Leseaufrufen für diesen ursprünglichen Vorgang fortfahren. Die Erstellungsanfrage nicht erneut senden.

Aliasnamen

Modellaliasnamen

Ailoot Ultra recraft/recraft-v4.1-flash

Aliasnamen für Methodenpfade

Verwenden Sie die oben angezeigten Methodenpfade.

Zugehörige Aufrufer-IDs

recraft/recraft-v4.1-flash

FAQ · Recraft: Recraft V4.1 Flash
Welche Eingaben und Ergebnisse sind verfügbar?

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

Welche Felder verwendet die Anfrage?

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

Weitere Details

Verbinden Sie Ailoot mit Claude Code, OpenCode, Hermes oder Ihrer eigenen Anwendung.

Das Unternehmen und sein Projektportfolio

Das Unternehmen und sein Projektportfolio: Millionen von Kunden; monatliche Umsätze in Milliardenhöhe.

Tokens mit Rabatt kaufen.

Aborabatt für regelmäßige Arbeit. Aktionscodes bieten bis 50% beim Tokenkauf.

Abo
Wählen Sie einen Tarif mit Rabatt für Ihre regelmäßigen Anfragen.
Aktionscode bis 50%
Geben Sie den Code beim Kauf ein. Der Preis wird nach den gültigen Aktionsbedingungen berechnet.
Ausgaben in der Historie
Modell, Tokens und Betrag werden für jede Anfrage gespeichert.

Abo wählen · Modellpreise ansehen

Verbinden Sie die API mit dem Produkt, das Sie verkaufen.

SaaS, Anwendungen und Bots nach dem offiziellen Angebot und Lizenzvertrag von Ailoot. Fordern Sie für den Weiterverkauf eine Reseller-Lizenz an.

Kommerzielle Anwendung
Integrieren Sie Text-, Bild-, Video- und Audioerzeugung in kostenpflichtige Funktionen Ihres Dienstes.
Reseller-Lizenz
Senden Sie Projektbeschreibung und Zugangsmodell. Fordern Sie schriftliche Nutzungs- und Weiterverkaufsbedingungen an.
Dokumente auf der Website
Offizielles Angebot, Lizenzvertrag und Datenschutzerklärung sind vor der Verbindung zugänglich.

Reseller-Lizenz anfordern · Offizielles Angebot und Lizenzvertrag