# Choosing a Model

Framo runs many AI models. Every one is declared in the **model registry**
(`lib/fal-ai/models`), and each carries `guide` metadata — a `speed` badge
(`fast`/`medium`/`slow`), a `quality` badge (`standard`/`high`/`ultra`), and a
`bestFor` list. That registry is the source of truth for what exists and what
each model does. This doc is the **routing layer**: given a task, which family
to reach for. Deeper, model-specific prompting craft lives in the per-family
Model docs (Wan is the first — see Wan).

## The axes that matter

Pick along four axes, in order:

1. **Modality** — image, video, 3D, upscale/utility, or training. This narrows
   the field first.
2. **Input mode** — text-to-image, image-to-image, multi-reference, or
   start+end frame. A model only accepts the modes in its `compatibleModes`.
3. **Speed vs quality** — `fast`/`high` for iteration and drafts; `ultra` (often
   `medium`/`slow`) for finals, print, and hero shots.
4. **Cost** — video and 3D scale with duration / resolution; the **Generate**
   button always shows the exact credit cost before you commit.

## By task

### Generate an image from text

- **Nano Banana 2** (`fast`/`high`) — Google's fast text-to-image with
  resolution control. A strong default for everyday generation. See
  Nano Banana.
- **FLUX 2** (`fast`/`high`) and **FLUX Schnell** (`fast`/`high`) — fast FLUX
  options for quick drafts and iteration. See FLUX.
- **FLUX Ultra** (`medium`/`ultra`) and **FLUX Pro v1.1** (`medium`/`ultra`) —
  reach here for finals: 4× resolution, Raw mode for natural texture, large-format
  print. See FLUX.
- **GPT Image 2** (`medium`/`high`) — OpenAI's typography specialist; reach here
  when legible in-image text and strict prompt adherence matter. See
  GPT Image.

### Edit or composite an existing image (no mask)

- **Nano Banana Pro** (`medium`/`ultra`) — semantic multi-image editing, up to
  **14** input images, 1K/2K/4K. Best for character consistency and high-res
  compositing. See Nano Banana.
- **Seedream v4 Edit** (`medium`/`high`) — natural-language editing, up to **10**
  input images; background replacement, style and material changes. See
  Seedream.
- **Qwen Image Edit** (`medium`/`high`) — prompt-driven edits that work without a
  mask. See Qwen.
- **GPT Image 2 Edit** (`medium`/`high`) — fine-grained edits with excellent text
  rendering, multi-image reference, and native mask support. See
  GPT Image.

### Fill or inpaint a masked region

- **FLUX Pro v1 Fill** (`medium`/`ultra`) — inpainting for masked areas. See
  FLUX.
- **Z-Image Turbo Inpaint** (`fast`/`high`) — fast masked fill on the 6B turbo
  core, optionally LoRA-styled. See Z-Image.
- **GPT Image 2 Edit** (`medium`/`high`) — native mask inpainting with strong
  text rendering. See GPT Image.
- The **mask-injection** variants (Nano Banana / Nano Banana Pro / Nano Banana 2)
  apply a semantic edit confined to a drawn selection. See
  Nano Banana and [Image tools](/docs/product/image-tools).

### Animate a still (image-to-video)

- **Wan 2.6** (`medium`/`high`) — fast previews and **multi-shot narrative** from
  a single image (timestamped shot syntax). See Wan.
- **Veo 3.1 Lite** (`medium`/`high`) — Google's high-quality image-to-video with
  native audio and lip-sync, single start frame. See Veo.
- **Kling v3 Standard** (`medium`/`high`) — balanced; optional end frame and
  native audio. See Kling.
- **Seedance 2** (`medium`/`ultra`) — flagship cinematic motion; optional end
  frame and free synced audio. See Seedance.

### Transition or compose video

- **Smooth start→end:** **Kling v3 Standard** or **Seedance 2** (optional end
  frame); **Veo 3.1 Lite FLF** (`medium`/`high`) or **Wan 2.1 FLF2V**
  (`medium`/`standard`) for interpolation that requires *both* frames.
- **From many references:** **Seedance 2 Reference** (`medium`/`ultra`) — up to 9
  reference images and 3 reference videos.

See [Generating Videos](/docs/product/video) and the
[image-to-video playbook](/docs/playbooks/image-to-video).

### Image to 3D model

- **Trellis 2** (`medium`/`high`) — high-quality 3D from a single image. See
  Trellis.
- **Hyper3D Rodin v2 / v2.5** (`slow`/`ultra`) — production-ready models from
  reference images. See Hyper3D Rodin.
- **Hunyuan 3D Pro** (`slow`/`ultra`) — top-end quality. See
  Hunyuan 3D.

See the [3D scene editor](/docs/product/editor-3d).

### Upscale and utility

- **Topaz Upscale** (`fast`/`ultra`) — premium upscaling.
- **Bria Background Remove** (`fast`/`high`) — commercial-safe background removal.
- **Object Removal** (`fast`/`high`) — erase an object cleanly.
- **Qwen Multiple Angles** (`medium`/`high`) — new camera angles of a subject.
  See Qwen.

### Train a custom model

- **FLUX LoRA Fast Training** (`slow`/`high`) — fast LoRA training for FLUX. See
  FLUX.
- **Z-Image Trainer** (`medium`/`high`) — train a Z-Image Turbo LoRA. See
  Z-Image.

See [LoRA training](/docs/product/lora) and the
[train-a-LoRA playbook](/docs/playbooks/train-lora-compose).

## Keeping this honest

The model list and the `speed`/`quality`/`bestFor` facts above are mirrored from
the registry — re-verify against `lib/fal-ai/models` when you bump the
`timestamp`. The registry is canonical for parameters, resolutions, durations,
and pricing; this doc never restates those numbers. Per-family prompting craft
(how to get the most out of each model) lives in Models.
