Recraft: Recraft V4.1 Utility
Recraft V4.1 Utility génère des images raster 1K pour des photos produit directes, des maquettes et des scènes simples. Il privilégie un éclairage uniforme et une composition de face, avec des prompts textuels et des entrées facultatives d’image ou de style pour une direction visuelle prévisible.
À 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.1 Utility est le modèle raster Utility standard de la famille V4.1 de Recraft. Il privilégie des scènes simples, un éclairage uniforme et une composition de face plutôt que les choix plus expressifs d’angle, de lumière et d’ambiance du modèle V4.1 principal. Son rôle pratique est une photo produit ou une maquette claire où l’objet et les détails nécessaires doivent dominer. L’édition Utility exacte est distincte de Utility Pro, du modèle V4.1 principal et des variantes vectorielles produisant du SVG.
Le code du modèle du producteur est recraftv4_1_utility. Il renvoie des images raster 1K en WebP sans perte ou PNG, avec des tailles choisies parmi les rapports de format pris en charge. Une image carrée mesure 1024 × 1024 pixels et une image 4:3 mesure 1216 × 896. L’édition Pro Utility utilise des dimensions 2K plus grandes ; ces tailles de sortie ne doivent donc pas être attribuées à Utility standard. Choisissez le format de la fiche produit ou de la maquette prévue avant de décrire la scène.
Un brief utile nomme simplement le produit, le point de vue, la matière, la surface, le fond et l’éclairage. Pour une fiche produit, demandez une bouteille isotherme de face sur un fond clair, uniformément éclairée, avec toute la silhouette visible et sans éléments de scène distrayants. Si un produit a des dimensions factuelles ou des parties distinctives, fournissez-les explicitement. La préférence d’Utility pour une présentation directe n’établit pas de faits sur un produit réel absents du brief.
La génération prend en charge des prompts jusqu’à 10’000 caractères, des commandes de couleurs préférées et de couleur de fond, une graine aléatoire et une à six sorties. Des styles personnalisés compatibles ou des images de référence facultatifs peuvent guider le langage visuel d’un catalogue. Utilisez des références qui s’accordent sur l’éclairage et le rendu, et conservez le même style compatible pour les briefs produit suivants. La correspondance exacte des couleurs entre référence et sortie n’est pas garantie ; comparez donc le visuel final à la palette requise. Pour la génération par références de style, utilisez une à dix images PNG, JPG ou WebP, sans dépasser 64 Mo au total et avec moins de 20 Mo chacune. 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 doit être de 16 mégapixels au maximum. Utilisez soit ces références, soit un style enregistré compatible, plutôt que les deux. Pour la génération par références de style, la correspondance souple permet une interprétation plus libre, tandis que la correspondance précise suit davantage le rendu, la palette, la composition et l’éclairage.
Le processus distinct d’image à image utilise une image existante et un prompt, avec une force de 0 à 1 contrôlant l’ampleur du changement. Une force plus basse garde le résultat plus proche de la source ; une force plus élevée l’autorise à s’en éloigner davantage. Son entrée peut être PNG, JPG, WebP ou SVG de moins de 20 Mo, jusqu’à 16 MP, avec des côtés compris entre 256 et 4096 pixels. Les styles personnalisés V4.1 ne sont pas acceptés dans cette opération de transformation, distincte de l’ajout d’une référence de style à une nouvelle génération.
V4.1 Utility n’accepte pas les noms de styles prédéfinis ni les commandes negative_prompt, text_layout, artistic_level ou no_text. Décrivez directement la scène finale souhaitée dans le prompt positif. Pour une série de ressources produit, gardez les instructions de cadrage et de fond stables, puis comparez chaque image à la forme, à la matière et aux détails du produit fournis avant de l’utiliser dans une mise en page. Utility standard est un outil raster ciblé pour une présentation sobre ; choisissez le format de sortie et l’édition précis selon la tâche.
Ailoot Ultra · Génération d’images POST /v1/images/generations recraft/recraft-v4.1-utility
recraft/recraft-v4.1-utilityPremiers pas
Recraft V4.1 Utility génère des images raster 1K pour des photos produit directes, des maquettes et des scènes simples. Il privilégie un éclairage uniforme et une composition de face, avec des prompts textuels et des entrées facultatives d’image ou de style pour une direction visuelle prévisible.
- 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.1-utility | Par défaut— |
Champprompt | Typestring | ExigenceObligatoire | Valeurs et limites Longueur minimale: 1 | Par défaut— |
Champaspect_ratio | Typestring | ExigenceFacultatif | Valeurs et limites 1:1, 4:3, 3:4, 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: 0 Nombre maximal d’éléments: 1 | 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 | Coût |
|---|---|---|---|---|
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Quantité prévisionnelle— | Unité 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 |
| Configurationimage en sortie | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar image en sortie | Coût Sortie · image en sortie · Estimation à des fins de comparaison uniquement $0.07 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— | 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.1-utility', '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.1-utility
Alias des chemins de méthode
/v1/images
ID d’appel associés
FAQ · Recraft: Recraft V4.1 Utility
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/images/generations·recraft/recraft-v4.1-utility:text,image→image- Quels champs la requête utilise-t-elle ?
POST /v1/images/generations·recraft/recraft-v4.1-utility:model,prompt,aspect_ratio,n,input_references,provider- Quelles limites s’appliquent ?
POST /v1/images/generations·recraft/recraft-v4.1-utility:n.minimum:1;n.maximum:6