modèles

Black Forest Labs: FLUX.3 Image

Markdown · JSON

Black Forest Labs: FLUX.3 Image

FLUX 3 Image crée et retouche des images à partir d’un brief écrit et de dix références au maximum. Il ajoute des cadres englobants définis dans le prompt pour la composition et les modifications locales, un ancrage par le web et les images, ainsi que cinq classes de résolution.

À 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.

FLUX 3 Image est le modèle de génération et de retouche d’images de Black Forest Labs offrant un contrôle explicite de la composition. Une description textuelle peut créer une scène ; des images fournies peuvent établir un sujet, une scène à réviser ou plusieurs éléments à combiner. Les cadres englobants permettent de préciser dans un brief la place de chaque élément et les parties d’une image existante à modifier. Le résultat est une image dont la scène, le texte et la mise en page demandés doivent être inspectés.

Créer une scène ou donner une instruction de retouche

Pour une nouvelle image, décrivez le sujet, l’action ou la pose, le décor, la lumière et le cadrage. Placez entre guillemets le texte exact à intégrer à l’image et indiquez où il apparaît. Un exemple original de brief de produit peut montrer une tasse de camping rouge sur une surface en pierre claire, avec un grand titre au-dessus et une douce lumière matinale révélant l’anse. Définissez la relation entre titre, produit et arrière-plan plutôt que de fournir des mots de style sans lien.

Pour une retouche, identifiez l’objet précis et la modification : recolorer la tasse, remplacer une étiquette, déplacer une silhouette ou changer le style de la scène. Une retouche unique ne nécessite pas de cadre dessiné manuellement. Le processus documenté développe l’instruction avant la génération et peut localiser l’élément nommé et ajouter automatiquement un cadre. Le prompt développé renvoyé consigne cette interprétation, ce qui est utile lorsqu’une instruction sélectionne le mauvais objet ou introduit un détail indésirable.

Combiner et préparer les images de référence

Le profil exact du fournisseur accepte une à dix références, fournies sous forme d’URL d’images ou de données d’images encodées. Chacune doit mesurer au moins 256×256 pixels et ne pas dépasser 16 mégapixels. Désignez une référence par sa position ou son contenu visible, puis expliquez son rôle : la personne de l’Image 1, la veste de l’Image 2 et la pièce de l’Image 3. Une référence d’image est une source d’informations visuelles, pas une instruction de copier tous les détails sans rapport qu’elle contient.

Le réglage du rapport d’aspect est auto par défaut. Dans la spécification de requête, un rapport demandé dans le prompt est prioritaire ; sinon, la première référence établit le cadrage, avec une sortie carrée par défaut lorsqu’aucune référence ni aucun format demandé ne le définit. Pour un assemblage, placez la référence de scène souhaitée en premier ou choisissez explicitement le rapport. Conservez les images sources et leur ordre avec le résultat afin qu’une révision ultérieure parte du même point visuel.

Placer les éléments avec des cadres englobants

Un prompt de mise en page associe une légende à un tableau JSON de lignes d’éléments. La légende nomme un élément avec un marqueur tel que <cup_1> ; la ligne contient id, bbox et desc. Les coordonnées sont des entiers de 0 à 1000 dans l’ordre [top, left, bottom, right], mesurés depuis le coin supérieur gauche. Par exemple, [0, 0, 500, 500] décrit le quart supérieur gauche quelles que soient les dimensions de l’image en pixels. Utilisez le rapport d’aspect pour lequel la mise en page a été conçue, car cette grille de coordonnées s’étire avec le cadre.

Une ligne de retouche utilise à la place from, src_bbox et tgt_bbox, en plus de l’identifiant et de la description. ref_image_0 désigne la première image fournie. Des cadres source et cible identiques ancrent un élément ; des cadres différents le déplacent ou le redimensionnent. Une nouvelle ligne sans source génère sa description à l’emplacement cible et permet les ajouts, remplacements ou recolorations. Une ligne source sans cible supprime l’élément. Précisez les ajouts et suppressions dans l’instruction écrite comme dans les lignes, et conservez des lignes d’ancrage pour les détails qui doivent rester en place.

Attribuez au lettrage son propre cadre et mettez son texte exact entre guillemets dans desc. Les cadres guident le placement et l’échelle ; ce ne sont pas des masques de découpe, et un élément peut dépasser le rectangle. Le fabricant indique que, dans ses exemples, de nouveaux objets placés dans des cadres d’environ 40×25 pixels n’apparaissaient souvent pas. Prévoyez assez d’espace visible et inspectez les contours retouchés. Les pixels hors de la cible restent généralement stables, mais les ombres, les reflets et l’éclairage voisin peuvent changer.

Ancrage, classes de sortie et traces utiles

Le profil documenté active l’ancrage par défaut, permettant à la recherche web et d’images d’informer la génération. Il peut être désactivé pour un brief qui doit utiliser uniquement sa description et ses références fournies. Pour un sujet du monde réel, identifiez clairement le lieu, l’événement ou l’objet et distinguez le contenu factuel du traitement artistique. Une image nourrie par la recherche doit encore être comparée à des sources faisant autorité lorsqu’un libellé, un objet ou un événement représenté doit être exact.

