Recraft: Recraft V4 Styles Pro
Recraft V4 Styles Pro génère des images raster 2K dans un style visuel défini par des références. Il est conçu pour les ressources de campagne détaillées et les ensembles d’images dont la texture, le rendu, la palette et l’aspect général doivent rester cohérents lorsque le sujet change.
À 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 Pro est le modèle raster de résolution supérieure de la famille dédiée V4 Styles de Recraft. Il crée une nouvelle image à partir d’un brief textuel et d’un style visuel fourni par des images de référence ou un style enregistré. Le modèle est destiné aux campagnes, à l’illustration de marque et aux autres ensembles d’images où rendu, texture et caractère de composition doivent passer d’une ressource à la suivante. Il est distinct de Recraft V4 Pro et V4.1 Pro, dont l’entrée de style est facultative plutôt que l’exigence définissant le modèle.
Styles Pro produit une sortie raster 2K, aux formats WebP sans perte ou PNG. Une sortie carrée du tableau de tailles du producteur mesure 2048 × 2048 pixels, tandis qu’une sortie 16:9 mesure 2688 × 1536 ; les autres rapports pris en charge ont leurs propres dimensions. La sortie plus grande de Pro peut être utile pour des visuels de campagne détaillés et des mises en page plus grandes. Les variantes vectorielles produisent plutôt du SVG et n’ont pas de taille fixe en pixels ; cette édition raster Pro ne doit donc pas être choisie lorsque le livrable prévu est un fichier vectoriel modifiable.
Toute génération dans la famille Styles exige un style. Fournissez une à dix images de référence PNG, JPG ou WebP, ou réutilisez un style enregistré compatible ; un identifiant de style et de nouvelles références sont des entrées alternatives plutôt qu’une paire à combiner. Le processus du producteur autorise jusqu’à 64 Mo pour l’ensemble des références, chaque fichier devant faire moins de 20 Mo. La création de style ne nécessite pas d’étape d’entraînement exécutée par l’utilisateur. Une référence claire peut établir une direction cohérente, et plusieurs références aident lorsqu’elles partagent déjà le même langage visuel plutôt que des aspects concurrents. Le côté le plus court de chaque référence doit mesurer au moins 256 pixels, son côté le plus long ne doit pas dépasser 4’096 pixels et sa résolution totale doit être de 16 mégapixels au maximum.
La correspondance de style souple est celle par défaut et autorise une interprétation plus libre de la référence. La correspondance précise suit davantage le rendu, la palette, la composition et l’éclairage. La référence définit le langage visuel ; le brief textuel doit encore décrire le nouveau sujet, l’action, la scène et le cadrage. Pour une campagne produit détaillée, précisez une bouteille en verre sur une surface en pierre claire, une vue de trois quarts, une lumière latérale douce et un espace libre pour un titre, tandis que la référence fournie porte le traitement photographique.
Le modèle accepte des prompts jusqu’à 10’000 caractères, prend en charge les couleurs préférées et une couleur de fond souhaitée, et peut utiliser une graine aléatoire. Le processus de génération documenté peut renvoyer une à six images. Ses commandes utiles diffèrent des anciennes éditions Recraft : les noms de styles prédéfinis, negative_prompt et text_layout ne sont pas pris en charge, et la famille Styles ne propose ni image à image ni retouche de zones. Une référence est une source de style, et non un masque ou une instruction de préserver une photographie existante pixel par pixel.
Préparez des références nettes et suffisamment détaillées et réutilisez le même style pour développer un ensemble. Si les sorties deviennent répétitives, changez le sujet, la pose, l’angle de caméra ou la scène dans le brief textuel au lieu d’ajouter une référence sans rapport. La correspondance exacte de couleur entre référence et sortie n’est pas garantie ; les commandes de couleurs préférées expriment une direction plutôt qu’un résultat d’épreuvage colorimétrique. Pour la ressource finale de campagne, évaluez l’image à sa taille d’affichage ou d’impression prévue et vérifiez si le sujet, l’espace libre utile et le traitement visuel correspondent au brief.
Ailoot Ultra · Génération d’images POST /v1/images/generations recraft/recraft-v4-styles-pro
recraft/recraft-v4-styles-proPremiers pas
Recraft V4 Styles Pro génère des images raster 2K dans un style visuel défini par des références. Il est conçu pour les ressources de campagne détaillées et les ensembles d’images dont la texture, le rendu, la palette et l’aspect général doivent rester cohérents lorsque le sujet change.
- 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-pro | 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 · Tokens en entrée · Estimation à des fins de comparaison uniquement — / 1K tokens Sortie · Tokens en sortie · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Lecture du cache · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Écriture dans le cache · Estimation à des fins de comparaison uniquement — / 1K tokens Entrée · Écriture dans le cache, 1 h · Estimation à des fins de comparaison uniquement — / 1K tokens |
| ConfigurationRéférence en 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 requête, en supplément du tarif de l’image de sortie. | Coût Entrée · Référence en 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.2 par image en sortie |
| ConfigurationCoût estimé de la génération | 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.2 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-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
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-pro
Alias des chemins de méthode
/v1/images
ID d’appel associés
FAQ · Recraft: Recraft V4 Styles Pro
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/images/generations·recraft/recraft-v4-styles-pro:text,image→image- Quels champs la requête utilise-t-elle ?
POST /v1/images/generations·recraft/recraft-v4-styles-pro:model,prompt,aspect_ratio,n,input_references,provider- Quelles limites s’appliquent ?
POST /v1/images/generations·recraft/recraft-v4-styles-pro:n.minimum:1;n.maximum:6