Recraft: Recraft V4 Styles
Recraft V4 Styles génère des images matricielles 1K dans un style visuel défini par références. Il est conçu pour le travail courant de marque et de campagne où chaque nouveau sujet doit conserver le même rendu, la même texture et la même apparence générale.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
Recraft V4 Styles est l’édition matricielle standard de la famille dédiée de génération à style cohérent de Recraft. Il crée une nouvelle image à partir d’un prompt textuel tout en suivant un style établi par des ressources de référence. Le modèle est utile pour une série d’illustrations, de bannières ou de scènes de produits qui doivent partager un traitement visuel reconnaissable. La référence porte le rendu, la texture et la logique des couleurs; le prompt introduit le sujet et la scène de chaque nouvelle ressource.
Le producteur indique une sortie matricielle 1K en WebP sans perte ou en PNG. La taille carrée est 1024 × 1024 pixels et la taille 16:9 documentée est 1344 × 768; les ratios portrait et les autres ratios pris en charge ont leurs propres tailles. Cette édition est distincte de la sortie matricielle 2K de Styles Pro et des modèles Vector produisant du SVG. Choisissez le ratio pour la mise en page finale au lieu de supposer que l’étiquette 1K signifie que chaque image a la même largeur et hauteur.
Un style est obligatoire. Utilisez d’une à dix références PNG, JPG ou WebP ou un style compatible enregistré lors d’une création de style antérieure. Le processus documenté n’accepte pas un identifiant de style enregistré et de nouvelles références ensemble. Les références peuvent être des ressources de marque ou de campagne existantes plutôt que des images initialement générées par Recraft. Elles doivent faire moins de 20 Mo par fichier et au plus 64 Mo au total. Aucune tâche d’entraînement distincte exécutée par l’utilisateur n’est nécessaire avant d’utiliser le style. Chaque référence doit avoir un côté court d’au moins 256 pixels, un côté long d’au plus 4 096 pixels et une résolution totale d’au plus 16 mégapixels.
Commencez par une référence forte ou plusieurs références qui s’accordent déjà sur le langage visuel. Des références cohérentes aident à appliquer le style au-delà d’un objet ou d’une pose; un tableau d’inspiration disparate peut introduire des motifs concurrents. La correspondance flexible est celle par défaut et laisse plus de place à l’interprétation; la correspondance précise suit plus étroitement le rendu, la palette, la composition et l’éclairage de la référence. La reproduction exacte des couleurs n’est toujours pas garantie.
Pour une série de bannières, décrivez un livreur déposant un colis sur un seuil, une composition horizontale calme et un espace libre sur un côté pour du texte ultérieur. Les briefs suivants peuvent changer l’événement ou l’angle de caméra tout en conservant le même style. Le producteur permet les prompts jusqu’à 10 000 caractères, les couleurs préférées, une couleur d’arrière-plan souhaitée, un seed aléatoire et d’une à six images. Il ne prend pas en charge negative_prompt, les noms de styles prédéfinis ou text_layout : décrivez donc directement le sujet et la mise en page voulus dans le brief.
La gamme Styles ne propose pas l’image en image ni la retouche localisée. Une référence de style guide une image nouvellement générée plutôt que de garantir la préservation des objets ou pixels de la référence. Si l’ensemble semble répétitif, révisez la pose, l’action, le cadrage ou les détails de scène au lieu d’ajouter une référence contradictoire. Évaluez chaque résultat dans sa mise en page prévue pour la clarté du sujet, l’espace utile et la cohérence du rendu, puis gardez le même style compatible pour la ressource suivante. Cela rend le modèle pratique pour un langage visuel reproductible avec un contenu changeant.
Ailoot Ultra · Génération d’images POST /v1/images/generations recraft/recraft-v4-styles
recraft/recraft-v4-stylesPour commencer
Recraft V4 Styles génère des images matricielles 1K dans un style visuel défini par références. Il est conçu pour le travail courant de marque et de campagne où chaque nouveau sujet doit conserver le même rendu, la même texture et la même apparence générale.
- Entrées acceptées
- Texte · Images
- Résultats
- Images
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Génération d’images POST /v1/images/generations
- Entrée
text,image- Sortie
image
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites recraft/recraft-v4-styles | Par défaut— |
Champprompt | Typestring | ExigenceObligatoire | Valeurs et limites Longueur minimale: 1 | Par défaut— |
Champaspect_ratio | Typestring | ExigenceFacultatif | Valeurs et limites 1:1, 2:1, 1:2, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5, 16:9, 9:16, auto | Par défaut— |
Champn | Typeinteger | ExigenceFacultatif | Valeurs et limites Minimum: 1 Maximum: 6 | Par défaut— |
Champinput_references | Typearray | ExigenceFacultatif | Valeurs et limites Nombre minimal d’éléments: 1 Nombre maximal d’éléments: 10 | Par défaut— |
Champprovider | Typeobject | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, prompt |
Paramètrematerial_types | Contrattext, image |
Cycle de vie : synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id effectivement renvoyé ou enregistrement de la bibliothèque multimédia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifs
Calcul du coût final
Les tarifs affichés servent à estimer le coût avant la génération. Le montant final est calculé à partir du coût enregistré pour la génération d’origine. La durée mesurée du résultat et les quantités prévisionnelles ne constituent pas la quantité finale facturable.
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Non précisé Lorsque le mode rapide est sélectionné
- Mode Flex
- Non précisé Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs estimés à des fins de comparaison
Prix par configuration
Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.
| Configuration | Barème tarifaire | Quantité prévisionnelle | Unité de facturation | Conditions de facturation | Coût |
|---|---|---|---|---|---|
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Quantité prévisionnelle— | Unité de facturation— | Conditions de facturation— | Coût Entrée · Jetons en entrée · Estimation à des fins de comparaison uniquement — / 1K jetons Sortie · Jetons en sortie · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Lecture du cache · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Écriture dans le cache · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Écriture dans le cache, 1 h · Estimation à des fins de comparaison uniquement — / 1K jetons |
| ConfigurationRéférence d’entrée | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar requête | Conditions de facturationCréation du style lors d’une génération avec des références de style; une fois par demande, en plus du tarif de l’image de sortie. | Coût Entrée · Référence d’entrée · Estimation à des fins de comparaison uniquement $0.01 par requête |
| Configurationimage en sortie | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar image en sortie | Conditions de facturation— | Coût Sortie · image en sortie · Estimation à des fins de comparaison uniquement $0.07 par image en sortie |
| ConfigurationCoût de génération estimé | Barème tarifaire— | Quantité prévisionnelleestimation pour une génération | Unité de facturation— | Conditions de facturation— | Coût Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.07 estimation avant génération Cette estimation ne constitue ni des frais supplémentaires ni un tarif fixe pour la génération terminée. |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Génération d’images
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-styles', '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
Recevoir et enregistrer les résultats
Ailoot Ultra · Génération d’images
Téléchargez chaque image renvoyée ou enregistrez son contenu Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Autres lectures de contenu
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.
Conserver tous les résultats terminés
Enregistrez chaque image terminée ; récupérez chaque URL renvoyée ou décodez son contenu Base64.
Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.
Si la réponse d’origine doit être vérifiée
Conservez le X-Client-Request-ID renvoyé pour le rapprochement. Consultez uniquement les valeurs task_id/asset_id effectivement renvoyées ou votre bibliothèque multimédia ; ne construisez jamais une URL de tâche à partir de l’identifiant de l’opération et ne soumettez jamais à nouveau la création.
Champs de la réponse
| Champ | Type |
|---|---|
Champcreated | Type |
Champdata[].url | Type |
Champdata[].b64_json | Type |
Champusage | Type |
Alias
Alias du modèle
Ailoot Ultra recraft/recraft-v4-styles
Alias des chemins de méthode
/v1/images
ID d’appel associés
FAQ · Recraft: Recraft V4 Styles
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/images/generations·recraft/recraft-v4-styles:text,image→image- Quels champs la requête utilise-t-elle ?
POST /v1/images/generations·recraft/recraft-v4-styles:model,prompt,aspect_ratio,n,input_references,provider- Quelles limites s’appliquent ?
POST /v1/images/generations·recraft/recraft-v4-styles:n.minimum:1;n.maximum:6