Black Forest Labs: FLUX.2 Pro
FLUX.2 [pro] est le modèle d’image de production de Black Forest Labs pour la création à partir de texte et la retouche guidée par des références. Son profil documenté associe détails photoréalistes, maîtrise du texte et des couleurs, budget de pixels partagé entre références et sortie, et images allant jusqu’à 4 mégapixels.
À 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.2 [pro] est le modèle de génération et de retouche d’images de Black Forest Labs destiné à la production. Le fabricant le présente comme le choix par défaut pour la plupart des tâches visuelles FLUX.2 : créer une image à partir de texte ou retravailler une scène à l’aide de références visuelles. Les capacités de cette famille comprennent des matériaux et des éclairages photoréalistes, du texte lisible, des consignes de couleur exactes et des sujets cohérents entre plusieurs retouches liées. Le résultat est une image à intégrer dans une scène produit, une composition éditoriale, un concept de design ou une communication visuelle.
Préparer un brief de production
Commencez par le sujet, son action ou sa disposition, le style, puis le décor ou la lumière. Le guide de rédaction du fabricant accorde davantage d’attention aux premiers mots et recommande de placer le sujet et l’action essentiels avant les détails décoratifs. Il suggère 10–30 mots pour des concepts rapides et 30–80 pour les projets courants, avec des descriptions plus longues pour les scènes complexes. Ces plages sont des conseils de rédaction, pas une limite de contexte textuel.
Un brief de catalogue original pourrait montrer une lampe en acier brossé sur une table gris chaud, vue de trois quarts pour rendre l’interrupteur et l’abat-jour visibles. Précisez la surface, l’éclairage et le point de vue qui rendent le produit reconnaissable. Pour une infographie ou une image marketing, fixez d’abord le texte visible et sa hiérarchie ; citez le titre exact, indiquez son emplacement ainsi que le style et la taille des caractères. Examinez les étiquettes, les quantités et les détails du produit à la taille d’affichage finale.
Le guide de la famille documente des prompts en langage naturel et structurés en JSON. Un brief structuré peut séparer le sujet, l’arrière-plan, la lumière et la composition dans des champs distincts pour modifier clairement une exigence. Il prend également en charge les descriptions de couleurs hexadécimales : associez le code à l’objet ou au texte précis à colorer. Décrivez positivement l’apparence souhaitée, car le processus documenté de rédaction FLUX.2 ne prévoit pas de prompts négatifs.
Retoucher avec des références et un budget de pixels commun
Le profil de requête exact [pro] offre huit emplacements d’images de référence ; l’interface interactive du fabricant en prend séparément en charge dix. Attribuez un rôle à chaque image : apparence du sujet, vêtements, design du produit, pièce ou style. Pour une scène existante, précisez l’élément à modifier ainsi que la composition, l’environnement et les détails visuels à conserver. Les exemples publiés comprennent des compositions de mobilier, des changements de fond ou de météo, des remplacements d’objets et des révisions de texte.
La capacité de référence dépend aussi de la taille de sortie. Le guide [pro] du producteur précise un budget total de 9 mégapixels pour l’entrée et la sortie. Ses exemples autorisent huit références pour une sortie de 1 mégapixel et sept pour une sortie de 2 mégapixels, la capacité diminuant à mesure que le résultat demandé grandit. Planifiez ensemble les sources et la sortie au lieu de supposer que le nombre maximal d’emplacements est disponible pour toute taille de sortie. Utilisez les références qui apportent des informations nécessaires et précisez leur contribution attendue.
Pour une composition produit, la première image pourrait fournir le produit, la deuxième une pièce et une troisième une finition de matériau. Expliquez comment les réunir dans une scène cohérente. Si le résultat modifie une forme, une inscription ou une identité à préserver, ciblez ce problème dans la consigne suivante au lieu de remplacer tout le brief. Le résultat pratique est l’image retouchée, dont la fidélité aux références et la modification précise sont comparées aux entrées.
Expansion du prompt et profils fixes ou Preview
La spécification exacte [pro] active par défaut l’enrichissement du prompt. Sa commande disable_pup désactive cette expansion lorsqu’une consigne soigneusement rédigée doit être utilisée telle quelle. Conservez le réglage choisi quand vous comparez des versions : un même concept court et une description enrichie constituent des entrées de génération différentes. Il s’agit d’une commande du profil du fabricant, pas d’une garantie que chaque détail demandé apparaîtra correctement.
La documentation distingue le point de terminaison [pro] simple, qui est un instantané fixe, de [pro] Preview, qui reçoit les améliorations ultérieures du modèle. Les structures de requête et de réponse sont identiques, mais les poids sous-jacents diffèrent. Conservez le profil exact choisi avec l’image et les références. Le libellé Preview distinct ne doit pas remplacer silencieusement une sélection [pro] simple lorsqu’une révision dépend du même choix documenté de modèle.
Dimensions, formats et visuel sélectionné
Le guide de la famille documente des sorties jusqu’à 4 mégapixels, avec des dimensions explicites d’au moins 64×64 et multiples de 16. Il recommande jusqu’à 2 mégapixels pour la plupart des usages. La largeur et la hauteur établissent le cadrage prévu ; une image produit carrée, une mise en page portrait et une scène éditoriale large répartissent l’espace différemment. La requête exacte propose JPEG, PNG et WebP, JPEG étant le format par défaut, ainsi qu’une graine facultative.
Le profil [max] dispose d’une fonction distincte de recherche d’ancrage, tandis que [flex] expose les étapes d’échantillonnage et le guidage, et [klein] possède un profil plus compact à quatre références. Choisissez l’édition en fonction du travail requis au lieu d’importer ces commandes dans [pro]. Pour le visuel sélectionné, conservez l’image réelle, le prompt final, les références, les dimensions et le libellé du modèle. Les liens signés de résultat FLUX.2 du producteur expirent après dix minutes : récupérez donc l’image au lieu de compter sur son emplacement temporaire. Vérifiez l’identité du sujet, les couleurs, le texte, la composition et les détails retouchés avant d’intégrer le résultat aux supports destinés aux clients.
Ailoot Ultra · Génération d’images POST /v1/images/generations black-forest-labs/flux.2-pro
black-forest-labs/flux.2-proPremiers pas
FLUX.2 [pro] est le modèle d’image de production de Black Forest Labs pour la création à partir de texte et la retouche guidée par des références. Son profil documenté associe détails photoréalistes, maîtrise du texte et des couleurs, budget de pixels partagé entre références et sortie, et images allant jusqu’à 4 mégapixels.
- 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 black-forest-labs/flux.2-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, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Par défaut— |
Champoutput_format | Typestring | ExigenceFacultatif | Valeurs et limites png, jpeg | Par défaut— |
Champn | Typeinteger | ExigenceFacultatif | Valeurs et limites Minimum: 1 Maximum: 1 | Par défaut— |
Champinput_references | Typearray | ExigenceFacultatif | Valeurs et limites Nombre minimal d’éléments: 0 Nombre maximal d’éléments: 8 | 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 |
| Configurationmégapixel d’image en sortie | Barème tarifaire— | Quantité prévisionnelle— | Unité de facturationpar mégapixel d’image en sortie | Coût Sortie · mégapixel d’image en sortie · Estimation à des fins de comparaison uniquement $0.06 par mégapixel d’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.06 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': 'black-forest-labs/flux.2-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 black-forest-labs/flux.2-pro
Alias des chemins de méthode
/v1/images
ID d’appel associés
FAQ · Black Forest Labs: FLUX.2 Pro
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/images/generations·black-forest-labs/flux.2-pro:text,image→image- Quels champs la requête utilise-t-elle ?
POST /v1/images/generations·black-forest-labs/flux.2-pro:model,prompt,aspect_ratio,output_format,n,input_references,provider- Quelles limites s’appliquent ?
POST /v1/images/generations·black-forest-labs/flux.2-pro:n.minimum:1;n.maximum:1