Les cinq classes de résolution sont 768sq, 1k, 1.5k, 2k et 4k, avec 1k par défaut. Elles correspondent à des paliers de même surface en pixels : la largeur et la hauteur exactes dépendent donc du rapport choisi. Quinze rapports fixes vont de 21:9 à 9:21, en passant par les formats carrés et portrait. Le profil de ce modèle règle la taille par le rapport et la résolution ; il n’expose pas les champs seed, width ou height utilisés dans les profils de requête FLUX.2. Son sélecteur de version documenté désigne actuellement une version évolutive plutôt qu’une correspondance datée des poids du fournisseur.

Le processus du fournisseur renvoie une image après traitement asynchrone, avec le prompt développé. Son lien signé de téléchargement d’image est valable une heure. Conservez l’image elle-même, le prompt final et les références au lieu de dépendre d’un lien temporaire. Pour une ressource vérifiée, comparez le texte demandé, la position des objets, l’identité issue des références et la zone modifiée à la taille d’affichage prévue. Une génération achevée est le point de départ de la vérification de ces exigences visuelles.

Ailoot Ultra · Génération d’images POST /v1/images/generations black-forest-labs/flux-3-image

black-forest-labs/flux-3-image

Black Forest Labs /black-forest-labs/flux-3-image

Premiers pas

FLUX 3 Image crée et retouche des images à partir d’un brief écrit et de dix références au maximum. Il ajoute des cadres englobants définis dans le prompt pour la composition et les modifications locales, un ancrage par le web et les images, ainsi que cinq classes de résolution.

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
Types d’entrée
text, image
Types de sortie
image
ChampTypeExigenceValeurs et limitesPar défaut
ChampmodelTypestringExigenceObligatoireValeurs et limites
black-forest-labs/flux-3-image
Par défaut—
ChamppromptTypestringExigenceObligatoireValeurs et limites
Longueur minimale: 1
Par défaut—
ChampresolutionTypestringExigenceFacultatifValeurs et limites
768, 1K, 1.5K, 2K, 4K
Par défaut—
Champaspect_ratioTypestringExigenceFacultatifValeurs et limites
21:9, 2:1, 16:9, 3:2, 7:5, 4:3, 5:4, 1:1, 4:5, 3:4, 5:7, 2:3, 9:16, 1:2, 9:21, auto
Par défaut—
ChampnTypeintegerExigenceFacultatifValeurs et limites
Minimum: 1
Maximum: 1
Par défaut—
Champinput_referencesTypearrayExigenceFacultatifValeurs et limites
Nombre minimal d’éléments: 0
Nombre maximal d’éléments: 10
Par défaut—
ChampproviderTypeobjectExigenceFacultatifValeurs et limitesPar défaut—
Paramètres et cycle de vie de la méthode
ParamètreContrat
Paramètrecontent_typeContratapplication/json
ParamètrerequiredContratmodel, prompt
Paramètrematerial_typesContrattext, 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.

ConfigurationBarème tarifaireQuantité prévisionnelleCoût
ConfigurationTarifs de base par jetonBarème tarifaireTarif de baseQuantité prévisionnelle—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
ConfigurationCoût de génération estiméBarème tarifaire—Quantité prévisionnelleEstimation pour une générationCoût
Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.082 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

curl
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': 'black-forest-labs/flux-3-image', '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}/content
  • GET /v1/media/assets
  • GET /v1/media/assets/{asset_id}
Autres lectures de contenu
Lire les ressources existantes dont vous êtes propriétaire
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
ChampType
ChampcreatedType
Champdata[].urlType
Champdata[].b64_jsonType
ChampusageType

Alias

Alias du modèle

Ailoot Ultra black-forest-labs/flux-3-image

Alias des chemins de méthode

/v1/images

ID d’appel associés

black-forest-labs/flux-3-image

FAQ · Black Forest Labs: FLUX.3 Image
Quelles entrées et quels résultats sont disponibles ?

POST /v1/images/generations · black-forest-labs/flux-3-image: text, image → image

Quels champs la requête utilise-t-elle ?

POST /v1/images/generations · black-forest-labs/flux-3-image: model, prompt, resolution, aspect_ratio, n, input_references, provider

Quelles limites s’appliquent ?

POST /v1/images/generations · black-forest-labs/flux-3-image: n.minimum: 1; n.maximum: 1

Plus de détails

Connectez Ailoot à Claude Code, OpenCode, Hermes ou à votre application.

L’entreprise et son portefeuille de projets

L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.

Achetez des tokens à prix réduit.

Une remise d’abonnement pour le travail régulier. Des codes promo jusqu’à 50% sur l’achat de tokens.

Abonnement
Choisissez une offre à tarif réduit pour vos requêtes régulières.
Code promo jusqu’à 50%
Saisissez le code à l’achat. Le prix est recalculé selon la promotion en cours.
Dépenses dans l’historique
Modèle, tokens et montant sont enregistrés pour chaque requête.

Choisir un abonnement · Voir les prix des modèles

Connectez l’API au produit que vous vendez.

SaaS, applications et bots selon l’offre officielle et le contrat de licence Ailoot. Pour la revente, demandez une licence revendeur.

Application commerciale
Intégrez la génération de texte, d’images, de vidéo et de son aux fonctions payantes de votre service.
Licence revendeur
Envoyez la description du projet et le mode d’accès. Demandez des conditions écrites d’utilisation et de revente.
Documents sur le site
L’offre officielle, le contrat de licence et la politique de traitement des données sont accessibles avant connexion.

Demander une licence revendeur · Offre officielle et contrat de licence