# Flux 2 | Flash | Text to Image FLUX.2 [dev] from Black Forest Labs enables fast text-to-image generation with enhanced realism, sharper text rendering, and built-in native editing capabilities. ## API Information - **Model Slug:** flux-2-flash-text-to-image - **Branded URL:** https://www.eachlabs.ai/black-forest-labs/flux-2/flux-2-flash-text-to-image - **Provider:** Black Forest Labs - **Category:** Text to Image - **Output Type:** array - **Status:** active - **Base Cost:** $0.005 per megapixel per image - **Estimated Processing Time:** 1 seconds - **Interactive Demo:** https://www.eachlabs.ai/ai-models/flux-2-flash-text-to-image ## Pricing - **Charge Type:** dynamic - **Estimate:** $0.005 per megapixel per image - **Pricing Details:** width, height: $0.005 - **Pricing Details:** default: $0.005 ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | Text description of the image to generate. | | guidance_scale | number | No | 2.5 | 0–20 | Classifier-free guidance scale. Higher values follow the prompt more closely. Range: 0–20. Default: 2.5. | | image_size | string | No | landscape_4_3 | square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9 | Output image size preset. Default: landscape_4_3. | | num_images | integer | No | 1 | 1–4 | Number of images to generate. Range: 1–4. Default: 1. | | enable_prompt_expansion | boolean | No | false | - | Automatically expand the prompt for richer results. Default: false. | | enable_safety_checker | boolean | No | true | - | Run safety checker on output. Default: true. | | output_format | string | No | png | jpeg, png, webp | Output image format. Default: png. | | seed | integer | No | - | 1–0 | Random seed for reproducible results. Leave empty for random output. | | safety_tolerance | string | No | 2 | 1, 2, 3, 4, 5 | Safety filter tolerance level. 1 is strictest, 5 is most permissive. Default: 2. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "flux-2-flash-text-to-image", "input": { "prompt": "A astronaut kneels beside a glowing alien flower field on a distant planet, with delicate crystalline petals pulsing softly beneath a vast, unfamiliar sky. The astronaut’s suit reflects the neon blues and purples of the flora, contrasting with the dark, dusty ground. A massive ringed planet rises on the horizon, partially veiled by thin mist. Cold twilight light casts long, surreal shadows, heightening the sense of isolation and wonder. Shot macro (100mm) focusing on the foreground flowers, aperture f/2.8 for shallow depth of field, low-angle POV, cinematic composition, blending advanced technology with otherworldly nature, ultra-realistic textures, high detail, film still quality." } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "array", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "Authorization: Bearer YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **flux-2-flash-text-to-image — Text-to-Image AI Model** flux-2-flash-text-to-image from Black Forest Labs delivers ultra-fast text-to-image generation optimized for real-time workflows, producing photorealistic images with sharp text rendering in under a second on modern GPUs. Part of the innovative flux-2 family, this model solves the need for speed in AI image generation without compromising quality, enabling developers and creators to iterate rapidly on **text-to-image AI model** projects. Whether you're building apps requiring instant previews or handling high-volume **Black Forest Labs text-to-image** tasks, flux-2-flash-text-to-image stands out with its rectified flow transformer architecture for consistent, prompt-adherent outputs up to 4 megapixels. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.