fal.ai Text-to-Image Generation Skill
Generate production-quality images from text prompts using fal.ai's state-of-the-art text-to-image models including FLUX, Recraft V3, Imagen4, and more.
When to Use This Skill
Trigger when user:
- •Requests image generation from text descriptions
- •Wants to create images with specific styles (vector, realistic, typography)
- •Needs high-resolution professional images (up to 2K)
- •Wants to use a reference image for style transfer
- •Mentions specific models like FLUX, Recraft, or Imagen
- •Asks for logo, poster, or brand-style image generation
Quick Start
Basic Usage
bash
uv run python fal-text-to-image "A cyberpunk city at sunset with neon lights"
With Specific Model
bash
uv run python fal-text-to-image -m flux-pro/v1.1-ultra "Professional headshot of a business executive"
With Style Reference Image
bash
uv run python fal-text-to-image -i reference.jpg "A mountain landscape" -m flux-2/lora/edit
Model Selection Guide
The script intelligently selects the best model based on task context:
flux-pro/v1.1-ultra (Default for High-Res)
- •Best for: Professional photography, high-resolution outputs (up to 2K)
- •Strengths: Photo realism, professional quality
- •Use when: User needs publication-ready images
- •Endpoint:
fal-ai/flux-pro/v1.1-ultra
recraft/v3/text-to-image (SOTA Quality)
- •Best for: Typography, vector art, brand-style images, long text
- •Strengths: Industry-leading benchmark scores, precise text rendering
- •Use when: Creating logos, posters, or text-heavy designs
- •Endpoint:
fal-ai/recraft/v3/text-to-image
flux-2 (Best Balance)
- •Best for: General-purpose image generation
- •Strengths: Enhanced realism, crisp text, native editing
- •Use when: Standard image generation needs
- •Endpoint:
fal-ai/flux-2
flux-2/lora (Custom Styles)
- •Best for: Domain-specific styles, fine-tuned variations
- •Strengths: Custom style adaptation
- •Use when: User wants specific artistic styles
- •Endpoint:
fal-ai/flux-2/lora
flux-2/lora/edit (Style Transfer)
- •Best for: Image-to-image editing with style references
- •Strengths: Specialized style transfer
- •Use when: User provides reference image with
-iflag - •Endpoint:
fal-ai/flux-2/lora/edit
imagen4/preview (Google Quality)
- •Best for: High-quality general images
- •Strengths: Google's highest quality model
- •Use when: User specifically requests Imagen or Google models
- •Endpoint:
fal-ai/imagen4/preview
stable-diffusion-v35-large (Typography & Style)
- •Best for: Complex prompts, typography, style control
- •Strengths: Advanced prompt understanding, resource efficiency
- •Use when: Complex multi-element compositions
- •Endpoint:
fal-ai/stable-diffusion-v35-large
ideogram/v2 (Typography Specialist)
- •Best for: Posters, logos, text-heavy designs
- •Strengths: Exceptional typography, realistic outputs
- •Use when: Text accuracy is critical
- •Endpoint:
fal-ai/ideogram/v2
bria/text-to-image/3.2 (Commercial Safe)
- •Best for: Commercial projects requiring licensed training data
- •Strengths: Safe for commercial use, excellent text rendering
- •Use when: Legal/licensing concerns matter
- •Endpoint:
fal-ai/bria/text-to-image/3.2
Command-Line Interface
bash
uv run python fal-text-to-image [OPTIONS] PROMPT Arguments: PROMPT Text description of the image to generate Options: -m, --model TEXT Model to use (see model list above) -i, --image TEXT Path or URL to reference image for style transfer -o, --output TEXT Output filename (default: generated_image.png) -s, --size TEXT Image size (e.g., "1024x1024", "landscape_16_9") --seed INTEGER Random seed for reproducibility --steps INTEGER Number of inference steps (model-dependent) --guidance FLOAT Guidance scale (higher = more prompt adherence) --help Show this message and exit
Authentication Setup
Before first use, set your fal.ai API key:
bash
export FAL_KEY="your-api-key-here"
Or create a .env file in the skill directory:
env
FAL_KEY=your-api-key-here
Get your API key from: https://fal.ai/dashboard/keys
Advanced Examples
High-Resolution Professional Photo
bash
uv run python fal-text-to-image \ -m flux-pro/v1.1-ultra \ "Professional headshot of a business executive in modern office" \ -s 2048x2048
Logo/Typography Design
bash
uv run python fal-text-to-image \ -m recraft/v3/text-to-image \ "Modern tech startup logo with text 'AI Labs' in minimalist style"
Style Transfer from Reference
bash
uv run python fal-text-to-image \ -m flux-2/lora/edit \ -i artistic_style.jpg \ "Portrait of a woman in a garden"
Reproducible Generation
bash
uv run python fal-text-to-image \ -m flux-2 \ --seed 42 \ "Futuristic cityscape with flying cars"
Model Selection Logic
The script automatically selects the best model when -m is not specified:
- •If
-iprovided: Usesflux-2/lora/editfor style transfer - •If prompt contains typography keywords (logo, text, poster, sign): Uses
recraft/v3/text-to-image - •If prompt suggests high-res needs (professional, portrait, headshot): Uses
flux-pro/v1.1-ultra - •If prompt mentions vector/brand: Uses
recraft/v3/text-to-image - •Default: Uses
flux-2for general purpose
Output Format
Generated images are saved with metadata:
- •Filename includes timestamp and model name
- •EXIF data stores prompt, model, and parameters
- •Console displays generation time and cost estimate
Troubleshooting
| Problem | Solution |
|---|---|
FAL_KEY not set | Export FAL_KEY environment variable or create .env file |
Model not found | Check model name against supported list |
Image reference fails | Ensure image path/URL is accessible |
Generation timeout | Some models take longer; wait or try faster model |
Rate limit error | Check fal.ai dashboard for usage limits |
Cost Optimization
- •Free tier: FLUX.2 offers 100 free requests (expires Dec 25, 2025)
- •Pay per use: FLUX Pro charges per megapixel
- •Budget option: Use
flux-2orstable-diffusion-v35-largefor general use - •Premium: Use
flux-pro/v1.1-ultraonly when high-res is required
File Structure
code
fal-text-to-image/ ├── SKILL.md # This file ├── pyproject.toml # Dependencies (uv) ├── fal-text-to-image # Main executable script ├── references/ │ └── model-comparison.md # Detailed model benchmarks └── outputs/ # Generated images (created on first run)
Dependencies
Managed via uv:
- •
fal-client: Official fal.ai Python SDK - •
python-dotenv: Environment variable management - •
pillow: Image handling and EXIF metadata - •
click: CLI interface
Best Practices
- •Model Selection: Let the script auto-select unless you have specific needs
- •Reference Images: Use high-quality references for best style transfer results
- •Prompt Engineering: Be specific and descriptive for better outputs
- •Cost Awareness: Monitor usage on fal.ai dashboard
- •Reproducibility: Use
--seedfor consistent results during iteration
Resources
- •fal.ai Documentation: https://docs.fal.ai/
- •Model Playground: https://fal.ai/explore/search
- •API Keys: https://fal.ai/dashboard/keys
- •Pricing: https://fal.ai/pricing
Limitations
- •Requires active fal.ai API key
- •Subject to fal.ai rate limits and quotas
- •Internet connection required
- •Some models have usage costs (check pricing)
- •Image reference features limited to specific models