models

Black Forest Labs: FLUX.2 Klein 4B

Markdown · JSON

Black Forest Labs: FLUX.2 Klein 4B

FLUX.2 [klein] 4B est le modèle d’image compact de Black Forest Labs, distillé pour réduire le nombre d’étapes d’inférence, pour la création guidée par texte et le montage avec jusqu’à quatre références. Sa conception en quatre étapes prend en charge le travail visuel interactif tout en conservant une identité distincte de l’édition Base 4B non distillée.

À 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 [klein] 4B est le modèle compact de Black Forest Labs pour créer une image à partir d’une description textuelle et monter des images avec des références visuelles. Son transformeur à flux rectifié de quatre milliards de paramètres réunit génération et montage dans une seule architecture. L’édition nommée 4B est distillée pour réduire le nombre d’étapes d’inférence, et l’exemple de référence du fabricant utilise quatre étapes d’inférence.

Le rôle du modèle est de produire une ébauche visuelle ou une révision interactive : explorer une scène de produit, changer les vêtements d’un personnage, combiner un sujet avec un décor ou affiner l’apparence d’une illustration. Commencez par l’événement ou la composition qui importe, puis décrivez le sujet, la matière, l’éclairage et le point de vue. Un brief concret pourrait placer une tasse en céramique bleu mat sur une table en chêne clair, dans une vue rapprochée éclairée de côté qui garde son anse et son émail visibles. Le résultat est une image à inspecter par rapport à ces décisions.

Monter avec un petit ensemble de références

Le profil 4B documenté accepte jusqu’à quatre images d’entrée. Attribuez un rôle clair à chacune : apparence du produit, personnage, décor ou style. Si une image est la scène à monter, identifiez-la et indiquez la modification ainsi que les détails à conserver. Par exemple, gardez la silhouette et la surface de la tasse de la première image, utilisez la pièce de la deuxième et ne remplacez que le revêtement de la table. L’ordre des références et une instruction de modification précise donnent à la révision une cible plus claire qu’une demande d’amélioration générale.

Le fabricant distingue ce budget compact de références de celui des variantes FLUX.2 plus grandes. Il précise aussi que [klein] n’a pas d’enrichissement du prompt. Fournissez vous-même les informations descriptives importantes, y compris la relation entre les objets référencés, au lieu de compter sur l’expansion automatique d’une courte étiquette. Pour une série, conservez la même référence de sujet et les mêmes exigences visuelles en changeant une décision de scène à la fois.

Réglages de sortie et limites entre éditions

Le profil 4B exact du producteur indique les sorties JPEG, PNG et WebP, avec JPEG par défaut. Les valeurs explicites de largeur et de hauteur sont documentées avec un minimum de 64 pixels chacune; l’exemple de fiche du modèle de référence utilise une image de 1024×1024. Cet exemple est une configuration d’échantillonnage, et non l’affirmation que chaque tâche doit être carrée ou que 1024 pixels est le maximum du modèle. Choisissez le recadrage et le format d’affichage voulus avant de préparer le brief visuel, puis comparez les petits caractères et détails à cette taille.

L’exemple publié en quatre étapes utilise guidance_scale 1.0. Gardez cette édition distillée distincte de FLUX.2 [klein] Base 4B, dont le signal d’entraînement non distillé est destiné à l’adaptation, à l’entraînement LoRA et à la recherche. Base 4B et les modèles 9B sont des choix distincts, avec différentes considérations de préparation et d’échantillonnage. Les commandes standard du modèle compact diffèrent aussi des étapes et du guidage réglables de [flex]; [max] a sa propre capacité de recherche d’ancrage.

Détails à vérifier dans l’image

La fiche exacte du modèle précise que ce modèle n’est pas une source d’information factuelle. Le texte écrit dans une image peut être inexact ou déformé, et la scène générée peut s’écarter de la requête. Le style du prompt a un effet important sur le respect des instructions. Vérifiez l’orthographe, les quantités, les étiquettes, l’identité du sujet et les objets précis à conserver; une composition attrayante ne prouve pas qu’une caractéristique de produit ou un fait illustré est correct. Le fabricant indique aussi que les sorties statistiques peuvent refléter les biais des données d’entraînement.

Pour une ressource vérifiée, conservez les références sources, la formulation finale et l’identité du modèle sélectionné avec l’image. La documentation de publication distingue l’exemple de filigrane au niveau des pixels dans le code de référence des métadonnées de provenance C2PA appliquées dans le processus de sortie hébergé du fabricant. Conserver la provenance renvoyée aide à expliquer l’origine d’une ressource; cela reste distinct de la vérification de la réussite de la modification visuelle demandée.

Ailoot Ultra · Génération d’images POST /v1/images/generations black-forest-labs/flux.2-klein-4b

black-forest-labs/flux.2-klein-4b

Black Forest Labs /black-forest-labs/flux.2-klein-4b

Pour commencer

FLUX.2 [klein] 4B est le modèle d’image compact de Black Forest Labs, distillé pour réduire le nombre d’étapes d’inférence, pour la création guidée par texte et le montage avec jusqu’à quatre références. Sa conception en quatre étapes prend en charge le travail visuel interactif tout en conservant une identité distincte de l’édition Base 4B non distillée.

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
ChampTypeExigenceValeurs et limitesPar défaut
ChampmodelTypestringExigenceObligatoireValeurs et limites
black-forest-labs/flux.2-klein-4b
Par défaut—
ChamppromptTypestringExigenceObligatoireValeurs et limites
Longueur minimale: 1
Par défaut—
Champaspect_ratioTypestringExigenceFacultatifValeurs et limites
1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto
Par défaut—
Champoutput_formatTypestringExigenceFacultatifValeurs et limites
png, jpeg
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: 4
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évisionnelleUnité de facturationCoût
ConfigurationTarifs de base des jetonsBarème tarifaireTarif de baseQuantité prévisionnelle—Unité 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
Configurationmégapixel d’image en sortieBarème tarifaire—Quantité prévisionnelle—Unité de facturationpar mégapixel d’image en sortieCoût
Sortie · mégapixel d’image en sortie · Estimation à des fins de comparaison uniquement $0.028 par mégapixel d’image en sortie
ConfigurationCoût de génération estiméBarème tarifaire—Quantité prévisionnelleestimation pour une générationUnité de facturation—Coût
Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.028 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.2-klein-4b', '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.2-klein-4b

Alias des chemins de méthode

/v1/images

ID d’appel associés

black-forest-labs/flux.2-klein-4b

FAQ · Black Forest Labs: FLUX.2 Klein 4B
Quelles entrées et quels résultats sont disponibles ?

POST /v1/images/generations · black-forest-labs/flux.2-klein-4b: text, image → image

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

POST /v1/images/generations · black-forest-labs/flux.2-klein-4b: model, prompt, aspect_ratio, output_format, n, input_references, provider

Quelles limites s’appliquent ?

POST /v1/images/generations · black-forest-labs/flux.2-klein-4b: 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