Black Forest Labs: FLUX.2 Flex
FLUX.2 [flex] se especializa en tipografía dentro de imágenes y pequeños detalles visuales, con pasos de muestreo y guía ajustables. Utiliza texto y referencias de imagen para desarrollar carteles, composiciones de producto o revisiones precisas, equilibrando el seguimiento de las instrucciones y el realismo.
Sobre el modelo
Esta descripción cubre las capacidades del modelo. Las entradas, salidas y opciones disponibles en Ailoot se indican a continuación para el método seleccionado.
FLUX.2 [flex] es la edición de generación y edición de imágenes de Black Forest Labs especializada en tipografía, representación de texto y conservación de pequeños detalles. Utiliza instrucciones escritas de escena y referencias visuales para producir una imagen. Su control distintivo es el muestreo ajustable: el perfil documentado expone tanto los pasos de inferencia como la guía, lo que permite refinar un encargo visual mediante ajustes y palabras.
Letras y detalles finos
Una tarea tipográfica debe empezar por el texto real. Cita cada línea, define dónde va y distingue el titular, el texto de apoyo y la etiqueta. Describe el estilo, el tamaño y el color de las letras en relación con la escena. Un encargo original de cartel podría mostrar una bicicleta azul cobalto en un estudio claro, con un título grande sobre el cuadro y una línea de especificaciones más pequeña debajo. La imagen debe mostrar con claridad tanto el producto como el orden de lectura.
Para una imagen de producto detallada, identifica las partes que determinan si el resultado es útil: una esfera, la etiqueta de un control, una costura, el borde de un material o una marca del envase. Proporciona una referencia legible y explica qué característica establece. Una escena que se parece en términos generales puede cambiar un carácter o componente crítico, por lo que debes comparar el detalle generado al tamaño de visualización previsto. La especialización del modelo es un motivo para dar requisitos exactos, no una garantía de que la corrección del texto o la inspección visual dejen de ser necesarias.
Los pasos y la guía tienen funciones distintas
El perfil exacto del fabricante acepta entre uno y cincuenta pasos de inferencia, con cincuenta como valor predeterminado. Su descripción asocia un mayor número de pasos con más detalle y realismo. La guía varía de 1.5 a 10, con un valor predeterminado de 5. Una guía mayor refuerza el seguimiento del prompt, pero puede reducir el realismo. Por tanto, una imagen con instrucciones de diseño exactas y otra que busca un aspecto fotográfico natural pueden requerir elecciones distintas dentro de ese perfil.
Mantén constantes el texto, las referencias y la forma de salida al comparar un cambio de ajuste. Observa la característica que motivó el cambio: las formas de las letras, la ubicación del objeto o la textura del material. Cambia un ajuste por un motivo visual concreto en lugar de considerar que una cifra mayor es automáticamente mejor. Son controles de muestreo del productor; el perfil [klein] destilado de cuatro pasos y los controles estándar de [pro] o [max] son elecciones de modelo distintas.
La ampliación del prompt está activada de forma predeterminada en la especificación de [flex] y puede desactivarse mediante su propio control prompt_upsampling. Esto permite mantener un encargo detallado como el texto proporcionado cuando corresponda. La guía compartida del fabricante recomienda colocar el sujeto principal y la acción importante antes de la decoración secundaria y describe prompts estructurados en JSON junto con encargos en lenguaje natural. Utiliza la estructura que facilite especificar las relaciones requeridas.
Revisiones guiadas por referencias
El perfil exacto de solicitudes contiene ocho posiciones para imágenes de referencia. El flujo interactivo del fabricante permite hasta diez imágenes por separado; esas cifras describen interfaces diferentes. Define si una imagen aporta la escena que se va a editar, un producto, un personaje, ropa o un estilo. Para una revisión, identifica el objeto y el cambio, e indica después qué composición circundante, materiales o luz deben mantenerse.
Una tarea original de envase podría utilizar la caja de la primera imagen y el acabado de una segunda, sustituir la etiqueta frontal por el texto aprobado y conservar las proporciones de la caja. Una composición de grupo puede asignar una referencia distinta a cada sujeto y mantener esas asignaciones. Los ejemplos de la familia abarcan cambios de objetos y fondos, composiciones, ediciones de texto y transformaciones de estilo. Solicita una revisión integrada con un objetivo claro y compara después tanto la zona editada como las partes que debían permanecer estables.
Tamaño, color e imagen devuelta
La guía FLUX.2 documenta un mínimo de 64×64 píxeles, dimensiones en múltiplos de 16 y resultados de hasta 4 megapíxeles, con hasta 2 megapíxeles recomendados para el uso habitual. La especificación exacta de [flex] enumera JPEG, PNG y WebP como formatos de salida, con JPEG como predeterminado. También ofrece una semilla aleatoria opcional. Conserva el modelo real, la semilla y los ajustes de muestreo junto con las referencias de origen al comparar versiones; el nombre de una familia por sí solo no identifica la configuración completa de generación.
Para trabajos sensibles al color, vincula cada código hexadecimal a un objeto o elemento de texto identificado. Para la composición, especifica la relación de aspecto prevista mediante las dimensiones de la imagen y deja espacio suficiente para letras legibles. La guía compartida no tiene un mecanismo de prompts negativos, por lo que debes describir positivamente el aspecto deseado: enfoque nítido, fondo limpio o una zona claramente vacía para el texto. Sus ejemplos multilingües permiten redactar un encargo culturalmente específico en el idioma apropiado, sin establecer una garantía de un número fijo de idiomas.
El flujo FLUX.2 del productor devuelve una imagen después del procesamiento y utiliza enlaces firmados temporales con un plazo de recuperación de diez minutos. Conserva la imagen real junto con el encargo. Comprueba la tipografía, los detalles finos, la identidad de las referencias y el tratamiento visual antes de incorporar el recurso a una composición. La entrega final puede ser un cartel seleccionado, una imagen de producto o una composición editada con sus ajustes exactos conservados para la siguiente revisión.
Ailoot Ultra · Imágenes POST /v1/images/generations black-forest-labs/flux.2-flex
black-forest-labs/flux.2-flexPrimeros pasos
FLUX.2 [flex] se especializa en tipografía dentro de imágenes y pequeños detalles visuales, con pasos de muestreo y guía ajustables. Utiliza texto y referencias de imagen para desarrollar carteles, composiciones de producto o revisiones precisas, equilibrando el seguimiento de las instrucciones y el realismo.
- Entradas aceptadas
- Texto · Imágenes
- Resultados
- Imágenes
Disponible en Ailoot · entradas y métodos
Ailoot Ultra · Imágenes POST /v1/images/generations
- Tipos de entrada
text,image- Tipos de salida
image
| Campo | Tipo | Requisito | Valores y límites | Predeterminado |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObligatorio | Valores y límites black-forest-labs/flux.2-flex | Predeterminado— |
Campoprompt | Tipostring | RequisitoObligatorio | Valores y límites Longitud mínima: 1 | Predeterminado— |
Campoaspect_ratio | Tipostring | RequisitoOpcional | Valores y límites 1:1, 4:3, 3:4, 3:2, 2:3, 16:9, 9:16, 21:9, auto | Predeterminado— |
Campooutput_format | Tipostring | RequisitoOpcional | Valores y límites png, jpeg | Predeterminado— |
Campon | Tipointeger | RequisitoOpcional | Valores y límites Mínimo: 1 Máximo: 1 | Predeterminado— |
Campoinput_references | Tipoarray | RequisitoOpcional | Valores y límites Número mínimo de elementos: 0 Número máximo de elementos: 8 | Predeterminado— |
Campoprovider | Tipoobject | RequisitoOpcional | Valores y límites | Predeterminado— |
Parámetros del método y ciclo de vida
| Parámetro | Contrato |
|---|---|
Parámetrocontent_type | Contratoapplication/json |
Parámetrorequired | Contratomodel, prompt |
Parámetromaterial_types | Contratotext, image |
Ciclo de vida: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id real devuelto o registro de la biblioteca multimedia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Planes
Cómo se calcula el cargo definitivo
Las tarifas mostradas estiman el coste antes de la generación. El cargo final se calcula a partir del coste registrado para la generación original. La duración medida del resultado y las cantidades previstas no constituyen la cantidad facturable final.
Las referencias tarifarias no añaden opciones a la solicitud. Los parámetros admitidos se indican en el método seleccionado.
- Modo rápido
- Sin especificar Cuando se selecciona el modo rápido
- Modo flex
- Sin especificar Cuando se selecciona el modo flex
- Esfuerzo máximo de razonamiento
- Sin especificar Cuando el esfuerzo máximo de razonamiento utiliza el ajuste predeterminado (default)
Tarifas estimadas para comparar
Precios por configuración
Relaciona cada cargo con las condiciones mostradas. Usa una tarifa para cada conjunto de configuraciones alternativas.
| Configuración | Tabla de tarifas | Cantidad prevista | Unidad de facturación | Cargo |
|---|---|---|---|---|
| ConfiguraciónTarifas base por token | Tabla de tarifasTarifa base | Cantidad prevista— | Unidad de facturación— | Cargo Entrada · Tokens de entrada · Estimación solo para comparar — / 1K tokens Salida · Tokens de salida · Estimación solo para comparar — / 1K tokens Entrada · Lectura de caché · Estimación solo para comparar — / 1K tokens Entrada · Escritura en caché · Estimación solo para comparar — / 1K tokens Entrada · Escritura en caché, 1 hora · Estimación solo para comparar — / 1K tokens |
| Configuraciónmegapíxel de imagen de entrada | Tabla de tarifas— | Cantidad prevista— | Unidad de facturaciónpor megapíxel de imagen de entrada | Cargo Entrada · megapíxel de imagen de entrada · Estimación solo para comparar $0.12 por megapíxel de imagen de entrada |
| Configuraciónmegapíxel de imagen de salida | Tabla de tarifas— | Cantidad prevista— | Unidad de facturaciónpor megapíxel de imagen de salida | Cargo Salida · megapíxel de imagen de salida · Estimación solo para comparar $0.12 por megapíxel de imagen de salida |
| ConfiguraciónCoste estimado de generación | Tabla de tarifas— | Cantidad previstaestimación para una generación | Unidad de facturación— | Cargo Salida · Coste estimado de generación · Estimación solo para comparar $0.12 estimación previa a la generación Esta estimación no es un cargo adicional ni una tarifa fija para la generación completada. |
Ailoot reserva un importe estimado antes de la solicitud. Tras obtener el resultado, liquida el cargo definitivo según el uso medido. En las respuestas en flujo, la liquidación usa el registro de uso final. Cómo funcionan la reserva y la liquidación →
Solicitudes de ejemplo
Ailoot Ultra · Imágenes
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-flex', '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
Recibir y guardar resultados
Ailoot Ultra · Imágenes
Descarga cada imagen recibida o guarda su contenido Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Otras consultas de contenido
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.
Conserva todos los resultados completados
Guarda todas las imágenes completadas; descarga cada URL recibida o decodifica su contenido Base64.
Conserva la respuesta completa y las cabeceras, todas las salidas reales, los identificadores originales devueltos y todos los campos de uso. Recupera la operación original sin volver a enviar la solicitud de creación.
Si es necesario revisar la respuesta original
Conserva el X-Client-Request-ID devuelto para la conciliación. Consulta únicamente los valores task_id/asset_id realmente devueltos o la biblioteca multimedia propia; nunca construyas una URL de tarea a partir del ID de la operación ni vuelvas a enviar la solicitud de creación.
Campos de respuesta
| Campo | Tipo |
|---|---|
Campocreated | Tipo |
Campodata[].url | Tipo |
Campodata[].b64_json | Tipo |
Campousage | Tipo |
Alias
Alias del modelo
Ailoot Ultra black-forest-labs/flux.2-flex
Alias de rutas de métodos
/v1/images
ID de modelo relacionados
FAQ · Black Forest Labs: FLUX.2 Flex
- ¿Qué entradas y resultados están disponibles?
POST /v1/images/generations·black-forest-labs/flux.2-flex:text,image→image- ¿Qué campos utiliza la solicitud?
POST /v1/images/generations·black-forest-labs/flux.2-flex:model,prompt,aspect_ratio,output_format,n,input_references,provider- ¿Qué límites se aplican?
POST /v1/images/generations·black-forest-labs/flux.2-flex:n.minimum:1;n.maximum:1