diff --git a/.github/workflows/registry-refresh.yml b/.github/workflows/registry-refresh.yml
index 446542a..be1ba9a 100644
--- a/.github/workflows/registry-refresh.yml
+++ b/.github/workflows/registry-refresh.yml
@@ -23,6 +23,8 @@ jobs:
python-version: "3.11"
- name: Rebuild registry
run: python scripts/build_registry.py --out data/fal_registry.json
+ - name: Regenerate MODELS.md
+ run: python scripts/build_readme.py
- name: Summarize changes
id: diff
run: |
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..c5bbe03
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,93 @@
+# Contributing to ComfyUI-fal-API
+
+Thanks for helping! Before you write anything, read this — it will probably save you the PR entirely.
+
+## A new fal model does NOT need code
+
+Historically, adding a model to this pack meant hand-writing a node class. **That is no longer how it works.** Every live public model on fal gets a node automatically, generated at ComfyUI startup from the committed snapshot at `data/fal_registry.json`. No node class, no mapping entry, no code.
+
+The snapshot stays fresh two ways:
+
+- A **weekly GitHub Action** (`.github/workflows/registry-refresh.yml`) rebuilds the registry and opens a PR.
+- Anyone can run it locally: `python scripts/build_registry.py --out data/fal_registry.json` (then `python scripts/build_readme.py` to regenerate [MODELS.md](MODELS.md)).
+
+To check whether a model is already covered:
+
+```bash
+grep '"endpoint_id": "fal-ai/your/endpoint"' data/fal_registry.json
+# or browse MODELS.md, or search the node browser in ComfyUI
+```
+
+If a model is live on [fal.ai/models](https://fal.ai/models) but missing from the snapshot, rerun `scripts/build_registry.py` — if it's *still* missing, open an issue with the endpoint id. And if you need a model **right now**, the **Fal Any Endpoint (fal)** node calls any endpoint by id without any registry entry at all.
+
+So: **please don't open a PR that adds a node class for a new model.** It will be redundant the moment the registry refreshes.
+
+## Want a model promoted or renamed? Edit `data/featured_models.json`
+
+When a model deserves curation — a spot in the **FAL/Featured** menu tier or a friendlier display name — add its endpoint to `data/featured_models.json` (featured tier + display-name override). That's the whole change: one JSON entry, not a new node class.
+
+## When a hand-written node IS justified
+
+A curated node earns its place only when the generated node genuinely can't express the UX:
+
+- **Multi-endpoint orchestration** — one node fanning out to several endpoints (e.g. Combined Video Generation).
+- **Special input ergonomics** — first/last-frame image pairing, unified T2V/I2V dispatch, LoRA slots with per-slot scales.
+
+If you're writing one, the rules are non-negotiable:
+
+1. **Import only from the `.fal_utils` facade** (`from .fal_utils import ApiHandler, FalConfig, ImageUtils, ResultProcessor, ...`) — never reach into `nodes/utils/` internals or call `fal_client` directly. The facade gives you the result cache, spend guard, session ledger, and error handling for free.
+2. **Raise errors — no silent fallbacks.** Never return blank images or `"Error: ..."` strings; let `ApiHandler` surface fal's actual error message.
+3. **Tooltips on every input.** Users should never have to guess a parameter.
+4. **Never change existing node keys, input names, or output signatures.** Existing user workflows reference them forever. `tests/legacy_node_keys.json` is the snapshot of keys that must never be removed or renamed, and `tests/test_mappings.py` fails the suite if one disappears. New inputs must be optional with backward-compatible defaults.
+5. **Add tests** alongside the existing ones in `tests/`.
+
+## Dev setup
+
+```bash
+pip install -r requirements.txt
+python -m pytest tests # the suite MUST pass
+ruff check . # lint, same as CI
+```
+
+CI runs both on every PR (Python 3.10 and 3.12). The most important test to understand is the **compatibility snapshot**: `tests/test_mappings.py` asserts that every node key recorded in `tests/legacy_node_keys.json` still registers. If your change makes it fail, the fix is to restore the key — not to edit the snapshot.
+
+## Architecture map
+
+```
+scripts/build_registry.py queries fal's platform APIs → writes the snapshot
+data/fal_registry.json committed model catalog (~1,391 models)
+data/featured_models.json curation: featured tier + display-name overrides
+scripts/build_readme.py renders MODELS.md from the snapshot
+
+nodes/dynamic/ the auto-generated node machinery
+ registry_loader.py reads the snapshot, applies [dynamic_nodes] config;
+ never raises — failures degrade to curated-only
+ factory.py builds one node class per model, in memory
+ schema_to_inputs.py registry input specs → ComfyUI INPUT_TYPES (+ tooltips)
+ arguments.py widget/socket values → API arguments (uploads media)
+ outputs.py API result → IMAGE / VIDEO / AUDIO / result_json
+ any_endpoint.py the generic "call any endpoint by id" node
+
+nodes/*.py curated hand-written nodes (image, video, llm, vlm,
+ trainer, upscaler, util_*)
+nodes/fal_utils.py import facade — node modules import ONLY from here
+nodes/utils/ the implementations behind the facade: api, config,
+ pricing, result_cache, ledger, billing (spend guard),
+ job_store, media, archive, errors, logger
+nodes/platform_node.py platform nodes (Submit/Collect, costs, request ids)
+nodes/inbox_node.py durable job inbox
+nodes/billing_node.py account balance
+nodes/server_routes.py HTTP endpoints backing the frontend extension
+web/ ComfyUI frontend: cost badges, fal sidebar,
+ endpoint autocomplete
+tests/ pytest suite, incl. the legacy_node_keys.json snapshot
+```
+
+## PR checklist
+
+- [ ] Not a hand-written node for a single new model (registry covers it — see above)
+- [ ] `python -m pytest tests` passes locally
+- [ ] `ruff check .` is clean
+- [ ] No existing node keys, inputs, or outputs changed
+- [ ] New curated node (if truly justified): uses `.fal_utils`, raises errors, has tooltips and tests
+- [ ] No secrets, no `config.ini`, no generated artifacts in the diff
diff --git a/MODELS.md b/MODELS.md
new file mode 100644
index 0000000..d2a9f2b
--- /dev/null
+++ b/MODELS.md
@@ -0,0 +1,1613 @@
+# fal Model Catalog — auto-generated
+
+Every auto-generated model node in [ComfyUI-fal-API](README.md), grouped by
+category (largest first). Click a category to expand it.
+
+Do not edit this file by hand — refresh `data/fal_registry.json` with
+`python scripts/build_registry.py`, then regenerate this catalog with
+`python scripts/build_readme.py`.
+
+
+
+1391 models · newest model 2026-07-01 · refresh with `scripts/build_registry.py`
+
+
+image-to-image — 376 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Age Modify | [`fal-ai/image-apps-v2/age-modify`](https://fal.ai/models/fal-ai/image-apps-v2/age-modify) | — | images |
+| AuraSR | [`fal-ai/aura-sr`](https://fal.ai/models/fal-ai/aura-sr) | — | image |
+| Bagel | [`fal-ai/bagel/edit`](https://fal.ai/models/fal-ai/bagel/edit) | — | images |
+| ben-v2-image | [`fal-ai/ben/v2/image`](https://fal.ai/models/fal-ai/ben/v2/image) | — | image |
+| Bernini-R Edit Image | [`fal-ai/bernini-r/edit-image`](https://fal.ai/models/fal-ai/bernini-r/edit-image) | Bytedance | image |
+| Birefnet Background Removal | [`fal-ai/birefnet`](https://fal.ai/models/fal-ai/birefnet) | — | image |
+| Birefnet Background Removal V2 | [`fal-ai/birefnet/v2`](https://fal.ai/models/fal-ai/birefnet/v2) | — | image |
+| Boogu Image | [`fal-ai/boogu-image/edit`](https://fal.ai/models/fal-ai/boogu-image/edit) | — | images |
+| Bria | [`fal-ai/bria/reimagine`](https://fal.ai/models/fal-ai/bria/reimagine) | Bria AI | images |
+| Bria Background Replace | [`fal-ai/bria/background/replace`](https://fal.ai/models/fal-ai/bria/background/replace) | Bria AI | images |
+| Bria Eraser | [`fal-ai/bria/eraser`](https://fal.ai/models/fal-ai/bria/eraser) | Bria AI | image |
+| Bria Expand Image | [`fal-ai/bria/expand`](https://fal.ai/models/fal-ai/bria/expand) | Bria AI | image |
+| Bria GenFill | [`fal-ai/bria/genfill`](https://fal.ai/models/fal-ai/bria/genfill) | Bria AI | images |
+| Bria Product Shot | [`fal-ai/bria/product-shot`](https://fal.ai/models/fal-ai/bria/product-shot) | Bria AI | images |
+| Bria RMBG 2.0 | [`fal-ai/bria/background/remove`](https://fal.ai/models/fal-ai/bria/background/remove) | Bria AI | image |
+| Bytedance Seedream V4 Edit | [`fal-ai/bytedance/seedream/v4/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v4/edit) | Bytedance | images |
+| Bytedance Seedream V4.5 Edit | [`fal-ai/bytedance/seedream/v4.5/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v4.5/edit) | Bytedance | images |
+| Bytedance Seedream V5 Lite Edit | [`fal-ai/bytedance/seedream/v5/lite/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v5/lite/edit) | Bytedance | images |
+| Cartoonify | [`fal-ai/cartoonify`](https://fal.ai/models/fal-ai/cartoonify) | — | images |
+| CCSR Upscaler | [`fal-ai/ccsr`](https://fal.ai/models/fal-ai/ccsr) | — | image |
+| Chrono Edit | [`fal-ai/chrono-edit`](https://fal.ai/models/fal-ai/chrono-edit) | — | images |
+| Chrono Edit Lora | [`fal-ai/chrono-edit-lora`](https://fal.ai/models/fal-ai/chrono-edit-lora) | — | images |
+| Chrono Edit Lora Gallery | [`fal-ai/chrono-edit-lora-gallery/paintbrush`](https://fal.ai/models/fal-ai/chrono-edit-lora-gallery/paintbrush) | — | images |
+| Chrono Edit Lora Gallery | [`fal-ai/chrono-edit-lora-gallery/upscaler`](https://fal.ai/models/fal-ai/chrono-edit-lora-gallery/upscaler) | — | images |
+| City Teleport | [`fal-ai/image-apps-v2/city-teleport`](https://fal.ai/models/fal-ai/image-apps-v2/city-teleport) | — | images |
+| Clarity Upscaler | [`fal-ai/clarity-upscaler`](https://fal.ai/models/fal-ai/clarity-upscaler) | Clarity AI | image |
+| CodeFormer | [`fal-ai/codeformer`](https://fal.ai/models/fal-ai/codeformer) | — | image |
+| ControlLight | [`fal-ai/control-light`](https://fal.ai/models/fal-ai/control-light) | — | images |
+| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny/image-to-image`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny/image-to-image) | — | images |
+| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny/inpainting`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny/inpainting) | — | images |
+| Creative Upscaler | [`fal-ai/creative-upscaler`](https://fal.ai/models/fal-ai/creative-upscaler) | — | image |
+| Crystal Upscaler | [`clarityai/crystal-upscaler`](https://fal.ai/models/clarityai/crystal-upscaler) | Clarity AI | images |
+| DDColor | [`fal-ai/ddcolor`](https://fal.ai/models/fal-ai/ddcolor) | — | image |
+| DocRes | [`fal-ai/docres`](https://fal.ai/models/fal-ai/docres) | — | image |
+| DocRes-dewarp | [`fal-ai/docres/dewarp`](https://fal.ai/models/fal-ai/docres/dewarp) | — | image |
+| DRCT-Super-Resolution | [`fal-ai/drct-super-resolution`](https://fal.ai/models/fal-ai/drct-super-resolution) | — | image |
+| DreamOmni2 | [`fal-ai/dreamomni2/edit`](https://fal.ai/models/fal-ai/dreamomni2/edit) | — | image |
+| DWPose Pose Prediction | [`fal-ai/dwpose`](https://fal.ai/models/fal-ai/dwpose) | — | image |
+| Embed Product | [`bria/embed-product`](https://fal.ai/models/bria/embed-product) | Bria AI | json |
+| Emu 3.5 Image | [`fal-ai/emu-3.5-image/edit-image`](https://fal.ai/models/fal-ai/emu-3.5-image/edit-image) | — | images |
+| EVF-SAM2 Segmentation | [`fal-ai/evf-sam`](https://fal.ai/models/fal-ai/evf-sam) | — | image |
+| Expression Change | [`fal-ai/image-apps-v2/expression-change`](https://fal.ai/models/fal-ai/image-apps-v2/expression-change) | — | images |
+| Extract Object | [`bria/extract-object`](https://fal.ai/models/bria/extract-object) | Bria AI | image |
+| Face Retoucher | [`fal-ai/retoucher`](https://fal.ai/models/fal-ai/retoucher) | — | image |
+| FASHN Virtual Try-On V1.5 | [`fal-ai/fashn/tryon/v1.5`](https://fal.ai/models/fal-ai/fashn/tryon/v1.5) | Fashn | images |
+| FASHN Virtual Try-On V1.6 | [`fal-ai/fashn/tryon/v1.6`](https://fal.ai/models/fal-ai/fashn/tryon/v1.6) | Fashn | images |
+| Ffmpeg Api | [`fal-ai/ffmpeg-api/extract-frame`](https://fal.ai/models/fal-ai/ffmpeg-api/extract-frame) | — | images |
+| Fibo Edit | [`bria/fibo-edit/edit`](https://fal.ai/models/bria/fibo-edit/edit) | Bria AI | images |
+| Fibo Edit [Add Object by Text] | [`bria/fibo-edit/add_object_by_text`](https://fal.ai/models/bria/fibo-edit/add_object_by_text) | Bria AI | images |
+| Fibo Edit [Blend] | [`bria/fibo-edit/blend`](https://fal.ai/models/bria/fibo-edit/blend) | Bria AI | images |
+| Fibo Edit [Colorize] | [`bria/fibo-edit/colorize`](https://fal.ai/models/bria/fibo-edit/colorize) | Bria AI | images |
+| Fibo Edit [Erase by Text] | [`bria/fibo-edit/erase_by_text`](https://fal.ai/models/bria/fibo-edit/erase_by_text) | Bria AI | images |
+| Fibo Edit [Relight] | [`bria/fibo-edit/relight`](https://fal.ai/models/bria/fibo-edit/relight) | Bria AI | images |
+| Fibo Edit [Replace Object by Text] | [`bria/fibo-edit/replace_object_by_text`](https://fal.ai/models/bria/fibo-edit/replace_object_by_text) | Bria AI | images |
+| Fibo Edit [Reseason] | [`bria/fibo-edit/reseason`](https://fal.ai/models/bria/fibo-edit/reseason) | Bria AI | images |
+| Fibo Edit [Restore] | [`bria/fibo-edit/restore`](https://fal.ai/models/bria/fibo-edit/restore) | Bria AI | images |
+| Fibo Edit [Restyle] | [`bria/fibo-edit/restyle`](https://fal.ai/models/bria/fibo-edit/restyle) | Bria AI | images |
+| Fibo Edit [Rewrite Text] | [`bria/fibo-edit/rewrite_text`](https://fal.ai/models/bria/fibo-edit/rewrite_text) | Bria AI | images |
+| Fibo Edit [Sketch to Image] | [`bria/fibo-edit/sketch_to_colored_image`](https://fal.ai/models/bria/fibo-edit/sketch_to_colored_image) | Bria AI | images |
+| FILM | [`fal-ai/film`](https://fal.ai/models/fal-ai/film) | — | images |
+| Finegrain Eraser | [`fal-ai/finegrain-eraser`](https://fal.ai/models/fal-ai/finegrain-eraser) | Finegrain | image |
+| Finegrain Eraser Bbox | [`fal-ai/finegrain-eraser/bbox`](https://fal.ai/models/fal-ai/finegrain-eraser/bbox) | Finegrain | image |
+| Finegrain Eraser Mask | [`fal-ai/finegrain-eraser/mask`](https://fal.ai/models/fal-ai/finegrain-eraser/mask) | Finegrain | image |
+| Firered Image Edit | [`fal-ai/firered-image-edit`](https://fal.ai/models/fal-ai/firered-image-edit) | — | images |
+| Firered Image Edit V1.1 | [`fal-ai/firered-image-edit-v1.1`](https://fal.ai/models/fal-ai/firered-image-edit-v1.1) | FireRed | images |
+| Florence-2 Large | [`fal-ai/florence-2-large/caption-to-phrase-grounding`](https://fal.ai/models/fal-ai/florence-2-large/caption-to-phrase-grounding) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/dense-region-caption`](https://fal.ai/models/fal-ai/florence-2-large/dense-region-caption) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/object-detection`](https://fal.ai/models/fal-ai/florence-2-large/object-detection) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/ocr-with-region`](https://fal.ai/models/fal-ai/florence-2-large/ocr-with-region) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/open-vocabulary-detection`](https://fal.ai/models/fal-ai/florence-2-large/open-vocabulary-detection) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/referring-expression-segmentation`](https://fal.ai/models/fal-ai/florence-2-large/referring-expression-segmentation) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/region-proposal`](https://fal.ai/models/fal-ai/florence-2-large/region-proposal) | — | image |
+| Florence-2 Large | [`fal-ai/florence-2-large/region-to-segmentation`](https://fal.ai/models/fal-ai/florence-2-large/region-to-segmentation) | — | image |
+| Flow-Edit | [`fal-ai/flowedit`](https://fal.ai/models/fal-ai/flowedit) | — | image |
+| Flux 2 [klein] Realtime | [`fal-ai/flux-2/klein/realtime`](https://fal.ai/models/fal-ai/flux-2/klein/realtime) | Black Forest Labs | images |
+| FLUX 2 Edit | [`fal-ai/flux-2/edit`](https://fal.ai/models/fal-ai/flux-2/edit) | Black Forest Labs | images |
+| FLUX 2 Flash Edit | [`fal-ai/flux-2/flash/edit`](https://fal.ai/models/fal-ai/flux-2/flash/edit) | Black Forest Labs | images |
+| Flux 2 Flex | [`fal-ai/flux-2-flex/edit`](https://fal.ai/models/fal-ai/flux-2-flex/edit) | Black Forest Labs | images |
+| FLUX 2 Lora Edit | [`fal-ai/flux-2/lora/edit`](https://fal.ai/models/fal-ai/flux-2/lora/edit) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/add-background`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/add-background) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/apartment-staging`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/apartment-staging) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/face-to-full-portrait) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/multiple-angles) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/virtual-tryon`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/virtual-tryon) | Black Forest Labs | images |
+| Flux 2 Max | [`fal-ai/flux-2-max/edit`](https://fal.ai/models/fal-ai/flux-2-max/edit) | Black Forest Labs | images |
+| FLUX 2 Pro Edit | [`fal-ai/flux-2-pro/edit`](https://fal.ai/models/fal-ai/flux-2-pro/edit) | Black Forest Labs | images |
+| FLUX 2 Pro Outpaint | [`fal-ai/flux-2-pro/outpaint`](https://fal.ai/models/fal-ai/flux-2-pro/outpaint) | Black Forest Labs | images |
+| FLUX 2 Turbo Edit | [`fal-ai/flux-2/turbo/edit`](https://fal.ai/models/fal-ai/flux-2/turbo/edit) | Black Forest Labs | images |
+| Flux Kontext Lora | [`fal-ai/flux-kontext-lora`](https://fal.ai/models/fal-ai/flux-kontext-lora) | Black Forest Labs | images |
+| Flux Kontext Lora | [`fal-ai/flux-kontext-lora/inpaint`](https://fal.ai/models/fal-ai/flux-kontext-lora/inpaint) | Black Forest Labs | images |
+| Flux Pro Erase | [`fal-ai/flux-pro/v1/erase`](https://fal.ai/models/fal-ai/flux-pro/v1/erase) | Black Forest Labs | images |
+| FLUX Virtual Try-On | [`fal-ai/flux-pro/v1/vto`](https://fal.ai/models/fal-ai/flux-pro/v1/vto) | Black Forest Labs | images |
+| Flux Vision Upscaler | [`fal-ai/flux-vision-upscaler`](https://fal.ai/models/fal-ai/flux-vision-upscaler) | Black Forest Labs | image |
+| FLUX.1 [dev] | [`fal-ai/flux-1/dev/image-to-image`](https://fal.ai/models/fal-ai/flux-1/dev/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [dev] | [`fal-ai/flux/dev/image-to-image`](https://fal.ai/models/fal-ai/flux/dev/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [dev] Canny with LoRAs | [`fal-ai/flux-lora-canny`](https://fal.ai/models/fal-ai/flux-lora-canny) | Black Forest Labs | images |
+| FLUX.1 [dev] Control LoRA Canny | [`fal-ai/flux-control-lora-canny/image-to-image`](https://fal.ai/models/fal-ai/flux-control-lora-canny/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [dev] Control LoRA Depth | [`fal-ai/flux-control-lora-depth/image-to-image`](https://fal.ai/models/fal-ai/flux-control-lora-depth/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [dev] Depth with LoRAs | [`fal-ai/flux-lora-depth`](https://fal.ai/models/fal-ai/flux-lora-depth) | Black Forest Labs | images |
+| FLUX.1 [dev] Fill with LoRAs | [`fal-ai/flux-lora-fill`](https://fal.ai/models/fal-ai/flux-lora-fill) | Black Forest Labs | images |
+| FLUX.1 [dev] Redux | [`fal-ai/flux-1/dev/redux`](https://fal.ai/models/fal-ai/flux-1/dev/redux) | Black Forest Labs | images |
+| FLUX.1 [dev] Redux | [`fal-ai/flux/dev/redux`](https://fal.ai/models/fal-ai/flux/dev/redux) | Black Forest Labs | images |
+| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/differential-diffusion`](https://fal.ai/models/fal-ai/flux-general/differential-diffusion) | Black Forest Labs | images |
+| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/image-to-image`](https://fal.ai/models/fal-ai/flux-general/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/inpainting`](https://fal.ai/models/fal-ai/flux-general/inpainting) | Black Forest Labs | images |
+| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/rf-inversion`](https://fal.ai/models/fal-ai/flux-general/rf-inversion) | Black Forest Labs | images |
+| FLUX.1 [dev] with LoRAs | [`fal-ai/flux-lora/image-to-image`](https://fal.ai/models/fal-ai/flux-lora/image-to-image) | Black Forest Labs | images |
+| FLUX.1 [pro] Fill | [`fal-ai/flux-pro/v1/fill`](https://fal.ai/models/fal-ai/flux-pro/v1/fill) | Black Forest Labs | images |
+| FLUX.1 [pro] Fill Fine-tuned | [`fal-ai/flux-pro/v1/fill-finetuned`](https://fal.ai/models/fal-ai/flux-pro/v1/fill-finetuned) | Black Forest Labs | images |
+| FLUX.1 [schnell] Redux | [`fal-ai/flux-1/schnell/redux`](https://fal.ai/models/fal-ai/flux-1/schnell/redux) | Black Forest Labs | images |
+| FLUX.1 [schnell] Redux | [`fal-ai/flux/schnell/redux`](https://fal.ai/models/fal-ai/flux/schnell/redux) | Black Forest Labs | images |
+| FLUX.1 Kontext [dev] | [`fal-ai/flux-kontext/dev`](https://fal.ai/models/fal-ai/flux-kontext/dev) | Black Forest Labs | images |
+| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max`](https://fal.ai/models/fal-ai/flux-pro/kontext/max) | Black Forest Labs | images |
+| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max/multi`](https://fal.ai/models/fal-ai/flux-pro/kontext/max/multi) | Black Forest Labs | images |
+| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext`](https://fal.ai/models/fal-ai/flux-pro/kontext) | Black Forest Labs | images |
+| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext/multi`](https://fal.ai/models/fal-ai/flux-pro/kontext/multi) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] | [`fal-ai/flux-1/krea/image-to-image`](https://fal.ai/models/fal-ai/flux-1/krea/image-to-image) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] | [`fal-ai/flux/krea/image-to-image`](https://fal.ai/models/fal-ai/flux/krea/image-to-image) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] Inpainting with LoRAs | [`fal-ai/flux-krea-lora/inpainting`](https://fal.ai/models/fal-ai/flux-krea-lora/inpainting) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] Redux | [`fal-ai/flux-1/krea/redux`](https://fal.ai/models/fal-ai/flux-1/krea/redux) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] Redux | [`fal-ai/flux/krea/redux`](https://fal.ai/models/fal-ai/flux/krea/redux) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] with LoRAs | [`fal-ai/flux-krea-lora/image-to-image`](https://fal.ai/models/fal-ai/flux-krea-lora/image-to-image) | Black Forest Labs | images |
+| FLUX.1 SRPO [dev] | [`fal-ai/flux-1/srpo/image-to-image`](https://fal.ai/models/fal-ai/flux-1/srpo/image-to-image) | Black Forest Labs | images |
+| FLUX.1 SRPO [dev] | [`fal-ai/flux/srpo/image-to-image`](https://fal.ai/models/fal-ai/flux/srpo/image-to-image) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B | [`fal-ai/flux-2/klein/4b/edit`](https://fal.ai/models/fal-ai/flux-2/klein/4b/edit) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B Base | [`fal-ai/flux-2/klein/4b/base/edit`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/edit) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B Base LoRA | [`fal-ai/flux-2/klein/4b/base/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/edit/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B LoRA | [`fal-ai/flux-2/klein/4b/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/edit/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B | [`fal-ai/flux-2/klein/9b/edit`](https://fal.ai/models/fal-ai/flux-2/klein/9b/edit) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B Base | [`fal-ai/flux-2/klein/9b/base/edit`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/edit) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B Base LoRA | [`fal-ai/flux-2/klein/9b/base/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/edit/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B LoRA | [`fal-ai/flux-2/klein/9b/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/edit/lora) | Black Forest Labs | images |
+| FLUX1.1 [pro] Redux | [`fal-ai/flux-pro/v1.1/redux`](https://fal.ai/models/fal-ai/flux-pro/v1.1/redux) | Black Forest Labs | images |
+| FLUX1.1 [pro] ultra Redux | [`fal-ai/flux-pro/v1.1-ultra/redux`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra/redux) | Black Forest Labs | images |
+| Gemini 2.5 Flash Image | [`fal-ai/gemini-25-flash-image/edit`](https://fal.ai/models/fal-ai/gemini-25-flash-image/edit) | Google | images |
+| Gemini 3 Pro Image Preview | [`fal-ai/gemini-3-pro-image-preview/edit`](https://fal.ai/models/fal-ai/gemini-3-pro-image-preview/edit) | Google | images |
+| Gemini 3.1 Flash Image Preview | [`fal-ai/gemini-3.1-flash-image-preview/edit`](https://fal.ai/models/fal-ai/gemini-3.1-flash-image-preview/edit) | Google | images |
+| Genfill | [`bria/genfill/v2`](https://fal.ai/models/bria/genfill/v2) | — | images |
+| Ghiblify Images | [`fal-ai/ghiblify`](https://fal.ai/models/fal-ai/ghiblify) | — | image |
+| Glm Image | [`fal-ai/glm-image/image-to-image`](https://fal.ai/models/fal-ai/glm-image/image-to-image) | — | images |
+| GPT Image 1 Mini | [`fal-ai/gpt-image-1-mini/edit`](https://fal.ai/models/fal-ai/gpt-image-1-mini/edit) | OpenAI | images |
+| GPT Image 2 API | [`openai/gpt-image-2/edit`](https://fal.ai/models/openai/gpt-image-2/edit) | OpenAI | images |
+| GPT-Image 1.5 | [`fal-ai/gpt-image-1.5/edit`](https://fal.ai/models/fal-ai/gpt-image-1.5/edit) | OpenAI | images |
+| gpt-image-1 | [`fal-ai/gpt-image-1/edit-image`](https://fal.ai/models/fal-ai/gpt-image-1/edit-image) | OpenAI | images |
+| Grok Imagine Image | [`xai/grok-imagine-image/edit`](https://fal.ai/models/xai/grok-imagine-image/edit) | xAI | images |
+| Grok Imagine Image Editing Quality | [`xai/grok-imagine-image/quality/edit`](https://fal.ai/models/xai/grok-imagine-image/quality/edit) | xAI | images |
+| Hair Change | [`fal-ai/image-apps-v2/hair-change`](https://fal.ai/models/fal-ai/image-apps-v2/hair-change) | — | images |
+| Headshot Generator | [`fal-ai/image-apps-v2/headshot-photo`](https://fal.ai/models/fal-ai/image-apps-v2/headshot-photo) | — | images |
+| Hidream I1 Full | [`fal-ai/hidream-i1-full/image-to-image`](https://fal.ai/models/fal-ai/hidream-i1-full/image-to-image) | Hidream | images |
+| Hidream O1 Image | [`fal-ai/hidream-o1-image/dev/edit`](https://fal.ai/models/fal-ai/hidream-o1-image/dev/edit) | Hidream | images |
+| Hidream O1 Image | [`fal-ai/hidream-o1-image/edit`](https://fal.ai/models/fal-ai/hidream-o1-image/edit) | Hidream | images |
+| Hunyuan Image | [`fal-ai/hunyuan-image/v3/instruct/edit`](https://fal.ai/models/fal-ai/hunyuan-image/v3/instruct/edit) | Tencent | images |
+| Hunyuan World | [`fal-ai/hunyuan_world`](https://fal.ai/models/fal-ai/hunyuan_world) | Tencent | image |
+| Hy Wu Edit | [`fal-ai/hy-wu-edit`](https://fal.ai/models/fal-ai/hy-wu-edit) | — | images |
+| IC-Light-v2 for Image Relighting | [`fal-ai/iclight-v2`](https://fal.ai/models/fal-ai/iclight-v2) | — | images |
+| Ideogram | [`fal-ai/ideogram/v3/layerize-text`](https://fal.ai/models/fal-ai/ideogram/v3/layerize-text) | Ideogram | image |
+| Ideogram | [`fal-ai/ideogram/v3/reframe`](https://fal.ai/models/fal-ai/ideogram/v3/reframe) | Ideogram | images |
+| Ideogram | [`fal-ai/ideogram/v3/remix`](https://fal.ai/models/fal-ai/ideogram/v3/remix) | Ideogram | images |
+| Ideogram Remove Background | [`fal-ai/ideogram/remove-background`](https://fal.ai/models/fal-ai/ideogram/remove-background) | Ideogram | image |
+| Ideogram Replace Background | [`fal-ai/ideogram/v3/replace-background`](https://fal.ai/models/fal-ai/ideogram/v3/replace-background) | Ideogram | images |
+| Ideogram Upscale | [`fal-ai/ideogram/upscale`](https://fal.ai/models/fal-ai/ideogram/upscale) | Ideogram | images |
+| Ideogram V2 Edit | [`fal-ai/ideogram/v2/edit`](https://fal.ai/models/fal-ai/ideogram/v2/edit) | Ideogram | images |
+| Ideogram V2 Remix | [`fal-ai/ideogram/v2/remix`](https://fal.ai/models/fal-ai/ideogram/v2/remix) | Ideogram | images |
+| Ideogram V2 Turbo Edit | [`fal-ai/ideogram/v2/turbo/edit`](https://fal.ai/models/fal-ai/ideogram/v2/turbo/edit) | Ideogram | images |
+| Ideogram V2 Turbo Remix | [`fal-ai/ideogram/v2/turbo/remix`](https://fal.ai/models/fal-ai/ideogram/v2/turbo/remix) | Ideogram | images |
+| Ideogram V2A Remix | [`fal-ai/ideogram/v2a/remix`](https://fal.ai/models/fal-ai/ideogram/v2a/remix) | Ideogram | images |
+| Ideogram V2A Turbo Remix | [`fal-ai/ideogram/v2a/turbo/remix`](https://fal.ai/models/fal-ai/ideogram/v2a/turbo/remix) | Ideogram | images |
+| Ideogram V3 Character | [`fal-ai/ideogram/character`](https://fal.ai/models/fal-ai/ideogram/character) | Ideogram | images |
+| Ideogram V3 Character Edit | [`fal-ai/ideogram/character/edit`](https://fal.ai/models/fal-ai/ideogram/character/edit) | Ideogram | images |
+| Ideogram V3 Character Remix | [`fal-ai/ideogram/character/remix`](https://fal.ai/models/fal-ai/ideogram/character/remix) | Ideogram | images |
+| Ideogram V3 Edit | [`fal-ai/ideogram/v3/edit`](https://fal.ai/models/fal-ai/ideogram/v3/edit) | Ideogram | images |
+| Ideogram V4.0q Image to Image | [`ideogram/v4/image-to-image`](https://fal.ai/models/ideogram/v4/image-to-image) | Ideogram | images |
+| Ideogram V4.0q Image to Image LoRA | [`ideogram/v4/image-to-image/lora`](https://fal.ai/models/ideogram/v4/image-to-image/lora) | Ideogram | images |
+| Ideogram V4.0q Tiling | [`ideogram/v4/tiling`](https://fal.ai/models/ideogram/v4/tiling) | Ideogram | images |
+| Ideogram V4.0q Tiling LoRA | [`ideogram/v4/tiling/lora`](https://fal.ai/models/ideogram/v4/tiling/lora) | Ideogram | images |
+| Image Editing | [`fal-ai/image-editing/baby-version`](https://fal.ai/models/fal-ai/image-editing/baby-version) | — | images |
+| Image Editing Age Progression | [`fal-ai/image-editing/age-progression`](https://fal.ai/models/fal-ai/image-editing/age-progression) | — | images |
+| Image Editing Background Change | [`fal-ai/image-editing/background-change`](https://fal.ai/models/fal-ai/image-editing/background-change) | — | images |
+| Image Editing Broccoli Haircut | [`fal-ai/image-editing/broccoli-haircut`](https://fal.ai/models/fal-ai/image-editing/broccoli-haircut) | — | images |
+| Image Editing Cartoonify | [`fal-ai/image-editing/cartoonify`](https://fal.ai/models/fal-ai/image-editing/cartoonify) | — | images |
+| Image Editing Color Correction | [`fal-ai/image-editing/color-correction`](https://fal.ai/models/fal-ai/image-editing/color-correction) | — | images |
+| Image Editing Expression Change | [`fal-ai/image-editing/expression-change`](https://fal.ai/models/fal-ai/image-editing/expression-change) | — | images |
+| Image Editing Face Enhancement | [`fal-ai/image-editing/face-enhancement`](https://fal.ai/models/fal-ai/image-editing/face-enhancement) | — | images |
+| Image Editing Hair Change | [`fal-ai/image-editing/hair-change`](https://fal.ai/models/fal-ai/image-editing/hair-change) | — | images |
+| Image Editing Object Removal | [`fal-ai/image-editing/object-removal`](https://fal.ai/models/fal-ai/image-editing/object-removal) | — | images |
+| Image Editing Photo Restoration | [`fal-ai/image-editing/photo-restoration`](https://fal.ai/models/fal-ai/image-editing/photo-restoration) | — | images |
+| Image Editing Plushie Style | [`fal-ai/image-editing/plushie-style`](https://fal.ai/models/fal-ai/image-editing/plushie-style) | — | images |
+| Image Editing Professional Photo | [`fal-ai/image-editing/professional-photo`](https://fal.ai/models/fal-ai/image-editing/professional-photo) | — | images |
+| Image Editing Realism | [`fal-ai/image-editing/realism`](https://fal.ai/models/fal-ai/image-editing/realism) | — | images |
+| Image Editing Reframe | [`fal-ai/image-editing/reframe`](https://fal.ai/models/fal-ai/image-editing/reframe) | — | images |
+| Image Editing Retouch | [`fal-ai/image-editing/retouch`](https://fal.ai/models/fal-ai/image-editing/retouch) | — | images |
+| Image Editing Scene Composition | [`fal-ai/image-editing/scene-composition`](https://fal.ai/models/fal-ai/image-editing/scene-composition) | — | images |
+| Image Editing Style Transfer | [`fal-ai/image-editing/style-transfer`](https://fal.ai/models/fal-ai/image-editing/style-transfer) | — | images |
+| Image Editing Text Removal | [`fal-ai/image-editing/text-removal`](https://fal.ai/models/fal-ai/image-editing/text-removal) | — | images |
+| Image Editing Time Of Day | [`fal-ai/image-editing/time-of-day`](https://fal.ai/models/fal-ai/image-editing/time-of-day) | — | images |
+| Image Editing Weather Effect | [`fal-ai/image-editing/weather-effect`](https://fal.ai/models/fal-ai/image-editing/weather-effect) | — | images |
+| Image Editing Wojak Style | [`fal-ai/image-editing/wojak-style`](https://fal.ai/models/fal-ai/image-editing/wojak-style) | — | images |
+| Image Editing Youtube Thumbnails | [`fal-ai/image-editing/youtube-thumbnails`](https://fal.ai/models/fal-ai/image-editing/youtube-thumbnails) | — | images |
+| Image Outpaint | [`fal-ai/image-apps-v2/outpaint`](https://fal.ai/models/fal-ai/image-apps-v2/outpaint) | — | images |
+| Image Preprocessors | [`fal-ai/image-preprocessors/depth-anything/v2`](https://fal.ai/models/fal-ai/image-preprocessors/depth-anything/v2) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/hed`](https://fal.ai/models/fal-ai/image-preprocessors/hed) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/lineart`](https://fal.ai/models/fal-ai/image-preprocessors/lineart) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/midas`](https://fal.ai/models/fal-ai/image-preprocessors/midas) | — | json |
+| Image Preprocessors | [`fal-ai/image-preprocessors/mlsd`](https://fal.ai/models/fal-ai/image-preprocessors/mlsd) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/pidi`](https://fal.ai/models/fal-ai/image-preprocessors/pidi) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/sam`](https://fal.ai/models/fal-ai/image-preprocessors/sam) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/scribble`](https://fal.ai/models/fal-ai/image-preprocessors/scribble) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/teed`](https://fal.ai/models/fal-ai/image-preprocessors/teed) | — | image |
+| Image Preprocessors | [`fal-ai/image-preprocessors/zoe`](https://fal.ai/models/fal-ai/image-preprocessors/zoe) | — | image |
+| Image2Pixel | [`fal-ai/image2pixel`](https://fal.ai/models/fal-ai/image2pixel) | — | images |
+| Image2svg | [`fal-ai/image2svg`](https://fal.ai/models/fal-ai/image2svg) | — | images |
+| Imagineart 2.0 Edit Preview | [`imagineart/imagineart-2.0-edit-preview/image-to-image`](https://fal.ai/models/imagineart/imagineart-2.0-edit-preview/image-to-image) | — | images |
+| Inpainting sdxl and sd | [`fal-ai/inpaint`](https://fal.ai/models/fal-ai/inpaint) | — | image |
+| Instant Character | [`fal-ai/instant-character`](https://fal.ai/models/fal-ai/instant-character) | — | images |
+| Invisible Watermark | [`fal-ai/invisible-watermark`](https://fal.ai/models/fal-ai/invisible-watermark) | — | image |
+| IP Adapter Face ID | [`fal-ai/ip-adapter-face-id`](https://fal.ai/models/fal-ai/ip-adapter-face-id) | — | image |
+| Joyai Image Edit | [`fal-ai/joyai-image-edit`](https://fal.ai/models/fal-ai/joyai-image-edit) | — | images |
+| Juggernaut Flux Base | [`rundiffusion-fal/juggernaut-flux/base/image-to-image`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/base/image-to-image) | Rundiffusion | images |
+| Juggernaut Flux Lora | [`rundiffusion-fal/juggernaut-flux-lora/inpainting`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux-lora/inpainting) | Rundiffusion | images |
+| Juggernaut Flux Pro | [`rundiffusion-fal/juggernaut-flux/pro/image-to-image`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/pro/image-to-image) | Rundiffusion | images |
+| Kling Image | [`fal-ai/kling-image/o3/image-to-image`](https://fal.ai/models/fal-ai/kling-image/o3/image-to-image) | Kling | images |
+| Kling Image | [`fal-ai/kling-image/v3/image-to-image`](https://fal.ai/models/fal-ai/kling-image/v3/image-to-image) | Kling | images |
+| Kling Kolors Virtual TryOn v1.5 | [`fal-ai/kling/v1-5/kolors-virtual-try-on`](https://fal.ai/models/fal-ai/kling/v1-5/kolors-virtual-try-on) | Kling | image |
+| Kling O1 Image | [`fal-ai/kling-image/o1`](https://fal.ai/models/fal-ai/kling-image/o1) | Kling | images |
+| Kolors Image to Image | [`fal-ai/kolors/image-to-image`](https://fal.ai/models/fal-ai/kolors/image-to-image) | — | images |
+| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion/image-to-image`](https://fal.ai/models/fal-ai/fast-lcm-diffusion/image-to-image) | — | images |
+| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion/inpainting`](https://fal.ai/models/fal-ai/fast-lcm-diffusion/inpainting) | — | images |
+| Leffa Pose Transfer | [`fal-ai/leffa/pose-transfer`](https://fal.ai/models/fal-ai/leffa/pose-transfer) | — | image |
+| Leffa Virtual TryOn | [`fal-ai/leffa/virtual-tryon`](https://fal.ai/models/fal-ai/leffa/virtual-tryon) | — | image |
+| Live Portrait | [`fal-ai/live-portrait/image`](https://fal.ai/models/fal-ai/live-portrait/image) | — | image |
+| Longcat Image | [`fal-ai/longcat-image/edit`](https://fal.ai/models/fal-ai/longcat-image/edit) | — | images |
+| Luma Photon | [`fal-ai/luma-photon/flash/modify`](https://fal.ai/models/fal-ai/luma-photon/flash/modify) | Luma AI | images |
+| Luma Photon | [`fal-ai/luma-photon/modify`](https://fal.ai/models/fal-ai/luma-photon/modify) | Luma AI | images |
+| Luma Photon Flash Reframe | [`fal-ai/luma-photon/flash/reframe`](https://fal.ai/models/fal-ai/luma-photon/flash/reframe) | Luma AI | images |
+| Luma Photon Reframe | [`fal-ai/luma-photon/reframe`](https://fal.ai/models/fal-ai/luma-photon/reframe) | Luma AI | images |
+| Luma Uni-1 Edit | [`luma/agent/uni-1/v1/edit`](https://fal.ai/models/luma/agent/uni-1/v1/edit) | Luma AI | images |
+| Luma Uni-1 Edit Max | [`luma/agent/uni-1/v1/max/edit`](https://fal.ai/models/luma/agent/uni-1/v1/max/edit) | Luma AI | images |
+| Mai Image 2.5 | [`microsoft/mai-image-2.5/edit`](https://fal.ai/models/microsoft/mai-image-2.5/edit) | Microsoft | images |
+| Makeup Changer | [`fal-ai/image-apps-v2/makeup-application`](https://fal.ai/models/fal-ai/image-apps-v2/makeup-application) | — | images |
+| Marigold Depth Estimation | [`fal-ai/imageutils/marigold-depth`](https://fal.ai/models/fal-ai/imageutils/marigold-depth) | — | image |
+| Midas Depth Estimation | [`fal-ai/imageutils/depth`](https://fal.ai/models/fal-ai/imageutils/depth) | — | image |
+| Minimax Image Subject Reference | [`fal-ai/minimax/image-01/subject-reference`](https://fal.ai/models/fal-ai/minimax/image-01/subject-reference) | Minimax | images |
+| Moondream3 Preview [Segment] | [`fal-ai/moondream3-preview/segment`](https://fal.ai/models/fal-ai/moondream3-preview/segment) | Moondream | image |
+| MoonDreamNext Detection | [`fal-ai/moondream-next/detection`](https://fal.ai/models/fal-ai/moondream-next/detection) | Moondream | image |
+| NAFNet-deblur | [`fal-ai/nafnet/deblur`](https://fal.ai/models/fal-ai/nafnet/deblur) | — | image |
+| NAFNet-denoise | [`fal-ai/nafnet/denoise`](https://fal.ai/models/fal-ai/nafnet/denoise) | — | image |
+| Nano Banana | [`fal-ai/nano-banana/edit`](https://fal.ai/models/fal-ai/nano-banana/edit) | Google | images |
+| Nano Banana 2 | [`fal-ai/nano-banana-2/edit`](https://fal.ai/models/fal-ai/nano-banana-2/edit) | Google | images |
+| Nano Banana Lite Edit | [`google/nano-banana-lite/edit`](https://fal.ai/models/google/nano-banana-lite/edit) | Google | images |
+| Nano Banana Pro | [`fal-ai/nano-banana-pro/edit`](https://fal.ai/models/fal-ai/nano-banana-pro/edit) | Google | images |
+| Object Removal | [`fal-ai/image-apps-v2/object-removal`](https://fal.ai/models/fal-ai/image-apps-v2/object-removal) | — | images |
+| Object Removal | [`fal-ai/object-removal`](https://fal.ai/models/fal-ai/object-removal) | — | images |
+| Object Removal | [`fal-ai/object-removal/bbox`](https://fal.ai/models/fal-ai/object-removal/bbox) | — | images |
+| Object Removal | [`fal-ai/object-removal/mask`](https://fal.ai/models/fal-ai/object-removal/mask) | — | images |
+| Omni Zero | [`fal-ai/omni-zero`](https://fal.ai/models/fal-ai/omni-zero) | — | image |
+| Optimized Latent Consistency (SDv1.5) | [`fal-ai/lcm-sd15-i2i`](https://fal.ai/models/fal-ai/lcm-sd15-i2i) | — | images |
+| PASD | [`fal-ai/pasd`](https://fal.ai/models/fal-ai/pasd) | — | images |
+| PATINA | [`fal-ai/patina`](https://fal.ai/models/fal-ai/patina) | Fal | images |
+| PATINA | [`fal-ai/patina/material/extract`](https://fal.ai/models/fal-ai/patina/material/extract) | Fal | images |
+| Perspective Change | [`fal-ai/image-apps-v2/perspective`](https://fal.ai/models/fal-ai/image-apps-v2/perspective) | — | images |
+| Phota | [`fal-ai/phota/edit`](https://fal.ai/models/fal-ai/phota/edit) | Phota | images |
+| Phota Enhance | [`fal-ai/phota/enhance`](https://fal.ai/models/fal-ai/phota/enhance) | Phota | images |
+| Photo Restoration | [`fal-ai/image-apps-v2/photo-restoration`](https://fal.ai/models/fal-ai/image-apps-v2/photo-restoration) | — | images |
+| Photography Effects | [`fal-ai/image-apps-v2/photography-effects`](https://fal.ai/models/fal-ai/image-apps-v2/photography-effects) | — | images |
+| PhotoMaker | [`fal-ai/photomaker`](https://fal.ai/models/fal-ai/photomaker) | — | images |
+| Pixelcut Background Remover | [`pixelcut/background-removal`](https://fal.ai/models/pixelcut/background-removal) | Pixelcut | image |
+| Playground v2.5 | [`fal-ai/playground-v25/image-to-image`](https://fal.ai/models/fal-ai/playground-v25/image-to-image) | — | images |
+| Playground v2.5 | [`fal-ai/playground-v25/inpainting`](https://fal.ai/models/fal-ai/playground-v25/inpainting) | — | images |
+| Portrait Enhance | [`fal-ai/image-apps-v2/portrait-enhance`](https://fal.ai/models/fal-ai/image-apps-v2/portrait-enhance) | — | images |
+| Post Processing | [`fal-ai/post-processing`](https://fal.ai/models/fal-ai/post-processing) | — | images |
+| Post Processing Blur | [`fal-ai/post-processing/blur`](https://fal.ai/models/fal-ai/post-processing/blur) | — | images |
+| Post Processing Chromatic Aberration | [`fal-ai/post-processing/chromatic-aberration`](https://fal.ai/models/fal-ai/post-processing/chromatic-aberration) | — | images |
+| Post Processing Color Correction | [`fal-ai/post-processing/color-correction`](https://fal.ai/models/fal-ai/post-processing/color-correction) | — | images |
+| Post Processing Color Tint | [`fal-ai/post-processing/color-tint`](https://fal.ai/models/fal-ai/post-processing/color-tint) | — | images |
+| Post Processing Desaturate | [`fal-ai/post-processing/desaturate`](https://fal.ai/models/fal-ai/post-processing/desaturate) | — | images |
+| Post Processing Dissolve | [`fal-ai/post-processing/dissolve`](https://fal.ai/models/fal-ai/post-processing/dissolve) | — | images |
+| Post Processing Dodge Burn | [`fal-ai/post-processing/dodge-burn`](https://fal.ai/models/fal-ai/post-processing/dodge-burn) | — | images |
+| Post Processing Grain | [`fal-ai/post-processing/grain`](https://fal.ai/models/fal-ai/post-processing/grain) | — | images |
+| Post Processing Parabolize | [`fal-ai/post-processing/parabolize`](https://fal.ai/models/fal-ai/post-processing/parabolize) | — | images |
+| Post Processing Sharpen | [`fal-ai/post-processing/sharpen`](https://fal.ai/models/fal-ai/post-processing/sharpen) | — | images |
+| Post Processing Solarize | [`fal-ai/post-processing/solarize`](https://fal.ai/models/fal-ai/post-processing/solarize) | — | images |
+| Post Processing Vignette | [`fal-ai/post-processing/vignette`](https://fal.ai/models/fal-ai/post-processing/vignette) | — | images |
+| Product Holding | [`fal-ai/image-apps-v2/product-holding`](https://fal.ai/models/fal-ai/image-apps-v2/product-holding) | — | images |
+| Product Photography | [`fal-ai/image-apps-v2/product-photography`](https://fal.ai/models/fal-ai/image-apps-v2/product-photography) | — | images |
+| PuLID | [`fal-ai/pulid`](https://fal.ai/models/fal-ai/pulid) | — | images |
+| PuLID Flux | [`fal-ai/flux-pulid`](https://fal.ai/models/fal-ai/flux-pulid) | Black Forest Labs | images |
+| Qwen Image | [`fal-ai/qwen-image/image-to-image`](https://fal.ai/models/fal-ai/qwen-image/image-to-image) | Alibaba | images |
+| Qwen Image 2 | [`fal-ai/qwen-image-2/edit`](https://fal.ai/models/fal-ai/qwen-image-2/edit) | Alibaba | images |
+| Qwen Image 2 | [`fal-ai/qwen-image-2/pro/edit`](https://fal.ai/models/fal-ai/qwen-image-2/pro/edit) | Alibaba | images |
+| Qwen Image Edit | [`fal-ai/qwen-image-edit`](https://fal.ai/models/fal-ai/qwen-image-edit) | Alibaba | images |
+| Qwen Image Edit | [`fal-ai/qwen-image-edit/image-to-image`](https://fal.ai/models/fal-ai/qwen-image-edit/image-to-image) | Alibaba | images |
+| Qwen Image Edit | [`fal-ai/qwen-image-edit/inpaint`](https://fal.ai/models/fal-ai/qwen-image-edit/inpaint) | Alibaba | images |
+| Qwen Image Edit 2509 | [`fal-ai/qwen-image-edit-2509`](https://fal.ai/models/fal-ai/qwen-image-edit-2509) | Alibaba | images |
+| Qwen Image Edit 2509 Lora | [`fal-ai/qwen-image-edit-2509-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/add-background`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/add-background) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/face-to-full-portrait) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/group-photo`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/group-photo) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/integrate-product`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/integrate-product) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/lighting-restoration`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/lighting-restoration) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/multiple-angles) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/next-scene`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/next-scene) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/remove-element`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/remove-element) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/remove-lighting`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/remove-lighting) | Alibaba | images |
+| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/shirt-design`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/shirt-design) | Alibaba | images |
+| Qwen Image Edit 2511 | [`fal-ai/qwen-image-edit-2511`](https://fal.ai/models/fal-ai/qwen-image-edit-2511) | Alibaba | images |
+| Qwen Image Edit 2511 | [`fal-ai/qwen-image-edit-2511/lora`](https://fal.ai/models/fal-ai/qwen-image-edit-2511/lora) | Alibaba | images |
+| Qwen Image Edit 2511 Multiple Angles | [`fal-ai/qwen-image-edit-2511-multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-2511-multiple-angles) | Alibaba | images |
+| Qwen Image Edit Lora | [`fal-ai/qwen-image-edit-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-lora) | Alibaba | images |
+| Qwen Image Edit Plus | [`fal-ai/qwen-image-edit-plus`](https://fal.ai/models/fal-ai/qwen-image-edit-plus) | Alibaba | images |
+| Qwen Image Edit Plus Lora | [`fal-ai/qwen-image-edit-plus-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/add-background`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/add-background) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/face-to-full-portrait) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/group-photo`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/group-photo) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/integrate-product`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/integrate-product) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/lighting-restoration`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/lighting-restoration) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/multiple-angles) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/next-scene`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/next-scene) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/remove-element`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/remove-element) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/remove-lighting`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/remove-lighting) | Alibaba | images |
+| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/shirt-design`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/shirt-design) | Alibaba | images |
+| Qwen Image Layered | [`fal-ai/qwen-image-layered`](https://fal.ai/models/fal-ai/qwen-image-layered) | Alibaba | images |
+| Qwen Image Layered | [`fal-ai/qwen-image-layered/lora`](https://fal.ai/models/fal-ai/qwen-image-layered/lora) | Alibaba | images |
+| Qwen Image Max | [`fal-ai/qwen-image-max/edit`](https://fal.ai/models/fal-ai/qwen-image-max/edit) | Alibaba | images |
+| Recraft | [`fal-ai/recraft/vectorize`](https://fal.ai/models/fal-ai/recraft/vectorize) | Recraft | image |
+| Recraft Creative Upscale | [`fal-ai/recraft/upscale/creative`](https://fal.ai/models/fal-ai/recraft/upscale/creative) | Recraft | image |
+| Recraft Crisp Upscale | [`fal-ai/recraft/upscale/crisp`](https://fal.ai/models/fal-ai/recraft/upscale/crisp) | Recraft | image |
+| Recraft V3 | [`fal-ai/recraft/v3/image-to-image`](https://fal.ai/models/fal-ai/recraft/v3/image-to-image) | Recraft | images |
+| Relighting | [`fal-ai/image-apps-v2/relighting`](https://fal.ai/models/fal-ai/image-apps-v2/relighting) | — | images |
+| Rembg Enhance (Remove Background Enhance) | [`smoretalk-ai/rembg-enhance`](https://fal.ai/models/smoretalk-ai/rembg-enhance) | Smoretalk AI | image |
+| Remove Background | [`fal-ai/imageutils/rembg`](https://fal.ai/models/fal-ai/imageutils/rembg) | — | image |
+| Replace Background | [`bria/replace-background`](https://fal.ai/models/bria/replace-background) | Bria AI | json |
+| RIFE | [`fal-ai/rife`](https://fal.ai/models/fal-ai/rife) | — | images |
+| Sam 3 | [`fal-ai/sam-3/image-rle`](https://fal.ai/models/fal-ai/sam-3/image-rle) | — | json |
+| Sam 3 1 | [`fal-ai/sam-3-1/image`](https://fal.ai/models/fal-ai/sam-3-1/image) | — | image |
+| Sam 3 1 | [`fal-ai/sam-3-1/image-rle`](https://fal.ai/models/fal-ai/sam-3-1/image-rle) | — | json |
+| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union/image-to-image`](https://fal.ai/models/fal-ai/sdxl-controlnet-union/image-to-image) | — | images |
+| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union/inpainting`](https://fal.ai/models/fal-ai/sdxl-controlnet-union/inpainting) | — | images |
+| SeedVR2 | [`fal-ai/seedvr/upscale/image`](https://fal.ai/models/fal-ai/seedvr/upscale/image) | SeedVR | image |
+| SeedVR2 | [`fal-ai/seedvr/upscale/image/seamless`](https://fal.ai/models/fal-ai/seedvr/upscale/image/seamless) | SeedVR | image |
+| Segment Anything Model 2 | [`fal-ai/sam2/auto-segment`](https://fal.ai/models/fal-ai/sam2/auto-segment) | — | json |
+| Segment Anything Model 2 | [`fal-ai/sam2/image`](https://fal.ai/models/fal-ai/sam2/image) | — | image |
+| Segment Anything Model 3 | [`fal-ai/sam-3/image`](https://fal.ai/models/fal-ai/sam-3/image) | — | image |
+| Smart Resize | [`fal-ai/smart-resize`](https://fal.ai/models/fal-ai/smart-resize) | — | images |
+| Stable Diffusion V3 | [`fal-ai/stable-diffusion-v3-medium/image-to-image`](https://fal.ai/models/fal-ai/stable-diffusion-v3-medium/image-to-image) | Stability AI | images |
+| Stable Diffusion with LoRAs | [`fal-ai/lora/image-to-image`](https://fal.ai/models/fal-ai/lora/image-to-image) | — | images |
+| Stable Diffusion with LoRAs | [`fal-ai/lora/inpaint`](https://fal.ai/models/fal-ai/lora/inpaint) | — | images |
+| Stable Diffusion XL | [`fal-ai/fast-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-sdxl/image-to-image) | — | images |
+| Stable Diffusion XL | [`fal-ai/fast-sdxl/inpainting`](https://fal.ai/models/fal-ai/fast-sdxl/inpainting) | — | images |
+| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-lightning-sdxl/image-to-image) | — | images |
+| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl/inpainting`](https://fal.ai/models/fal-ai/fast-lightning-sdxl/inpainting) | — | images |
+| Stepx Edit2 | [`fal-ai/stepx-edit2`](https://fal.ai/models/fal-ai/stepx-edit2) | — | images |
+| Style Transfer | [`fal-ai/image-apps-v2/style-transfer`](https://fal.ai/models/fal-ai/image-apps-v2/style-transfer) | — | images |
+| Telestyle V2 Style Transfer | [`fal-ai/telestyle-v2`](https://fal.ai/models/fal-ai/telestyle-v2) | — | images |
+| Texture Transform | [`fal-ai/image-apps-v2/texture-transform`](https://fal.ai/models/fal-ai/image-apps-v2/texture-transform) | — | images |
+| Topaz | [`fal-ai/topaz/upscale/image`](https://fal.ai/models/fal-ai/topaz/upscale/image) | Topaz Labs | image |
+| try-on | [`fal-ai/cat-vton`](https://fal.ai/models/fal-ai/cat-vton) | — | image |
+| Uno | [`fal-ai/uno`](https://fal.ai/models/fal-ai/uno) | — | images |
+| Upscale | [`bria/upscale/creative`](https://fal.ai/models/bria/upscale/creative) | Bria AI | image |
+| Upscale Images | [`fal-ai/esrgan`](https://fal.ai/models/fal-ai/esrgan) | — | image |
+| Uso | [`fal-ai/uso`](https://fal.ai/models/fal-ai/uso) | — | images |
+| Vecglypher | [`fal-ai/vecglypher/image-to-svg`](https://fal.ai/models/fal-ai/vecglypher/image-to-svg) | — | image |
+| Vidu | [`fal-ai/vidu/q2/reference-to-image`](https://fal.ai/models/fal-ai/vidu/q2/reference-to-image) | Vidu | image |
+| Vidu | [`fal-ai/vidu/reference-to-image`](https://fal.ai/models/fal-ai/vidu/reference-to-image) | Vidu | image |
+| Virtual Try-on | [`fal-ai/image-apps-v2/virtual-try-on`](https://fal.ai/models/fal-ai/image-apps-v2/virtual-try-on) | — | images |
+| Wan | [`fal-ai/wan/v2.2-a14b/image-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-image) | Alibaba | image |
+| Wan | [`fal-ai/wan/v2.7/edit`](https://fal.ai/models/fal-ai/wan/v2.7/edit) | Alibaba | images |
+| Wan | [`fal-ai/wan/v2.7/pro/edit`](https://fal.ai/models/fal-ai/wan/v2.7/pro/edit) | Alibaba | images |
+| Wan 2.5 Image to Image | [`fal-ai/wan-25-preview/image-to-image`](https://fal.ai/models/fal-ai/wan-25-preview/image-to-image) | Alibaba | images |
+| Wan v2.6 Image to Image | [`wan/v2.6/image-to-image`](https://fal.ai/models/wan/v2.6/image-to-image) | Alibaba | images |
+| Workflow Utilities Extract Nth Frame | [`fal-ai/workflow-utilities/extract-nth-frame`](https://fal.ai/models/fal-ai/workflow-utilities/extract-nth-frame) | — | images |
+| Z Image Turbo Controlnet | [`fal-ai/z-image/turbo/controlnet`](https://fal.ai/models/fal-ai/z-image/turbo/controlnet) | Alibaba | images |
+| Z Image Turbo Controlnet Lora | [`fal-ai/z-image/turbo/controlnet/lora`](https://fal.ai/models/fal-ai/z-image/turbo/controlnet/lora) | Alibaba | images |
+| Z Image Turbo Image To Image | [`fal-ai/z-image/turbo/image-to-image`](https://fal.ai/models/fal-ai/z-image/turbo/image-to-image) | Alibaba | images |
+| Z Image Turbo Image To Image Lora | [`fal-ai/z-image/turbo/image-to-image/lora`](https://fal.ai/models/fal-ai/z-image/turbo/image-to-image/lora) | Alibaba | images |
+| Z Image Turbo Inpaint | [`fal-ai/z-image/turbo/inpaint`](https://fal.ai/models/fal-ai/z-image/turbo/inpaint) | Alibaba | images |
+| Z Image Turbo Inpaint Lora | [`fal-ai/z-image/turbo/inpaint/lora`](https://fal.ai/models/fal-ai/z-image/turbo/inpaint/lora) | Alibaba | images |
+
+
+
+
+image-to-video — 193 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| AI Avatar Multi | [`fal-ai/ai-avatar/multi`](https://fal.ai/models/fal-ai/ai-avatar/multi) | — | video |
+| AI Avatar Multi Text | [`fal-ai/ai-avatar/multi-text`](https://fal.ai/models/fal-ai/ai-avatar/multi-text) | — | video |
+| AI Avatar Single Text | [`fal-ai/ai-avatar/single-text`](https://fal.ai/models/fal-ai/ai-avatar/single-text) | — | video |
+| AMT Frame Interpolation | [`fal-ai/amt-interpolation/frame-interpolation`](https://fal.ai/models/fal-ai/amt-interpolation/frame-interpolation) | — | video |
+| Bernini-R Reference to Video | [`fal-ai/bernini-r/reference-to-video`](https://fal.ai/models/fal-ai/bernini-r/reference-to-video) | Bytedance | video |
+| Bytedance Omnihuman V1.5 | [`fal-ai/bytedance/omnihuman/v1.5`](https://fal.ai/models/fal-ai/bytedance/omnihuman/v1.5) | Bytedance | video |
+| Bytedance Seedance V1 Pro Fast Image To Video | [`fal-ai/bytedance/seedance/v1/pro/fast/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/fast/image-to-video) | Bytedance | video |
+| Bytedance Seedance V1.5 Pro Image To Video | [`fal-ai/bytedance/seedance/v1.5/pro/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1.5/pro/image-to-video) | Bytedance | video |
+| CogVideoX-5B | [`fal-ai/cogvideox-5b/image-to-video`](https://fal.ai/models/fal-ai/cogvideox-5b/image-to-video) | — | video |
+| Cosmos 3 Super Image to Video | [`nvidia/cosmos-3-super/image-to-video`](https://fal.ai/models/nvidia/cosmos-3-super/image-to-video) | NVIDIA | video |
+| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/image-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/image-to-video) | NVIDIA | video |
+| Creatify Aurora | [`fal-ai/creatify/aurora`](https://fal.ai/models/fal-ai/creatify/aurora) | Creatify AI | video |
+| Davinci Magihuman | [`fal-ai/davinci-magihuman`](https://fal.ai/models/fal-ai/davinci-magihuman) | — | video |
+| Fabric 1.0 | [`veed/fabric-1.0`](https://fal.ai/models/veed/fabric-1.0) | Veed | video |
+| Fabric 1.0 Fast | [`veed/fabric-1.0/fast`](https://fal.ai/models/veed/fabric-1.0/fast) | Veed | video |
+| Ffmpeg Api Images to Video | [`fal-ai/ffmpeg-api/images-to-video`](https://fal.ai/models/fal-ai/ffmpeg-api/images-to-video) | — | video |
+| Flashhead | [`fal-ai/flashhead`](https://fal.ai/models/fal-ai/flashhead) | Soul AI Lab | video |
+| Framepack | [`fal-ai/framepack`](https://fal.ai/models/fal-ai/framepack) | — | video |
+| Framepack | [`fal-ai/framepack/flf2v`](https://fal.ai/models/fal-ai/framepack/flf2v) | — | video |
+| Framepack F1 | [`fal-ai/framepack/f1`](https://fal.ai/models/fal-ai/framepack/f1) | — | video |
+| Gemini Omni Flash | [`google/gemini-omni-flash/image-to-video`](https://fal.ai/models/google/gemini-omni-flash/image-to-video) | Google | video |
+| Gemini Omni Flash | [`google/gemini-omni-flash/reference-to-video`](https://fal.ai/models/google/gemini-omni-flash/reference-to-video) | Google | video |
+| Grok Imagine Reference to Video | [`xai/grok-imagine-video/reference-to-video`](https://fal.ai/models/xai/grok-imagine-video/reference-to-video) | xAI | video |
+| Grok Imagine Video | [`xai/grok-imagine-video/image-to-video`](https://fal.ai/models/xai/grok-imagine-video/image-to-video) | xAI | video |
+| Grok Imagine Video 1.5 | [`xai/grok-imagine-video/v1.5/image-to-video`](https://fal.ai/models/xai/grok-imagine-video/v1.5/image-to-video) | xAI | video |
+| Happy Horse | [`alibaba/happy-horse/image-to-video`](https://fal.ai/models/alibaba/happy-horse/image-to-video) | Alibaba | video |
+| Happy Horse | [`alibaba/happy-horse/reference-to-video`](https://fal.ai/models/alibaba/happy-horse/reference-to-video) | Alibaba | video |
+| Happy Horse 1.1 Image to Video | [`alibaba/happy-horse/v1.1/image-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/image-to-video) | Alibaba | video |
+| Happy Horse 1.1 Reference to Video | [`alibaba/happy-horse/v1.1/reference-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/reference-to-video) | Alibaba | video |
+| Heygen | [`fal-ai/heygen/avatar4/image-to-video`](https://fal.ai/models/fal-ai/heygen/avatar4/image-to-video) | Heygen | video |
+| High Quality Stable Video Diffusion | [`fal-ai/stable-video`](https://fal.ai/models/fal-ai/stable-video) | Stability AI | video |
+| Hunyuan Video Image-to-Video Inference | [`fal-ai/hunyuan-video-image-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-image-to-video) | Tencent | video |
+| Hunyuan Video Image-to-Video LoRA Inference | [`fal-ai/hunyuan-video-img2vid-lora`](https://fal.ai/models/fal-ai/hunyuan-video-img2vid-lora) | Tencent | video |
+| Hunyuan Video V1.5 | [`fal-ai/hunyuan-video-v1.5/image-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-v1.5/image-to-video) | Tencent | video |
+| Kandinsky5 Pro | [`fal-ai/kandinsky5-pro/image-to-video`](https://fal.ai/models/fal-ai/kandinsky5-pro/image-to-video) | Kandinsky | video |
+| Kling 1.0 | [`fal-ai/kling-video/v1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1/standard/image-to-video) | Kling | video |
+| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/image-to-video) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/image-to-video) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/image-to-video) | Kling | video |
+| Kling 1.6 Elements | [`fal-ai/kling-video/v1.6/pro/elements`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/elements) | Kling | video |
+| Kling 1.6 Elements | [`fal-ai/kling-video/v1.6/standard/elements`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/elements) | Kling | video |
+| Kling 2.0 Master | [`fal-ai/kling-video/v2/master/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2/master/image-to-video) | Kling | video |
+| Kling 2.1 (pro) | [`fal-ai/kling-video/v2.1/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/pro/image-to-video) | Kling | video |
+| Kling 2.1 (standard) | [`fal-ai/kling-video/v2.1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/standard/image-to-video) | Kling | video |
+| Kling 2.1 Master | [`fal-ai/kling-video/v2.1/master/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/master/image-to-video) | Kling | video |
+| Kling AI Avatar | [`fal-ai/kling-video/v1/standard/ai-avatar`](https://fal.ai/models/fal-ai/kling-video/v1/standard/ai-avatar) | Kling | video |
+| Kling AI Avatar Pro | [`fal-ai/kling-video/v1/pro/ai-avatar`](https://fal.ai/models/fal-ai/kling-video/v1/pro/ai-avatar) | Kling | video |
+| Kling AI Avatar v2 Pro | [`fal-ai/kling-video/ai-avatar/v2/pro`](https://fal.ai/models/fal-ai/kling-video/ai-avatar/v2/pro) | Kling | video |
+| Kling AI Avatar v2 Standard | [`fal-ai/kling-video/ai-avatar/v2/standard`](https://fal.ai/models/fal-ai/kling-video/ai-avatar/v2/standard) | Kling | video |
+| Kling O1 First Frame Last Frame to Video [Pro] | [`fal-ai/kling-video/o1/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/image-to-video) | Kling | video |
+| Kling O1 First Frame Last Frame to Video [Standard] | [`fal-ai/kling-video/o1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/standard/image-to-video) | Kling | video |
+| Kling O1 Reference Image to Video [Pro] | [`fal-ai/kling-video/o1/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/reference-to-video) | Kling | video |
+| Kling O1 Reference Image to Video [Standard] | [`fal-ai/kling-video/o1/standard/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/standard/reference-to-video) | Kling | video |
+| Kling O3 Image to Video [Pro] | [`fal-ai/kling-video/o3/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/image-to-video) | Kling | video |
+| Kling O3 Image to Video [Pro] | [`fal-ai/kling-video/o3/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/image-to-video) | Kling | video |
+| Kling O3 Reference to Video [Pro] | [`fal-ai/kling-video/o3/pro/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/reference-to-video) | Kling | video |
+| Kling O3 Reference to Video [Standard] | [`fal-ai/kling-video/o3/standard/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/reference-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/o3/4k/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/image-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/o3/4k/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/reference-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/v2.5-turbo/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/pro/image-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/v2.5-turbo/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/standard/image-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/v3/4k/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/4k/image-to-video) | Kling | video |
+| Kling Video v2.6 Image to Video | [`fal-ai/kling-video/v2.6/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/image-to-video) | Kling | video |
+| Kling Video v3 Image to Video [Pro] | [`fal-ai/kling-video/v3/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/pro/image-to-video) | Kling | video |
+| Kling Video v3 Image to Video [Standard] | [`fal-ai/kling-video/v3/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/standard/image-to-video) | Kling | video |
+| Kling Video V3 Standard Turbo Image to Video | [`fal-ai/kling-video/v3/turbo/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/standard/image-to-video) | Kling | video |
+| Kling Video V3 Turbo Pro Image to Video | [`fal-ai/kling-video/v3/turbo/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/pro/image-to-video) | Kling | video |
+| Live Portrait | [`fal-ai/live-portrait`](https://fal.ai/models/fal-ai/live-portrait) | — | video |
+| LongCat Video | [`fal-ai/longcat-video/image-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/image-to-video/480p) | — | video |
+| LongCat Video | [`fal-ai/longcat-video/image-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/image-to-video/720p) | — | video |
+| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/image-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/distilled/image-to-video/480p) | — | video |
+| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/image-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/distilled/image-to-video/720p) | — | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/image-to-video) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/image-to-video/lora) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/ingredient`](https://fal.ai/models/fal-ai/ltx-2.3-quality/ingredient) | Lightricks | video |
+| LTX 2.3 Video Fast | [`fal-ai/ltx-2.3/image-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2.3/image-to-video/fast) | Lightricks | video |
+| LTX 2.3 Video Pro | [`fal-ai/ltx-2.3/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/image-to-video) | Lightricks | video |
+| LTX Video (preview) | [`fal-ai/ltx-video/image-to-video`](https://fal.ai/models/fal-ai/ltx-video/image-to-video) | Lightricks | video |
+| LTX Video 2.0 Fast | [`fal-ai/ltx-2/image-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2/image-to-video/fast) | Lightricks | video |
+| LTX Video 2.0 Pro | [`fal-ai/ltx-2/image-to-video`](https://fal.ai/models/fal-ai/ltx-2/image-to-video) | Lightricks | video |
+| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/image-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/image-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/image-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/image-to-video/lora) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/image-to-video) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/image-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/image-to-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/image-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/image-to-video) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/image-to-video/lora) | Lightricks | video |
+| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/image-to-video`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/image-to-video) | Lightricks | video |
+| Luma Ray 2 (Image to Video) | [`fal-ai/luma-dream-machine/ray-2/image-to-video`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/image-to-video) | Luma AI | video |
+| Luma Ray 2 Flash (Image to Video) | [`fal-ai/luma-dream-machine/ray-2-flash/image-to-video`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/image-to-video) | Luma AI | video |
+| Luma Ray 3.2 Image to Video | [`luma/agent/ray/v3.2/image-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/image-to-video) | Luma AI | video |
+| Lynx | [`bytedance/lynx`](https://fal.ai/models/bytedance/lynx) | Bytedance | video |
+| MAGI-1 (Distilled) | [`fal-ai/magi-distilled/image-to-video`](https://fal.ai/models/fal-ai/magi-distilled/image-to-video) | — | video |
+| Marey Realism V1.5 | [`moonvalley/marey/i2v`](https://fal.ai/models/moonvalley/marey/i2v) | Moonvalley | video |
+| Minimax | [`fal-ai/minimax/hailuo-02-fast/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02-fast/image-to-video) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01-live/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01-live/image-to-video) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01/image-to-video) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 Director - Image to Video | [`fal-ai/minimax/video-01-director/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01-director/image-to-video) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 Subject Reference | [`fal-ai/minimax/video-01-subject-reference`](https://fal.ai/models/fal-ai/minimax/video-01-subject-reference) | Minimax | video |
+| MiniMax Hailuo 02 [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-02/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/pro/image-to-video) | Minimax | video |
+| MiniMax Hailuo 02 [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-02/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/standard/image-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-2.3/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/pro/image-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-2.3/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/standard/image-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 Fast [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-2.3-fast/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3-fast/pro/image-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 Fast [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-2.3-fast/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3-fast/standard/image-to-video) | Minimax | video |
+| MuseTalk | [`fal-ai/musetalk`](https://fal.ai/models/fal-ai/musetalk) | — | video |
+| OmniHuman | [`fal-ai/bytedance/omnihuman`](https://fal.ai/models/fal-ai/bytedance/omnihuman) | Bytedance | video |
+| Ovi | [`fal-ai/ovi/image-to-video`](https://fal.ai/models/fal-ai/ovi/image-to-video) | — | video |
+| Pika | [`fal-ai/pika/v2.2/pikaframes`](https://fal.ai/models/fal-ai/pika/v2.2/pikaframes) | Pika | video |
+| Pika Effects (v1.5) | [`fal-ai/pika/v1.5/pikaffects`](https://fal.ai/models/fal-ai/pika/v1.5/pikaffects) | Pika | video |
+| Pika Image to Video (v2.1) | [`fal-ai/pika/v2.1/image-to-video`](https://fal.ai/models/fal-ai/pika/v2.1/image-to-video) | Pika | video |
+| Pika Image to Video (v2.2) | [`fal-ai/pika/v2.2/image-to-video`](https://fal.ai/models/fal-ai/pika/v2.2/image-to-video) | Pika | video |
+| Pika Image to Video Turbo (v2) | [`fal-ai/pika/v2/turbo/image-to-video`](https://fal.ai/models/fal-ai/pika/v2/turbo/image-to-video) | Pika | video |
+| Pika Scenes (v2.2) | [`fal-ai/pika/v2.2/pikascenes`](https://fal.ai/models/fal-ai/pika/v2.2/pikascenes) | Pika | video |
+| PixVerse C1 Image To Video | [`fal-ai/pixverse/c1/image-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/image-to-video) | Pixverse | video |
+| PixVerse C1 Reference To Video | [`fal-ai/pixverse/c1/reference-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/reference-to-video) | Pixverse | video |
+| PixVerse C1 Transition | [`fal-ai/pixverse/c1/transition`](https://fal.ai/models/fal-ai/pixverse/c1/transition) | Pixverse | video |
+| PixVerse Swap | [`fal-ai/pixverse/swap`](https://fal.ai/models/fal-ai/pixverse/swap) | Pixverse | video |
+| PixVerse V3.5 Effects | [`fal-ai/pixverse/v3.5/effects`](https://fal.ai/models/fal-ai/pixverse/v3.5/effects) | Pixverse | video |
+| PixVerse V3.5 Image To Video | [`fal-ai/pixverse/v3.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v3.5/image-to-video) | Pixverse | video |
+| PixVerse V3.5 Image To Video Fast | [`fal-ai/pixverse/v3.5/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v3.5/image-to-video/fast) | Pixverse | video |
+| PixVerse V3.5 Transition | [`fal-ai/pixverse/v3.5/transition`](https://fal.ai/models/fal-ai/pixverse/v3.5/transition) | Pixverse | video |
+| PixVerse V4 Effects | [`fal-ai/pixverse/v4/effects`](https://fal.ai/models/fal-ai/pixverse/v4/effects) | Pixverse | video |
+| PixVerse V4 Image To Video | [`fal-ai/pixverse/v4/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v4/image-to-video) | Pixverse | video |
+| PixVerse V4 Image To Video Fast | [`fal-ai/pixverse/v4/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4/image-to-video/fast) | Pixverse | video |
+| PixVerse V4.5 Effects | [`fal-ai/pixverse/v4.5/effects`](https://fal.ai/models/fal-ai/pixverse/v4.5/effects) | Pixverse | video |
+| PixVerse V4.5 Image To Video | [`fal-ai/pixverse/v4.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v4.5/image-to-video) | Pixverse | video |
+| PixVerse V4.5 Image To Video Fast | [`fal-ai/pixverse/v4.5/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4.5/image-to-video/fast) | Pixverse | video |
+| PixVerse V4.5 Transition | [`fal-ai/pixverse/v4.5/transition`](https://fal.ai/models/fal-ai/pixverse/v4.5/transition) | Pixverse | video |
+| PixVerse V5 Effects | [`fal-ai/pixverse/v5/effects`](https://fal.ai/models/fal-ai/pixverse/v5/effects) | Pixverse | video |
+| PixVerse V5 Image To Video | [`fal-ai/pixverse/v5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5/image-to-video) | Pixverse | video |
+| PixVerse V5 Transition | [`fal-ai/pixverse/v5/transition`](https://fal.ai/models/fal-ai/pixverse/v5/transition) | Pixverse | video |
+| PixVerse V5.5 Effects | [`fal-ai/pixverse/v5.5/effects`](https://fal.ai/models/fal-ai/pixverse/v5.5/effects) | Pixverse | video |
+| PixVerse V5.5 Image To Video | [`fal-ai/pixverse/v5.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.5/image-to-video) | Pixverse | video |
+| PixVerse V5.5 Transition | [`fal-ai/pixverse/v5.5/transition`](https://fal.ai/models/fal-ai/pixverse/v5.5/transition) | Pixverse | video |
+| PixVerse V5.6 Image To Video | [`fal-ai/pixverse/v5.6/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.6/image-to-video) | Pixverse | video |
+| PixVerse V5.6 Transition | [`fal-ai/pixverse/v5.6/transition`](https://fal.ai/models/fal-ai/pixverse/v5.6/transition) | Pixverse | video |
+| PixVerse V6 Image To Video | [`fal-ai/pixverse/v6/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v6/image-to-video) | Pixverse | video |
+| PixVerse V6 Transition | [`fal-ai/pixverse/v6/transition`](https://fal.ai/models/fal-ai/pixverse/v6/transition) | Pixverse | video |
+| Sad Talker | [`fal-ai/sadtalker`](https://fal.ai/models/fal-ai/sadtalker) | — | video |
+| Sad Talker | [`fal-ai/sadtalker/reference`](https://fal.ai/models/fal-ai/sadtalker/reference) | — | video |
+| Seedance 1.0 Pro | [`fal-ai/bytedance/seedance/v1/pro/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/image-to-video) | Bytedance | video |
+| Seedance 2 Image to Video | [`bytedance/seedance-2.0/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/image-to-video) | Bytedance | video |
+| Seedance 2 Reference to Video | [`bytedance/seedance-2.0/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/reference-to-video) | Bytedance | video |
+| Seedance 2.0 Fast Image to Video | [`bytedance/seedance-2.0/fast/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/image-to-video) | Bytedance | video |
+| Seedance 2.0 Fast Reference to Video | [`bytedance/seedance-2.0/fast/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/reference-to-video) | Bytedance | video |
+| Seedance 2.0 Mini | [`bytedance/seedance-2.0/mini/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/reference-to-video) | Bytedance | video |
+| Seedance 2.0 Mini Image to Video | [`bytedance/seedance-2.0/mini/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/image-to-video) | Bytedance | video |
+| Sora 2 | [`fal-ai/sora-2/characters`](https://fal.ai/models/fal-ai/sora-2/characters) | OpenAI | text |
+| Sora 2 | [`fal-ai/sora-2/image-to-video`](https://fal.ai/models/fal-ai/sora-2/image-to-video) | OpenAI | video |
+| Sora 2 | [`fal-ai/sora-2/image-to-video/pro`](https://fal.ai/models/fal-ai/sora-2/image-to-video/pro) | OpenAI | video |
+| Stable Video Diffusion Turbo | [`fal-ai/fast-svd-lcm`](https://fal.ai/models/fal-ai/fast-svd-lcm) | — | video |
+| sync-3 Avatar Image to Video | [`fal-ai/sync-lipsync/v3/image-to-video`](https://fal.ai/models/fal-ai/sync-lipsync/v3/image-to-video) | Syncso | video |
+| V2.6 | [`wan/v2.6/image-to-video/flash`](https://fal.ai/models/wan/v2.6/image-to-video/flash) | Alibaba | video |
+| Veo 2 (Image to Video) | [`fal-ai/veo2/image-to-video`](https://fal.ai/models/fal-ai/veo2/image-to-video) | Google | video |
+| Veo 3 Fast [Image to Video] | [`fal-ai/veo3/fast/image-to-video`](https://fal.ai/models/fal-ai/veo3/fast/image-to-video) | Google | video |
+| Veo 3.1 | [`fal-ai/veo3.1/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/first-last-frame-to-video) | Google | video |
+| Veo 3.1 | [`fal-ai/veo3.1/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/image-to-video) | Google | video |
+| Veo 3.1 | [`fal-ai/veo3.1/reference-to-video`](https://fal.ai/models/fal-ai/veo3.1/reference-to-video) | Google | video |
+| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/first-last-frame-to-video) | Google | video |
+| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/image-to-video) | Google | video |
+| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/reference-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/reference-to-video) | — | video |
+| Veo3 | [`fal-ai/veo3/image-to-video`](https://fal.ai/models/fal-ai/veo3/image-to-video) | Google | video |
+| Veo3.1 Lite FLF | [`fal-ai/veo3.1/lite/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/lite/first-last-frame-to-video) | Google | video |
+| Veo3.1 Lite Image to Video | [`fal-ai/veo3.1/lite/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/lite/image-to-video) | Google | video |
+| Vidu | [`fal-ai/vidu/q1/reference-to-video`](https://fal.ai/models/fal-ai/vidu/q1/reference-to-video) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q2/image-to-video/pro`](https://fal.ai/models/fal-ai/vidu/q2/image-to-video/pro) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q2/image-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q2/image-to-video/turbo) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q2/reference-to-video/pro`](https://fal.ai/models/fal-ai/vidu/q2/reference-to-video/pro) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q3/image-to-video`](https://fal.ai/models/fal-ai/vidu/q3/image-to-video) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q3/image-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q3/image-to-video/turbo) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q3/reference-to-video/mix`](https://fal.ai/models/fal-ai/vidu/q3/reference-to-video/mix) | Vidu | video |
+| Vidu Image to Video | [`fal-ai/vidu/image-to-video`](https://fal.ai/models/fal-ai/vidu/image-to-video) | Vidu | video |
+| Vidu Image to Video | [`fal-ai/vidu/q1/image-to-video`](https://fal.ai/models/fal-ai/vidu/q1/image-to-video) | Vidu | video |
+| Vidu Reference to Video | [`fal-ai/vidu/reference-to-video`](https://fal.ai/models/fal-ai/vidu/reference-to-video) | Vidu | video |
+| Vidu Start End to Video | [`fal-ai/vidu/q1/start-end-to-video`](https://fal.ai/models/fal-ai/vidu/q1/start-end-to-video) | Vidu | video |
+| Vidu Start-End to Video | [`fal-ai/vidu/start-end-to-video`](https://fal.ai/models/fal-ai/vidu/start-end-to-video) | Vidu | video |
+| Vidu Template to Video | [`fal-ai/vidu/template-to-video`](https://fal.ai/models/fal-ai/vidu/template-to-video) | Vidu | video |
+| Wan | [`fal-ai/wan/v2.2-a14b/image-to-video/turbo`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video/turbo) | Alibaba | video |
+| Wan | [`fal-ai/wan/v2.7/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/image-to-video) | Alibaba | video |
+| Wan 2.5 Image to Video | [`fal-ai/wan-25-preview/image-to-video`](https://fal.ai/models/fal-ai/wan-25-preview/image-to-video) | Alibaba | video |
+| Wan 2.7 Reference to Video | [`fal-ai/wan/v2.7/reference-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/reference-to-video) | Alibaba | video |
+| Wan Effects | [`fal-ai/wan-effects`](https://fal.ai/models/fal-ai/wan-effects) | Alibaba | video |
+| Wan v2.2 5B | [`fal-ai/wan/v2.2-5b/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-5b/image-to-video) | Alibaba | video |
+| Wan v2.2 A14B | [`fal-ai/wan/v2.2-a14b/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video) | Alibaba | video |
+| Wan v2.2 A14B Image-to-Video A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/image-to-video/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video/lora) | Alibaba | video |
+| Wan v2.6 Image to Video | [`wan/v2.6/image-to-video`](https://fal.ai/models/wan/v2.6/image-to-video) | Alibaba | video |
+| Wan-2.1 First-Last-Frame-to-Video | [`fal-ai/wan-flf2v`](https://fal.ai/models/fal-ai/wan-flf2v) | Alibaba | video |
+| Wan-2.1 Image-to-Video | [`fal-ai/wan-i2v`](https://fal.ai/models/fal-ai/wan-i2v) | Alibaba | video |
+| Wan-2.1 Image-to-Video with LoRAs | [`fal-ai/wan-i2v-lora`](https://fal.ai/models/fal-ai/wan-i2v-lora) | Alibaba | video |
+| Wan-2.1 Pro Image-to-Video | [`fal-ai/wan-pro/image-to-video`](https://fal.ai/models/fal-ai/wan-pro/image-to-video) | Alibaba | video |
+
+
+
+
+text-to-image — 189 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| AuraFlow | [`fal-ai/aura-flow`](https://fal.ai/models/fal-ai/aura-flow) | — | images |
+| Bagel | [`fal-ai/bagel`](https://fal.ai/models/fal-ai/bagel) | — | images |
+| Bitdance | [`fal-ai/bitdance`](https://fal.ai/models/fal-ai/bitdance) | — | images |
+| Boogu Image | [`fal-ai/boogu-image`](https://fal.ai/models/fal-ai/boogu-image) | — | images |
+| Bria Text-to-Image Base | [`fal-ai/bria/text-to-image/base`](https://fal.ai/models/fal-ai/bria/text-to-image/base) | Bria AI | images |
+| Bria Text-to-Image Fast | [`fal-ai/bria/text-to-image/fast`](https://fal.ai/models/fal-ai/bria/text-to-image/fast) | Bria AI | images |
+| Bria Text-to-Image HD | [`fal-ai/bria/text-to-image/hd`](https://fal.ai/models/fal-ai/bria/text-to-image/hd) | Bria AI | images |
+| Bytedance Dreamina V3.1 Text To Image | [`fal-ai/bytedance/dreamina/v3.1/text-to-image`](https://fal.ai/models/fal-ai/bytedance/dreamina/v3.1/text-to-image) | Bytedance | images |
+| Bytedance Seedream V4 Text To Image | [`fal-ai/bytedance/seedream/v4/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v4/text-to-image) | Bytedance | images |
+| Bytedance Seedream V4.5 Text To Image | [`fal-ai/bytedance/seedream/v4.5/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v4.5/text-to-image) | Bytedance | images |
+| Bytedance Seedream V5 Lite Text To Image | [`fal-ai/bytedance/seedream/v5/lite/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v5/lite/text-to-image) | Bytedance | images |
+| CogView | [`fal-ai/cogview4`](https://fal.ai/models/fal-ai/cogview4) | — | images |
+| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny) | — | images |
+| Cosmos 3 Super | [`nvidia/cosmos-3-super/text-to-image`](https://fal.ai/models/nvidia/cosmos-3-super/text-to-image) | NVIDIA | images |
+| DeepSeek Janus-Pro | [`fal-ai/janus`](https://fal.ai/models/fal-ai/janus) | — | images |
+| Dreamshaper | [`fal-ai/dreamshaper`](https://fal.ai/models/fal-ai/dreamshaper) | — | images |
+| Emu 3.5 Image | [`fal-ai/emu-3.5-image/text-to-image`](https://fal.ai/models/fal-ai/emu-3.5-image/text-to-image) | — | images |
+| Ernie Image | [`fal-ai/ernie-image`](https://fal.ai/models/fal-ai/ernie-image) | Baidu | images |
+| Ernie Image Lora | [`fal-ai/ernie-image/lora`](https://fal.ai/models/fal-ai/ernie-image/lora) | Baidu | images |
+| Ernie Image Lora Turbo | [`fal-ai/ernie-image/lora/turbo`](https://fal.ai/models/fal-ai/ernie-image/lora/turbo) | Baidu | images |
+| Ernie Image Turbo | [`fal-ai/ernie-image/turbo`](https://fal.ai/models/fal-ai/ernie-image/turbo) | Baidu | images |
+| Fibo | [`bria/fibo/generate`](https://fal.ai/models/bria/fibo/generate) | Bria AI | images |
+| Fibo Bbq Preview | [`bria/fibo-bbq-preview/generate`](https://fal.ai/models/bria/fibo-bbq-preview/generate) | Bria AI | images |
+| Fibo Lite | [`bria/fibo-lite/generate`](https://fal.ai/models/bria/fibo-lite/generate) | Bria AI | images |
+| FLUX 2 | [`fal-ai/flux-2`](https://fal.ai/models/fal-ai/flux-2) | Black Forest Labs | images |
+| FLUX 2 Flash | [`fal-ai/flux-2/flash`](https://fal.ai/models/fal-ai/flux-2/flash) | Black Forest Labs | images |
+| Flux 2 Flex | [`fal-ai/flux-2-flex`](https://fal.ai/models/fal-ai/flux-2-flex) | Black Forest Labs | images |
+| FLUX 2 Lora | [`fal-ai/flux-2/lora`](https://fal.ai/models/fal-ai/flux-2/lora) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/ballpoint-pen-sketch`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/ballpoint-pen-sketch) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/digital-comic-art`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/digital-comic-art) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/satellite-view-style`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/satellite-view-style) | Black Forest Labs | images |
+| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/sepia-vintage`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/sepia-vintage) | Black Forest Labs | images |
+| FLUX 2 Lora Gallery Hdr Style | [`fal-ai/flux-2-lora-gallery/hdr-style`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/hdr-style) | Black Forest Labs | images |
+| FLUX 2 Lora Gallery Realism | [`fal-ai/flux-2-lora-gallery/realism`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/realism) | Black Forest Labs | images |
+| Flux 2 Max | [`fal-ai/flux-2-max`](https://fal.ai/models/fal-ai/flux-2-max) | Black Forest Labs | images |
+| Flux 2 Pro | [`fal-ai/flux-2-pro`](https://fal.ai/models/fal-ai/flux-2-pro) | Black Forest Labs | images |
+| FLUX 2 Turbo | [`fal-ai/flux-2/turbo`](https://fal.ai/models/fal-ai/flux-2/turbo) | Black Forest Labs | images |
+| Flux Kontext Lora | [`fal-ai/flux-kontext-lora/text-to-image`](https://fal.ai/models/fal-ai/flux-kontext-lora/text-to-image) | Black Forest Labs | images |
+| Flux Krea Lora | [`fal-ai/flux-krea-lora/stream`](https://fal.ai/models/fal-ai/flux-krea-lora/stream) | Black Forest Labs | images |
+| Flux Lora | [`fal-ai/flux-lora/stream`](https://fal.ai/models/fal-ai/flux-lora/stream) | Black Forest Labs | images |
+| FLUX.1 [dev] | [`fal-ai/flux-1/dev`](https://fal.ai/models/fal-ai/flux-1/dev) | Black Forest Labs | images |
+| FLUX.1 [dev] | [`fal-ai/flux/dev`](https://fal.ai/models/fal-ai/flux/dev) | Black Forest Labs | images |
+| FLUX.1 [dev] Control LoRA Canny | [`fal-ai/flux-control-lora-canny`](https://fal.ai/models/fal-ai/flux-control-lora-canny) | Black Forest Labs | images |
+| FLUX.1 [dev] Control LoRA Depth | [`fal-ai/flux-control-lora-depth`](https://fal.ai/models/fal-ai/flux-control-lora-depth) | Black Forest Labs | images |
+| FLUX.1 [dev] Inpainting with LoRAs | [`fal-ai/flux-lora/inpainting`](https://fal.ai/models/fal-ai/flux-lora/inpainting) | Black Forest Labs | images |
+| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general`](https://fal.ai/models/fal-ai/flux-general) | Black Forest Labs | images |
+| FLUX.1 [dev] with LoRAs | [`fal-ai/flux-lora`](https://fal.ai/models/fal-ai/flux-lora) | Black Forest Labs | images |
+| FLUX.1 [schnell] | [`fal-ai/flux-1/schnell`](https://fal.ai/models/fal-ai/flux-1/schnell) | Black Forest Labs | images |
+| FLUX.1 [schnell] | [`fal-ai/flux/schnell`](https://fal.ai/models/fal-ai/flux/schnell) | Black Forest Labs | images |
+| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max/text-to-image`](https://fal.ai/models/fal-ai/flux-pro/kontext/max/text-to-image) | Black Forest Labs | images |
+| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext/text-to-image`](https://fal.ai/models/fal-ai/flux-pro/kontext/text-to-image) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] | [`fal-ai/flux-1/krea`](https://fal.ai/models/fal-ai/flux-1/krea) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] | [`fal-ai/flux/krea`](https://fal.ai/models/fal-ai/flux/krea) | Black Forest Labs | images |
+| FLUX.1 Krea [dev] with LoRAs | [`fal-ai/flux-krea-lora`](https://fal.ai/models/fal-ai/flux-krea-lora) | Black Forest Labs | images |
+| FLUX.1 SRPO [dev] | [`fal-ai/flux-1/srpo`](https://fal.ai/models/fal-ai/flux-1/srpo) | Black Forest Labs | images |
+| FLUX.1 SRPO [dev] | [`fal-ai/flux/srpo`](https://fal.ai/models/fal-ai/flux/srpo) | Black Forest Labs | images |
+| FLUX.1 Subject | [`fal-ai/flux-subject`](https://fal.ai/models/fal-ai/flux-subject) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B | [`fal-ai/flux-2/klein/4b`](https://fal.ai/models/fal-ai/flux-2/klein/4b) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B Base | [`fal-ai/flux-2/klein/4b/base`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B Base LoRA | [`fal-ai/flux-2/klein/4b/base/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 4B LoRA | [`fal-ai/flux-2/klein/4b/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B | [`fal-ai/flux-2/klein/9b`](https://fal.ai/models/fal-ai/flux-2/klein/9b) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B Base | [`fal-ai/flux-2/klein/9b/base`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B Base LoRA | [`fal-ai/flux-2/klein/9b/base/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/lora) | Black Forest Labs | images |
+| FLUX.2 [klein] 9B LoRA | [`fal-ai/flux-2/klein/9b/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/lora) | Black Forest Labs | images |
+| FLUX1.1 [pro] | [`fal-ai/flux-pro/v1.1`](https://fal.ai/models/fal-ai/flux-pro/v1.1) | Black Forest Labs | images |
+| FLUX1.1 [pro] ultra | [`fal-ai/flux-pro/v1.1-ultra`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra) | Black Forest Labs | images |
+| FLUX1.1 [pro] ultra Fine-tuned | [`fal-ai/flux-pro/v1.1-ultra-finetuned`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra-finetuned) | Black Forest Labs | images |
+| Fooocus | [`fal-ai/fast-fooocus-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-fooocus-sdxl/image-to-image) | — | images |
+| Fooocus | [`fal-ai/fooocus`](https://fal.ai/models/fal-ai/fooocus) | — | images |
+| Fooocus Image Prompt | [`fal-ai/fooocus/image-prompt`](https://fal.ai/models/fal-ai/fooocus/image-prompt) | — | images |
+| Fooocus Inpainting | [`fal-ai/fooocus/inpaint`](https://fal.ai/models/fal-ai/fooocus/inpaint) | — | images |
+| Fooocus Upscale or Vary | [`fal-ai/fooocus/upscale-or-vary`](https://fal.ai/models/fal-ai/fooocus/upscale-or-vary) | — | images |
+| Gemini 2.5 Flash Image | [`fal-ai/gemini-25-flash-image`](https://fal.ai/models/fal-ai/gemini-25-flash-image) | Google | images |
+| Gemini 3 Pro Image Preview | [`fal-ai/gemini-3-pro-image-preview`](https://fal.ai/models/fal-ai/gemini-3-pro-image-preview) | Google | images |
+| Gemini 3.1 Flash Image Preview | [`fal-ai/gemini-3.1-flash-image-preview`](https://fal.ai/models/fal-ai/gemini-3.1-flash-image-preview) | Google | images |
+| GLM Image | [`fal-ai/glm-image`](https://fal.ai/models/fal-ai/glm-image) | — | images |
+| GPT Image 1 Mini | [`fal-ai/gpt-image-1-mini`](https://fal.ai/models/fal-ai/gpt-image-1-mini) | OpenAI | images |
+| GPT Image 2 API | [`openai/gpt-image-2`](https://fal.ai/models/openai/gpt-image-2) | OpenAI | images |
+| GPT-Image 1.5 | [`fal-ai/gpt-image-1.5`](https://fal.ai/models/fal-ai/gpt-image-1.5) | OpenAI | images |
+| gpt-image-1 | [`fal-ai/gpt-image-1/text-to-image`](https://fal.ai/models/fal-ai/gpt-image-1/text-to-image) | OpenAI | images |
+| Grok Imagine Image | [`xai/grok-imagine-image`](https://fal.ai/models/xai/grok-imagine-image) | xAI | images |
+| Grok Imagine Image | [`xai/grok-imagine-image/quality/text-to-image`](https://fal.ai/models/xai/grok-imagine-image/quality/text-to-image) | xAI | images |
+| Hidream I1 Dev | [`fal-ai/hidream-i1-dev`](https://fal.ai/models/fal-ai/hidream-i1-dev) | Hidream | images |
+| Hidream I1 Fast | [`fal-ai/hidream-i1-fast`](https://fal.ai/models/fal-ai/hidream-i1-fast) | Hidream | images |
+| Hidream I1 Full | [`fal-ai/hidream-i1-full`](https://fal.ai/models/fal-ai/hidream-i1-full) | Hidream | images |
+| Hidream O1 Image | [`fal-ai/hidream-o1-image`](https://fal.ai/models/fal-ai/hidream-o1-image) | Hidream | images |
+| Hidream O1 Image | [`fal-ai/hidream-o1-image/dev`](https://fal.ai/models/fal-ai/hidream-o1-image/dev) | — | images |
+| Hunyuan Image | [`fal-ai/hunyuan-image/v2.1/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v2.1/text-to-image) | Tencent | images |
+| Hunyuan Image | [`fal-ai/hunyuan-image/v3/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v3/text-to-image) | Tencent | images |
+| Hunyuan Image 3.0 Instruct | [`fal-ai/hunyuan-image/v3/instruct/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v3/instruct/text-to-image) | Tencent | images |
+| Ideogram | [`fal-ai/ideogram/custom-models/generate`](https://fal.ai/models/fal-ai/ideogram/custom-models/generate) | Ideogram | images |
+| Ideogram Text to Image | [`fal-ai/ideogram/v3`](https://fal.ai/models/fal-ai/ideogram/v3) | Ideogram | images |
+| Ideogram Transparent | [`fal-ai/ideogram/v3/generate-transparent`](https://fal.ai/models/fal-ai/ideogram/v3/generate-transparent) | Ideogram | images |
+| Ideogram V2 | [`fal-ai/ideogram/v2`](https://fal.ai/models/fal-ai/ideogram/v2) | Ideogram | images |
+| Ideogram V2 Turbo | [`fal-ai/ideogram/v2/turbo`](https://fal.ai/models/fal-ai/ideogram/v2/turbo) | Ideogram | images |
+| Ideogram V2A | [`fal-ai/ideogram/v2a`](https://fal.ai/models/fal-ai/ideogram/v2a) | Ideogram | images |
+| Ideogram V2A Turbo | [`fal-ai/ideogram/v2a/turbo`](https://fal.ai/models/fal-ai/ideogram/v2a/turbo) | Ideogram | images |
+| Ideogram V4.0 Text to Image | [`ideogram/v4`](https://fal.ai/models/ideogram/v4) | Ideogram | images |
+| Ideogram V4.0q Text to Image (LoRA) | [`ideogram/v4/lora`](https://fal.ai/models/ideogram/v4/lora) | Ideogram | images |
+| Illusion Diffusion | [`fal-ai/illusion-diffusion`](https://fal.ai/models/fal-ai/illusion-diffusion) | — | image |
+| Imagineart 1.5 Preview | [`imagineart/imagineart-1.5-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-1.5-preview/text-to-image) | ImagineArt | images |
+| ImagineArt 1.5 Pro Preview | [`imagineart/imagineart-1.5-pro-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-1.5-pro-preview/text-to-image) | ImagineArt | images |
+| Imagineart 2.0 Preview | [`imagineart/imagineart-2.0-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-2.0-preview/text-to-image) | ImagineArt | images |
+| Juggernaut Flux Base | [`rundiffusion-fal/juggernaut-flux/base`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/base) | Rundiffusion | images |
+| Juggernaut Flux Base LoRA | [`rundiffusion-fal/juggernaut-flux-lora`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux-lora) | Rundiffusion | images |
+| Juggernaut Flux Lightning | [`rundiffusion-fal/juggernaut-flux/lightning`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/lightning) | Rundiffusion | images |
+| Juggernaut Flux Pro | [`rundiffusion-fal/juggernaut-flux/pro`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/pro) | Rundiffusion | images |
+| Kling Image | [`fal-ai/kling-image/o3/text-to-image`](https://fal.ai/models/fal-ai/kling-image/o3/text-to-image) | Kling | images |
+| Kling Image | [`fal-ai/kling-image/v3/text-to-image`](https://fal.ai/models/fal-ai/kling-image/v3/text-to-image) | Kling | images |
+| Kolors | [`fal-ai/kolors`](https://fal.ai/models/fal-ai/kolors) | — | images |
+| Krea 2 Large | [`krea/v2/large/text-to-image`](https://fal.ai/models/krea/v2/large/text-to-image) | Krea | images |
+| Krea 2 Medium | [`krea/v2/medium/text-to-image`](https://fal.ai/models/krea/v2/medium/text-to-image) | Krea | images |
+| Krea 2 Medium Text to Image Turbo | [`krea/v2/medium/turbo/text-to-image`](https://fal.ai/models/krea/v2/medium/turbo/text-to-image) | Krea | images |
+| Krea 2 Text to Image Turbo LoRA | [`fal-ai/krea-2/turbo/lora`](https://fal.ai/models/fal-ai/krea-2/turbo/lora) | Krea 2 | images |
+| Krea 2 Turbo | [`fal-ai/krea-2/turbo`](https://fal.ai/models/fal-ai/krea-2/turbo) | Krea | images |
+| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion`](https://fal.ai/models/fal-ai/fast-lcm-diffusion) | — | images |
+| Longcat Image | [`fal-ai/longcat-image`](https://fal.ai/models/fal-ai/longcat-image) | — | images |
+| Luma Photon | [`fal-ai/luma-photon`](https://fal.ai/models/fal-ai/luma-photon) | Luma AI | images |
+| Luma Photon Flash | [`fal-ai/luma-photon/flash`](https://fal.ai/models/fal-ai/luma-photon/flash) | Luma AI | images |
+| Luma Uni-1 Text to Image | [`luma/agent/uni-1/v1/text-to-image`](https://fal.ai/models/luma/agent/uni-1/v1/text-to-image) | Luma AI | images |
+| Luma Uni-1 Text to Image Max | [`luma/agent/uni-1/v1/max`](https://fal.ai/models/luma/agent/uni-1/v1/max) | Luma AI | images |
+| Lumina Image 2 | [`fal-ai/lumina-image/v2`](https://fal.ai/models/fal-ai/lumina-image/v2) | — | images |
+| Mai Image 2.5 Text to Image | [`microsoft/mai-image-2.5`](https://fal.ai/models/microsoft/mai-image-2.5) | Microsoft | images |
+| MiniMax (Hailuo AI) Text to Image | [`fal-ai/minimax/image-01`](https://fal.ai/models/fal-ai/minimax/image-01) | Minimax | images |
+| Nano Banana | [`fal-ai/nano-banana`](https://fal.ai/models/fal-ai/nano-banana) | Google | images |
+| Nano Banana 2 | [`fal-ai/nano-banana-2`](https://fal.ai/models/fal-ai/nano-banana-2) | Google | images |
+| Nano Banana 2 Lite | [`google/nano-banana-2-lite`](https://fal.ai/models/google/nano-banana-2-lite) | Google | images |
+| Nano Banana Lite | [`google/nano-banana-lite`](https://fal.ai/models/google/nano-banana-lite) | Google | images |
+| Nano Banana Pro | [`fal-ai/nano-banana-pro`](https://fal.ai/models/fal-ai/nano-banana-pro) | Google | images |
+| Nucleus Image | [`fal-ai/nucleus-image`](https://fal.ai/models/fal-ai/nucleus-image) | — | images |
+| OmniGen v1 | [`fal-ai/omnigen-v1`](https://fal.ai/models/fal-ai/omnigen-v1) | — | images |
+| Omnigen V2 | [`fal-ai/omnigen-v2`](https://fal.ai/models/fal-ai/omnigen-v2) | — | images |
+| Ovis Image | [`fal-ai/ovis-image`](https://fal.ai/models/fal-ai/ovis-image) | — | images |
+| PATINA | [`fal-ai/patina/material`](https://fal.ai/models/fal-ai/patina/material) | Fal | images |
+| Phota Text to Image | [`fal-ai/phota`](https://fal.ai/models/fal-ai/phota) | — | images |
+| PixArt-Σ | [`fal-ai/pixart-sigma`](https://fal.ai/models/fal-ai/pixart-sigma) | — | images |
+| Playground v2.5 | [`fal-ai/playground-v25`](https://fal.ai/models/fal-ai/playground-v25) | — | images |
+| Pony V7 | [`fal-ai/pony-v7`](https://fal.ai/models/fal-ai/pony-v7) | — | images |
+| Qwen Image | [`fal-ai/qwen-image`](https://fal.ai/models/fal-ai/qwen-image) | Alibaba | images |
+| Qwen Image 2 | [`fal-ai/qwen-image-2/pro/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-2/pro/text-to-image) | Alibaba | images |
+| Qwen Image 2 | [`fal-ai/qwen-image-2/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-2/text-to-image) | Alibaba | images |
+| Qwen Image 2512 | [`fal-ai/qwen-image-2512`](https://fal.ai/models/fal-ai/qwen-image-2512) | Alibaba | images |
+| Qwen Image 2512 | [`fal-ai/qwen-image-2512/lora`](https://fal.ai/models/fal-ai/qwen-image-2512/lora) | Alibaba | images |
+| Qwen Image Max | [`fal-ai/qwen-image-max/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-max/text-to-image) | Alibaba | images |
+| Realistic Vision | [`fal-ai/realistic-vision`](https://fal.ai/models/fal-ai/realistic-vision) | — | images |
+| Recraft 20b | [`fal-ai/recraft-20b`](https://fal.ai/models/fal-ai/recraft-20b) | Recraft | images |
+| Recraft V3 | [`fal-ai/recraft/v3/text-to-image`](https://fal.ai/models/fal-ai/recraft/v3/text-to-image) | Recraft | images |
+| Recraft V4 | [`fal-ai/recraft/v4/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4/text-to-image) | Recraft | images |
+| Recraft V4 (Vector) | [`fal-ai/recraft/v4/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4/text-to-vector) | Recraft | images |
+| Recraft V4 Pro | [`fal-ai/recraft/v4/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4/pro/text-to-image) | Recraft | images |
+| Recraft V4 Pro (Vector) | [`fal-ai/recraft/v4/pro/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4/pro/text-to-vector) | Recraft | images |
+| Recraft V4.1 Text to Image | [`fal-ai/recraft/v4.1/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/text-to-image) | Recraft | images |
+| Recraft V4.1 Text to Image Pro | [`fal-ai/recraft/v4.1/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/pro/text-to-image) | Recraft | images |
+| Recraft V4.1 Text to Image Utility | [`fal-ai/recraft/v4.1/utility/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/utility/text-to-image) | Recraft | images |
+| Recraft V4.1 Text to Vector | [`fal-ai/recraft/v4.1/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4.1/text-to-vector) | Recraft | images |
+| Recraft V4.1 Text to Vector Pro | [`fal-ai/recraft/v4.1/pro/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4.1/pro/text-to-vector) | Recraft | images |
+| Recraft V4.1 Utility Text to Image | [`fal-ai/recraft/v4.1/utility/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/utility/pro/text-to-image) | Recraft | images |
+| Rundiffusion Photo Flux | [`rundiffusion-fal/rundiffusion-photo-flux`](https://fal.ai/models/rundiffusion-fal/rundiffusion-photo-flux) | Rundiffusion | images |
+| Sana | [`fal-ai/sana`](https://fal.ai/models/fal-ai/sana) | — | images |
+| Sana Sprint | [`fal-ai/sana/sprint`](https://fal.ai/models/fal-ai/sana/sprint) | — | images |
+| Sana v1.5 1.6B | [`fal-ai/sana/v1.5/1.6b`](https://fal.ai/models/fal-ai/sana/v1.5/1.6b) | — | images |
+| Sana v1.5 4.8B | [`fal-ai/sana/v1.5/4.8b`](https://fal.ai/models/fal-ai/sana/v1.5/4.8b) | — | images |
+| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union`](https://fal.ai/models/fal-ai/sdxl-controlnet-union) | — | images |
+| Sensenova U1 Infographic | [`fal-ai/sensenova-u1-infographic`](https://fal.ai/models/fal-ai/sensenova-u1-infographic) | — | images |
+| SoteDiffusion | [`fal-ai/stable-cascade/sote-diffusion`](https://fal.ai/models/fal-ai/stable-cascade/sote-diffusion) | Stability AI | images |
+| Stable Cascade | [`fal-ai/stable-cascade`](https://fal.ai/models/fal-ai/stable-cascade) | Stability AI | images |
+| Stable Diffusion 3.5 Large | [`fal-ai/stable-diffusion-v35-large`](https://fal.ai/models/fal-ai/stable-diffusion-v35-large) | Stability AI | images |
+| Stable Diffusion 3.5 Medium | [`fal-ai/stable-diffusion-v35-medium`](https://fal.ai/models/fal-ai/stable-diffusion-v35-medium) | Stability AI | images |
+| Stable Diffusion v1.5 | [`fal-ai/stable-diffusion-v15`](https://fal.ai/models/fal-ai/stable-diffusion-v15) | Stability AI | images |
+| Stable Diffusion V3 | [`fal-ai/stable-diffusion-v3-medium`](https://fal.ai/models/fal-ai/stable-diffusion-v3-medium) | Stability AI | images |
+| Stable Diffusion with LoRAs | [`fal-ai/lora`](https://fal.ai/models/fal-ai/lora) | — | images |
+| Stable Diffusion XL | [`fal-ai/fast-sdxl`](https://fal.ai/models/fal-ai/fast-sdxl) | — | images |
+| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl`](https://fal.ai/models/fal-ai/fast-lightning-sdxl) | — | images |
+| Vecglypher | [`fal-ai/vecglypher`](https://fal.ai/models/fal-ai/vecglypher) | — | image |
+| Vidu | [`fal-ai/vidu/q2/text-to-image`](https://fal.ai/models/fal-ai/vidu/q2/text-to-image) | Vidu | image |
+| Wan | [`fal-ai/wan/v2.2-5b/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-image) | Alibaba | image |
+| Wan | [`fal-ai/wan/v2.2-a14b/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-image) | Alibaba | image |
+| Wan | [`fal-ai/wan/v2.7/pro/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.7/pro/text-to-image) | Alibaba | images |
+| Wan | [`fal-ai/wan/v2.7/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.7/text-to-image) | Alibaba | images |
+| Wan 2.5 Text to Image | [`fal-ai/wan-25-preview/text-to-image`](https://fal.ai/models/fal-ai/wan-25-preview/text-to-image) | Alibaba | images |
+| Wan v2.2 A14B Text-to-Image A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/text-to-image/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-image/lora) | Alibaba | image |
+| Wan v2.6 Text to Image | [`wan/v2.6/text-to-image`](https://fal.ai/models/wan/v2.6/text-to-image) | Alibaba | images |
+| Z Image Base | [`fal-ai/z-image/base`](https://fal.ai/models/fal-ai/z-image/base) | Alibaba | images |
+| Z Image Base Lora | [`fal-ai/z-image/base/lora`](https://fal.ai/models/fal-ai/z-image/base/lora) | Alibaba | images |
+| Z Image Turbo | [`fal-ai/z-image/turbo`](https://fal.ai/models/fal-ai/z-image/turbo) | Alibaba | images |
+| Z Image Turbo Lora | [`fal-ai/z-image/turbo/lora`](https://fal.ai/models/fal-ai/z-image/turbo/lora) | Alibaba | images |
+| Z-Image Turbo Seamless Tiling | [`fal-ai/z-image/turbo/tiling`](https://fal.ai/models/fal-ai/z-image/turbo/tiling) | Alibaba | images |
+| Z-Image Turbo Seamless Tiling Lora | [`fal-ai/z-image/turbo/tiling/lora`](https://fal.ai/models/fal-ai/z-image/turbo/tiling/lora) | Alibaba | images |
+
+
+
+
+video-to-video — 181 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| AMT Interpolation | [`fal-ai/amt-interpolation`](https://fal.ai/models/fal-ai/amt-interpolation) | — | video |
+| AnimateDiff | [`fal-ai/fast-animatediff/video-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/video-to-video) | — | video |
+| AnimateDiff Turbo | [`fal-ai/fast-animatediff/turbo/video-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/turbo/video-to-video) | — | video |
+| Auto-Captioner | [`fal-ai/auto-caption`](https://fal.ai/models/fal-ai/auto-caption) | — | text |
+| Ben-Video-Bg-Rm | [`fal-ai/ben/v2/video`](https://fal.ai/models/fal-ai/ben/v2/video) | — | video |
+| Bernini-R Edit Video | [`fal-ai/bernini-r/edit-video`](https://fal.ai/models/fal-ai/bernini-r/edit-video) | Bytedance | video |
+| Bernini-R Reference Edit Video | [`fal-ai/bernini-r/reference-edit-video`](https://fal.ai/models/fal-ai/bernini-r/reference-edit-video) | Bytedance | video |
+| Birefnet | [`fal-ai/birefnet/v2/video`](https://fal.ai/models/fal-ai/birefnet/v2/video) | — | video |
+| Bria Video Eraser | [`bria/bria_video_eraser/erase/keypoints`](https://fal.ai/models/bria/bria_video_eraser/erase/keypoints) | Bria AI | json |
+| Bria Video Eraser | [`bria/bria_video_eraser/erase/prompt`](https://fal.ai/models/bria/bria_video_eraser/erase/prompt) | Bria AI | json |
+| Bria Video Eraser Erase Mask | [`bria/bria_video_eraser/erase/mask`](https://fal.ai/models/bria/bria_video_eraser/erase/mask) | Bria AI | json |
+| Bria's VRMBG 3.0 | [`bria/video/background-removal/v3`](https://fal.ai/models/bria/video/background-removal/v3) | — | video |
+| Bria's VRMBG 3.0 Realtime | [`bria/video/background-removal/realtime`](https://fal.ai/models/bria/video/background-removal/realtime) | Bria AI | json |
+| Bytedance Dreamactor V2 | [`fal-ai/bytedance/dreamactor/v2`](https://fal.ai/models/fal-ai/bytedance/dreamactor/v2) | Bytedance | video |
+| Bytedance Upscaler Upscale Video | [`fal-ai/bytedance-upscaler/upscale/video`](https://fal.ai/models/fal-ai/bytedance-upscaler/upscale/video) | Bytedance | video |
+| CogVideoX-5B | [`fal-ai/cogvideox-5b/video-to-video`](https://fal.ai/models/fal-ai/cogvideox-5b/video-to-video) | — | video |
+| Controlfoley | [`fal-ai/controlfoley`](https://fal.ai/models/fal-ai/controlfoley) | — | video |
+| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/video-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/video-to-video) | — | video |
+| Crystal Upscaler [Video] | [`clarityai/crystal-video-upscaler`](https://fal.ai/models/clarityai/crystal-video-upscaler) | Clarity AI | video |
+| Depth Anything Video | [`fal-ai/depth-anything-video`](https://fal.ai/models/fal-ai/depth-anything-video) | — | video |
+| DWPose Pose Prediction | [`fal-ai/dwpose/video`](https://fal.ai/models/fal-ai/dwpose/video) | — | video |
+| Editto | [`fal-ai/editto`](https://fal.ai/models/fal-ai/editto) | — | video |
+| Ffmpeg Api | [`fal-ai/ffmpeg-api/merge-videos`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-videos) | — | video |
+| FFmpeg API Compose | [`fal-ai/ffmpeg-api/compose`](https://fal.ai/models/fal-ai/ffmpeg-api/compose) | — | text |
+| Ffmpeg Api Merge Audio-Video | [`fal-ai/ffmpeg-api/merge-audio-video`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-audio-video) | — | video |
+| FILM | [`fal-ai/film/video`](https://fal.ai/models/fal-ai/film/video) | — | video |
+| Flashvsr | [`fal-ai/flashvsr/upscale/video`](https://fal.ai/models/fal-ai/flashvsr/upscale/video) | — | video |
+| Gemini Omni Flash | [`google/gemini-omni-flash/edit`](https://fal.ai/models/google/gemini-omni-flash/edit) | Google | video |
+| Grok Imagine Extend Video | [`xai/grok-imagine-video/extend-video`](https://fal.ai/models/xai/grok-imagine-video/extend-video) | xAI | video |
+| Grok Imagine Video | [`xai/grok-imagine-video/edit-video`](https://fal.ai/models/xai/grok-imagine-video/edit-video) | xAI | video |
+| Happy Horse Video Edit | [`alibaba/happy-horse/video-edit`](https://fal.ai/models/alibaba/happy-horse/video-edit) | Alibaba | video |
+| Heygen | [`fal-ai/heygen/v2/translate/precision`](https://fal.ai/models/fal-ai/heygen/v2/translate/precision) | Heygen | video |
+| Heygen | [`fal-ai/heygen/v2/translate/speed`](https://fal.ai/models/fal-ai/heygen/v2/translate/speed) | Heygen | video |
+| Heygen Lipsync - Precision | [`fal-ai/heygen/v3/lipsync/precision`](https://fal.ai/models/fal-ai/heygen/v3/lipsync/precision) | Heygen | video |
+| Heygen Lipsync - Speed | [`fal-ai/heygen/v3/lipsync/speed`](https://fal.ai/models/fal-ai/heygen/v3/lipsync/speed) | Heygen | video |
+| Hunyuan Video (Video-to-Video) | [`fal-ai/hunyuan-video/video-to-video`](https://fal.ai/models/fal-ai/hunyuan-video/video-to-video) | Tencent | video |
+| Hunyuan Video Foley | [`fal-ai/hunyuan-video-foley`](https://fal.ai/models/fal-ai/hunyuan-video-foley) | Tencent | video |
+| Infinitalk | [`fal-ai/infinitalk`](https://fal.ai/models/fal-ai/infinitalk) | — | video |
+| Infinitalk | [`fal-ai/infinitalk/video-to-video`](https://fal.ai/models/fal-ai/infinitalk/video-to-video) | — | video |
+| Kling O1 Edit Video [Pro] | [`fal-ai/kling-video/o1/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o1/video-to-video/edit) | Kling | video |
+| Kling O1 Edit Video [Standard] | [`fal-ai/kling-video/o1/standard/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o1/standard/video-to-video/edit) | Kling | video |
+| Kling O1 Reference Video to Video [Pro] | [`fal-ai/kling-video/o1/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o1/video-to-video/reference) | Kling | video |
+| Kling O1 Reference Video to Video [Standard] | [`fal-ai/kling-video/o1/standard/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o1/standard/video-to-video/reference) | Kling | video |
+| Kling O3 Edit Video [Pro] | [`fal-ai/kling-video/o3/pro/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/edit) | Kling | video |
+| Kling O3 Edit Video [Standard] | [`fal-ai/kling-video/o3/standard/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o3/standard/video-to-video/edit) | Kling | video |
+| Kling O3 Reference Video to Video [Pro] | [`fal-ai/kling-video/o3/pro/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/reference) | Kling | video |
+| Kling O3 Reference Video to Video [Standard] | [`fal-ai/kling-video/o3/standard/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o3/standard/video-to-video/reference) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/v3/pro/motion-control`](https://fal.ai/models/fal-ai/kling-video/v3/pro/motion-control) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/v3/standard/motion-control`](https://fal.ai/models/fal-ai/kling-video/v3/standard/motion-control) | Kling | video |
+| Kling Video v2.6 Motion Control [Pro] | [`fal-ai/kling-video/v2.6/pro/motion-control`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/motion-control) | Kling | video |
+| Kling Video v2.6 Motion Control [Standard] | [`fal-ai/kling-video/v2.6/standard/motion-control`](https://fal.ai/models/fal-ai/kling-video/v2.6/standard/motion-control) | Kling | video |
+| Krea Wan 14B | [`fal-ai/krea-wan-14b/video-to-video`](https://fal.ai/models/fal-ai/krea-wan-14b/video-to-video) | — | video |
+| LatentSync | [`fal-ai/latentsync`](https://fal.ai/models/fal-ai/latentsync) | — | video |
+| Lightx | [`fal-ai/lightx/recamera`](https://fal.ai/models/fal-ai/lightx/recamera) | — | video |
+| Lightx | [`fal-ai/lightx/relight`](https://fal.ai/models/fal-ai/lightx/relight) | — | video |
+| Lipsync | [`veed/lipsync`](https://fal.ai/models/veed/lipsync) | Veed | video |
+| LTX 2.3 22B | [`fal-ai/ltx-2.3-22b/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/reference-video-to-video/lora) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/colorization`](https://fal.ai/models/fal-ai/ltx-2.3-quality/colorization) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/cross-eyed`](https://fal.ai/models/fal-ai/ltx-2.3-quality/cross-eyed) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/day-to-night`](https://fal.ai/models/fal-ai/ltx-2.3-quality/day-to-night) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/deblur`](https://fal.ai/models/fal-ai/ltx-2.3-quality/deblur) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/decompression`](https://fal.ai/models/fal-ai/ltx-2.3-quality/decompression) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/hdr`](https://fal.ai/models/fal-ai/ltx-2.3-quality/hdr) | Lightricks | json |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/hdr/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/hdr/lora) | Lightricks | json |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/inpaint`](https://fal.ai/models/fal-ai/ltx-2.3-quality/inpaint) | — | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/inpaint/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/inpaint/lora) | — | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/instant-shave`](https://fal.ai/models/fal-ai/ltx-2.3-quality/instant-shave) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/outpaint`](https://fal.ai/models/fal-ai/ltx-2.3-quality/outpaint) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/outpaint/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/outpaint/lora) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/reference-video-to-video) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/reference-video-to-video/lora) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/render-to-real`](https://fal.ai/models/fal-ai/ltx-2.3-quality/render-to-real) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/water-simulation`](https://fal.ai/models/fal-ai/ltx-2.3-quality/water-simulation) | Lightricks | video |
+| LTX Video 2.0 Pro | [`fal-ai/ltx-2/extend-video`](https://fal.ai/models/fal-ai/ltx-2/extend-video) | Lightricks | video |
+| LTX Video 2.0 Retake | [`fal-ai/ltx-2/retake-video`](https://fal.ai/models/fal-ai/ltx-2/retake-video) | Lightricks | video |
+| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/extend-video`](https://fal.ai/models/fal-ai/ltx-2.3/extend-video) | Lightricks | video |
+| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/retake-video`](https://fal.ai/models/fal-ai/ltx-2.3/retake-video) | Lightricks | video |
+| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095/extend`](https://fal.ai/models/fal-ai/ltx-video-v095/extend) | Lightricks | video |
+| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095/multiconditioning`](https://fal.ai/models/fal-ai/ltx-video-v095/multiconditioning) | Lightricks | video |
+| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/extend`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/extend) | Lightricks | video |
+| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/multiconditioning`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/multiconditioning) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/extend-video`](https://fal.ai/models/fal-ai/ltx-2-19b/extend-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/extend-video/lora) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/video-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/video-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/video-to-video/lora) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/extend-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/extend-video) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/extend-video/lora) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/video-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/video-to-video) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/video-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/extend-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/extend-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/extend-video/lora) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/reference-video-to-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/video-to-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/video-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/reference-video-to-video) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/reference-video-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/video-to-video) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/video-to-video/lora) | Lightricks | video |
+| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/extend`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/extend) | Lightricks | video |
+| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/multiconditioning`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/multiconditioning) | Lightricks | video |
+| Lucy 2.1 VTON Realtime | [`decart/lucy2-vton/realtime`](https://fal.ai/models/decart/lucy2-vton/realtime) | Decart | json |
+| Lucy Edit [Pro] | [`decart/lucy-edit/pro`](https://fal.ai/models/decart/lucy-edit/pro) | Decart | video |
+| Lucy Restyle | [`decart/lucy-restyle`](https://fal.ai/models/decart/lucy-restyle) | Decart | video |
+| Luma Ray 2 Flash Modify | [`fal-ai/luma-dream-machine/ray-2-flash/modify`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/modify) | Luma AI | video |
+| Luma Ray 2 Flash Reframe | [`fal-ai/luma-dream-machine/ray-2-flash/reframe`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/reframe) | Luma AI | video |
+| Luma Ray 2 Modify | [`fal-ai/luma-dream-machine/ray-2/modify`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/modify) | Luma AI | video |
+| Luma Ray 2 Reframe | [`fal-ai/luma-dream-machine/ray-2/reframe`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/reframe) | Luma AI | video |
+| Luma Ray 3.2 Reframe | [`luma/agent/ray/v3.2/reframe`](https://fal.ai/models/luma/agent/ray/v3.2/reframe) | Luma AI | video |
+| Luma Ray 3.2 Video to Video | [`luma/agent/ray/v3.2/video-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/video-to-video) | Luma AI | video |
+| MAGI-1 (Distilled) | [`fal-ai/magi-distilled/extend-video`](https://fal.ai/models/fal-ai/magi-distilled/extend-video) | — | video |
+| Marey Realism V1.5 | [`moonvalley/marey/motion-transfer`](https://fal.ai/models/moonvalley/marey/motion-transfer) | Moonvalley | video |
+| Marey Realism V1.5 | [`moonvalley/marey/pose-transfer`](https://fal.ai/models/moonvalley/marey/pose-transfer) | Moonvalley | video |
+| Mirelo SFX | [`mirelo-ai/sfx-v1/video-to-video`](https://fal.ai/models/mirelo-ai/sfx-v1/video-to-video) | Mirelo AI | video |
+| Mirelo SFX V1.5 | [`mirelo-ai/sfx-v1.5/video-to-video`](https://fal.ai/models/mirelo-ai/sfx-v1.5/video-to-video) | Mirelo AI | video |
+| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/video-to-video`](https://fal.ai/models/mirelo-ai/sfx1.6/video-to-video) | Mirelo AI | video |
+| MMAudio V2 | [`fal-ai/mmaudio-v2`](https://fal.ai/models/fal-ai/mmaudio-v2) | — | video |
+| One To All Animation | [`fal-ai/one-to-all-animation/1.3b`](https://fal.ai/models/fal-ai/one-to-all-animation/1.3b) | — | video |
+| One To All Animation | [`fal-ai/one-to-all-animation/14b`](https://fal.ai/models/fal-ai/one-to-all-animation/14b) | — | video |
+| Pikadditions (v2) | [`fal-ai/pika/v2/pikadditions`](https://fal.ai/models/fal-ai/pika/v2/pikadditions) | Pika | video |
+| Pixelcut Video Background Removal | [`pixelcut/video-background-removal`](https://fal.ai/models/pixelcut/video-background-removal) | Pixelcut | video |
+| PixVerse Extend | [`fal-ai/pixverse/extend`](https://fal.ai/models/fal-ai/pixverse/extend) | Pixverse | video |
+| PixVerse Extend Fast | [`fal-ai/pixverse/extend/fast`](https://fal.ai/models/fal-ai/pixverse/extend/fast) | Pixverse | video |
+| PixVerse Lipsync | [`fal-ai/pixverse/lipsync`](https://fal.ai/models/fal-ai/pixverse/lipsync) | Pixverse | video |
+| PixVerse Sound Effects | [`fal-ai/pixverse/sound-effects`](https://fal.ai/models/fal-ai/pixverse/sound-effects) | Pixverse | video |
+| PixVerse V6 Extend | [`fal-ai/pixverse/v6/extend`](https://fal.ai/models/fal-ai/pixverse/v6/extend) | Pixverse | video |
+| RIFE | [`fal-ai/rife/video`](https://fal.ai/models/fal-ai/rife/video) | — | video |
+| Sam 3 | [`fal-ai/sam-3/video`](https://fal.ai/models/fal-ai/sam-3/video) | — | video |
+| Sam 3 | [`fal-ai/sam-3/video-rle`](https://fal.ai/models/fal-ai/sam-3/video-rle) | — | video |
+| Sam 3 1 | [`fal-ai/sam-3-1/video`](https://fal.ai/models/fal-ai/sam-3-1/video) | — | video |
+| Sam 3 1 | [`fal-ai/sam-3-1/video-rle`](https://fal.ai/models/fal-ai/sam-3-1/video-rle) | — | video |
+| Scail 2 | [`fal-ai/scail-2`](https://fal.ai/models/fal-ai/scail-2) | z AI | video |
+| SeedVR2 | [`fal-ai/seedvr/upscale/video`](https://fal.ai/models/fal-ai/seedvr/upscale/video) | SeedVR | video |
+| Segment Anything Model 2 | [`fal-ai/sam2/video`](https://fal.ai/models/fal-ai/sam2/video) | — | video |
+| Sora 2 | [`fal-ai/sora-2/video-to-video/remix`](https://fal.ai/models/fal-ai/sora-2/video-to-video/remix) | OpenAI | video |
+| Subtitles | [`veed/subtitles`](https://fal.ai/models/veed/subtitles) | Veed | video |
+| Sync Lipsync | [`fal-ai/sync-lipsync/v2/pro`](https://fal.ai/models/fal-ai/sync-lipsync/v2/pro) | Syncso | video |
+| Sync Lipsync 2.0 | [`fal-ai/sync-lipsync/v2`](https://fal.ai/models/fal-ai/sync-lipsync/v2) | Syncso | video |
+| Sync React-1 | [`fal-ai/sync-lipsync/react-1`](https://fal.ai/models/fal-ai/sync-lipsync/react-1) | Syncso | video |
+| sync-3 Lipsync | [`fal-ai/sync-lipsync/v3`](https://fal.ai/models/fal-ai/sync-lipsync/v3) | Syncso | video |
+| sync.so -- lipsync 1.9.0-beta | [`fal-ai/sync-lipsync`](https://fal.ai/models/fal-ai/sync-lipsync) | Syncso | video |
+| ThinkSound | [`fal-ai/thinksound`](https://fal.ai/models/fal-ai/thinksound) | — | video |
+| ThinkSound | [`fal-ai/thinksound/audio`](https://fal.ai/models/fal-ai/thinksound/audio) | — | audio |
+| Topaz Video Upscale | [`fal-ai/topaz/upscale/video`](https://fal.ai/models/fal-ai/topaz/upscale/video) | Topaz Labs | video |
+| V2.6 | [`wan/v2.6/reference-to-video/flash`](https://fal.ai/models/wan/v2.6/reference-to-video/flash) | Alibaba | video |
+| Veo 3.1 | [`fal-ai/veo3.1/extend-video`](https://fal.ai/models/fal-ai/veo3.1/extend-video) | Google | video |
+| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/extend-video`](https://fal.ai/models/fal-ai/veo3.1/fast/extend-video) | Google | video |
+| Video | [`bria/video/background-removal`](https://fal.ai/models/bria/video/background-removal) | Bria AI | video |
+| Video | [`bria/video/erase/keypoints`](https://fal.ai/models/bria/video/erase/keypoints) | Bria AI | json |
+| Video | [`bria/video/erase/mask`](https://fal.ai/models/bria/video/erase/mask) | Bria AI | json |
+| Video | [`bria/video/erase/prompt`](https://fal.ai/models/bria/video/erase/prompt) | Bria AI | json |
+| Video | [`bria/video/increase-resolution`](https://fal.ai/models/bria/video/increase-resolution) | Bria AI | video |
+| Video Background Removal | [`veed/video-background-removal`](https://fal.ai/models/veed/video-background-removal) | Veed | video |
+| Video Background Removal | [`veed/video-background-removal/fast`](https://fal.ai/models/veed/video-background-removal/fast) | Veed | video |
+| Video Background Removal | [`veed/video-background-removal/green-screen`](https://fal.ai/models/veed/video-background-removal/green-screen) | Veed | video |
+| Video Sound Effects Generator | [`cassetteai/video-sound-effects-generator`](https://fal.ai/models/cassetteai/video-sound-effects-generator) | Cassette AI | video |
+| Video Upscaler | [`fal-ai/video-upscaler`](https://fal.ai/models/fal-ai/video-upscaler) | — | video |
+| Vidu | [`fal-ai/vidu/q2/video-extension/pro`](https://fal.ai/models/fal-ai/vidu/q2/video-extension/pro) | Vidu | video |
+| Void Video Inpainting | [`fal-ai/void-video-inpainting`](https://fal.ai/models/fal-ai/void-video-inpainting) | — | video |
+| Wan | [`fal-ai/wan/v2.2-a14b/video-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/video-to-video) | Alibaba | video |
+| Wan | [`fal-ai/wan/v2.7/edit-video`](https://fal.ai/models/fal-ai/wan/v2.7/edit-video) | Alibaba | video |
+| Wan 2.1 VACE Long Reframe | [`fal-ai/wan-vace-apps/long-reframe`](https://fal.ai/models/fal-ai/wan-vace-apps/long-reframe) | Alibaba | video |
+| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/depth`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/depth) | Alibaba | video |
+| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/inpainting`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/inpainting) | Alibaba | video |
+| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/outpainting`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/outpainting) | Alibaba | video |
+| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/reframe`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/reframe) | Alibaba | video |
+| Wan Motion | [`fal-ai/wan-motion`](https://fal.ai/models/fal-ai/wan-motion) | — | video |
+| Wan v2.6 Reference to Video | [`wan/v2.6/reference-to-video`](https://fal.ai/models/wan/v2.6/reference-to-video) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b`](https://fal.ai/models/fal-ai/wan-vace-14b) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b/depth`](https://fal.ai/models/fal-ai/wan-vace-14b/depth) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b/inpainting`](https://fal.ai/models/fal-ai/wan-vace-14b/inpainting) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b/outpainting`](https://fal.ai/models/fal-ai/wan-vace-14b/outpainting) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b/pose`](https://fal.ai/models/fal-ai/wan-vace-14b/pose) | Alibaba | video |
+| Wan VACE 14B | [`fal-ai/wan-vace-14b/reframe`](https://fal.ai/models/fal-ai/wan-vace-14b/reframe) | Alibaba | video |
+| Wan VACE Video Edit | [`fal-ai/wan-vace-apps/video-edit`](https://fal.ai/models/fal-ai/wan-vace-apps/video-edit) | Alibaba | video |
+| Wan-2.2 Animate Move | [`fal-ai/wan/v2.2-14b/animate/move`](https://fal.ai/models/fal-ai/wan/v2.2-14b/animate/move) | Alibaba | video |
+| Wan-2.2 Animate Replace | [`fal-ai/wan/v2.2-14b/animate/replace`](https://fal.ai/models/fal-ai/wan/v2.2-14b/animate/replace) | Alibaba | video |
+| Workflow Utilities Auto Subtitle | [`fal-ai/workflow-utilities/auto-subtitle`](https://fal.ai/models/fal-ai/workflow-utilities/auto-subtitle) | — | video |
+| Workflow Utilities Blend Video | [`fal-ai/workflow-utilities/blend-video`](https://fal.ai/models/fal-ai/workflow-utilities/blend-video) | — | video |
+| Workflow Utilities Reverse Video | [`fal-ai/workflow-utilities/reverse-video`](https://fal.ai/models/fal-ai/workflow-utilities/reverse-video) | — | video |
+| Workflow Utilities Scale Video | [`fal-ai/workflow-utilities/scale-video`](https://fal.ai/models/fal-ai/workflow-utilities/scale-video) | — | video |
+| Workflow Utilities Trim Video | [`fal-ai/workflow-utilities/trim-video`](https://fal.ai/models/fal-ai/workflow-utilities/trim-video) | — | video |
+
+
+
+
+text-to-video — 130 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| AnimateDiff | [`fal-ai/fast-animatediff/text-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/text-to-video) | — | video |
+| AnimateDiff Turbo | [`fal-ai/fast-animatediff/turbo/text-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/turbo/text-to-video) | — | video |
+| Avatars | [`veed/avatars/text-to-video`](https://fal.ai/models/veed/avatars/text-to-video) | Veed | video |
+| Avatars Text to Video | [`argil/avatars/text-to-video`](https://fal.ai/models/argil/avatars/text-to-video) | Argil AI | video |
+| Bernini-R Text to Video | [`fal-ai/bernini-r/text-to-video`](https://fal.ai/models/fal-ai/bernini-r/text-to-video) | Bytedance | video |
+| Bytedance Seedance V1 Pro Fast Text To Video | [`fal-ai/bytedance/seedance/v1/pro/fast/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/fast/text-to-video) | Bytedance | video |
+| Bytedance Seedance V1.5 Pro Text To Video | [`fal-ai/bytedance/seedance/v1.5/pro/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1.5/pro/text-to-video) | Bytedance | video |
+| CogVideoX-5B | [`fal-ai/cogvideox-5b`](https://fal.ai/models/fal-ai/cogvideox-5b) | — | video |
+| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/text-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/text-to-video) | NVIDIA | video |
+| Cosmos Predict 2.5 2B Distilled | [`fal-ai/cosmos-predict-2.5/distilled/text-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/distilled/text-to-video) | NVIDIA | video |
+| Fabric 1.0 | [`veed/fabric-1.0/text`](https://fal.ai/models/veed/fabric-1.0/text) | Veed | video |
+| Gemini Omni Flash | [`google/gemini-omni-flash`](https://fal.ai/models/google/gemini-omni-flash) | Google | video |
+| Grok Imagine Video | [`xai/grok-imagine-video/text-to-video`](https://fal.ai/models/xai/grok-imagine-video/text-to-video) | xAI | video |
+| Happy Horse | [`alibaba/happy-horse/text-to-video`](https://fal.ai/models/alibaba/happy-horse/text-to-video) | Alibaba | video |
+| Happy Horse 1.1 Text to Video | [`alibaba/happy-horse/v1.1/text-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/text-to-video) | Alibaba | video |
+| Heygen | [`fal-ai/heygen/avatar3/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar3/digital-twin) | Heygen | video |
+| Heygen | [`fal-ai/heygen/avatar4/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar4/digital-twin) | Heygen | video |
+| Heygen | [`fal-ai/heygen/v2/video-agent`](https://fal.ai/models/fal-ai/heygen/v2/video-agent) | Heygen | video |
+| Heygen v5 Digital Twin | [`fal-ai/heygen/avatar5/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar5/digital-twin) | Heygen | video |
+| Heygen Video Agent | [`fal-ai/heygen/v3/video-agent`](https://fal.ai/models/fal-ai/heygen/v3/video-agent) | Heygen | video |
+| Hunyuan Video | [`fal-ai/hunyuan-video`](https://fal.ai/models/fal-ai/hunyuan-video) | Tencent | video |
+| Hunyuan Video V1.5 | [`fal-ai/hunyuan-video-v1.5/text-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-v1.5/text-to-video) | Tencent | video |
+| Infinitalk | [`fal-ai/infinitalk/single-text`](https://fal.ai/models/fal-ai/infinitalk/single-text) | — | video |
+| Infinity Star | [`fal-ai/infinity-star/text-to-video`](https://fal.ai/models/fal-ai/infinity-star/text-to-video) | — | video |
+| Kandinsky5 | [`fal-ai/kandinsky5/text-to-video`](https://fal.ai/models/fal-ai/kandinsky5/text-to-video) | Kandinsky | video |
+| Kandinsky5 | [`fal-ai/kandinsky5/text-to-video/distill`](https://fal.ai/models/fal-ai/kandinsky5/text-to-video/distill) | Kandinsky | video |
+| Kandinsky5 Pro | [`fal-ai/kandinsky5-pro/text-to-video`](https://fal.ai/models/fal-ai/kandinsky5-pro/text-to-video) | Kandinsky | video |
+| Kling 1.0 | [`fal-ai/kling-video/v1/standard/effects`](https://fal.ai/models/fal-ai/kling-video/v1/standard/effects) | Kling | video |
+| Kling 1.0 | [`fal-ai/kling-video/v1/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1/standard/text-to-video) | Kling | video |
+| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/effects`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/effects) | Kling | video |
+| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/text-to-video) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/effects`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/effects) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/text-to-video) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/effects`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/effects) | Kling | video |
+| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/text-to-video) | Kling | video |
+| Kling 2.0 Master | [`fal-ai/kling-video/v2/master/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2/master/text-to-video) | Kling | video |
+| Kling 2.1 Master | [`fal-ai/kling-video/v2.1/master/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/master/text-to-video) | Kling | video |
+| Kling LipSync Audio-to-Video | [`fal-ai/kling-video/lipsync/audio-to-video`](https://fal.ai/models/fal-ai/kling-video/lipsync/audio-to-video) | Kling | video |
+| Kling LipSync Text-to-Video | [`fal-ai/kling-video/lipsync/text-to-video`](https://fal.ai/models/fal-ai/kling-video/lipsync/text-to-video) | Kling | video |
+| Kling O3 Text to Video [Pro] | [`fal-ai/kling-video/o3/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/text-to-video) | Kling | video |
+| Kling O3 Text to Video [Standard] | [`fal-ai/kling-video/o3/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/text-to-video) | Kling | video |
+| Kling v2.5 Text to Video | [`fal-ai/kling-video/v2.5-turbo/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/pro/text-to-video) | Kling | video |
+| Kling Video | [`fal-ai/kling-video/o3/4k/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/text-to-video) | Kling | video |
+| Kling Video v2.6 Text to Video | [`fal-ai/kling-video/v2.6/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/text-to-video) | Kling | video |
+| Kling Video V3 Standard Turbo Text to Video | [`fal-ai/kling-video/v3/turbo/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/standard/text-to-video) | Kling | video |
+| Kling Video V3 Text to Video 4K | [`fal-ai/kling-video/v3/4k/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/4k/text-to-video) | Kling | video |
+| Kling Video v3 Text to Video [Pro] | [`fal-ai/kling-video/v3/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/pro/text-to-video) | Kling | video |
+| Kling Video v3 Text to Video [Standard] | [`fal-ai/kling-video/v3/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/standard/text-to-video) | Kling | video |
+| Kling Video V3 Turbo Pro Text to Video | [`fal-ai/kling-video/v3/turbo/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/pro/text-to-video) | Kling | video |
+| Krea Wan 14b- Text to Video | [`fal-ai/krea-wan-14b/text-to-video`](https://fal.ai/models/fal-ai/krea-wan-14b/text-to-video) | — | video |
+| LongCat Video | [`fal-ai/longcat-video/text-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/text-to-video/480p) | — | video |
+| LongCat Video | [`fal-ai/longcat-video/text-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/text-to-video/720p) | — | video |
+| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/text-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/distilled/text-to-video/480p) | — | video |
+| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/text-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/distilled/text-to-video/720p) | — | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-video) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-video/lora) | Lightricks | video |
+| LTX 2.3 Video Fast | [`fal-ai/ltx-2.3/text-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2.3/text-to-video/fast) | Lightricks | video |
+| LTX Video (preview) | [`fal-ai/ltx-video`](https://fal.ai/models/fal-ai/ltx-video) | Lightricks | video |
+| LTX Video 2.0 Fast | [`fal-ai/ltx-2/text-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2/text-to-video/fast) | Lightricks | video |
+| LTX Video 2.0 Pro | [`fal-ai/ltx-2/text-to-video`](https://fal.ai/models/fal-ai/ltx-2/text-to-video) | Lightricks | video |
+| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/text-to-video) | Lightricks | video |
+| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095`](https://fal.ai/models/fal-ai/ltx-video-v095) | Lightricks | video |
+| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/text-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/text-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/text-to-video/lora) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/text-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/text-to-video) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/text-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/text-to-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/text-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/text-to-video) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/text-to-video/lora) | Lightricks | video |
+| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled) | Lightricks | video |
+| Luma Ray 2 | [`fal-ai/luma-dream-machine/ray-2`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2) | Luma AI | video |
+| Luma Ray 2 Flash | [`fal-ai/luma-dream-machine/ray-2-flash`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash) | Luma AI | video |
+| Luma Ray 3.2 Text to Video | [`luma/agent/ray/v3.2/text-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/text-to-video) | Luma AI | video |
+| MAGI-1 (Distilled) | [`fal-ai/magi-distilled`](https://fal.ai/models/fal-ai/magi-distilled) | — | video |
+| Marey Realism V1.5 | [`moonvalley/marey/t2v`](https://fal.ai/models/moonvalley/marey/t2v) | Moonvalley | video |
+| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01`](https://fal.ai/models/fal-ai/minimax/video-01) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 Director | [`fal-ai/minimax/video-01-director`](https://fal.ai/models/fal-ai/minimax/video-01-director) | Minimax | video |
+| MiniMax (Hailuo AI) Video 01 Live | [`fal-ai/minimax/video-01-live`](https://fal.ai/models/fal-ai/minimax/video-01-live) | Minimax | video |
+| MiniMax Hailuo 02 [Pro] (Text to Video) | [`fal-ai/minimax/hailuo-02/pro/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/pro/text-to-video) | Minimax | video |
+| MiniMax Hailuo 02 [Standard] (Text to Video) | [`fal-ai/minimax/hailuo-02/standard/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/standard/text-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 [Pro] (Text to Video) | [`fal-ai/minimax/hailuo-2.3/pro/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/pro/text-to-video) | Minimax | video |
+| MiniMax Hailuo 2.3 [Standard] (Text to Video) | [`fal-ai/minimax/hailuo-2.3/standard/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/standard/text-to-video) | Minimax | video |
+| Ovi Text to Video | [`fal-ai/ovi`](https://fal.ai/models/fal-ai/ovi) | — | video |
+| Pika Text to Video (v2.1) | [`fal-ai/pika/v2.1/text-to-video`](https://fal.ai/models/fal-ai/pika/v2.1/text-to-video) | Pika | video |
+| Pika Text to Video (v2.2) | [`fal-ai/pika/v2.2/text-to-video`](https://fal.ai/models/fal-ai/pika/v2.2/text-to-video) | Pika | video |
+| Pika Text to Video Turbo (v2) | [`fal-ai/pika/v2/turbo/text-to-video`](https://fal.ai/models/fal-ai/pika/v2/turbo/text-to-video) | Pika | video |
+| PixVerse C1 Text To Video | [`fal-ai/pixverse/c1/text-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/text-to-video) | Pixverse | video |
+| PixVerse V3.5 Text To Video | [`fal-ai/pixverse/v3.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v3.5/text-to-video) | Pixverse | video |
+| PixVerse V3.5 Text To Video Fast | [`fal-ai/pixverse/v3.5/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v3.5/text-to-video/fast) | Pixverse | video |
+| PixVerse V4 Text To Video | [`fal-ai/pixverse/v4/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v4/text-to-video) | Pixverse | video |
+| PixVerse V4 Text To Video Fast | [`fal-ai/pixverse/v4/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4/text-to-video/fast) | Pixverse | video |
+| PixVerse V4.5 Text To Video | [`fal-ai/pixverse/v4.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v4.5/text-to-video) | Pixverse | video |
+| PixVerse V4.5 Text To Video Fast | [`fal-ai/pixverse/v4.5/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4.5/text-to-video/fast) | Pixverse | video |
+| PixVerse V5 Text To Video | [`fal-ai/pixverse/v5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5/text-to-video) | Pixverse | video |
+| PixVerse V5.5 Text To Video | [`fal-ai/pixverse/v5.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.5/text-to-video) | Pixverse | video |
+| PixVerse V5.6 Text To Video | [`fal-ai/pixverse/v5.6/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.6/text-to-video) | Pixverse | video |
+| PixVerse V6 Text To Video | [`fal-ai/pixverse/v6/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v6/text-to-video) | Pixverse | video |
+| Seedance 1.0 Pro | [`fal-ai/bytedance/seedance/v1/pro/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/text-to-video) | Bytedance | video |
+| Seedance 2.0 Fast Text to Video | [`bytedance/seedance-2.0/fast/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/text-to-video) | Bytedance | video |
+| Seedance 2.0 Mini Text to Video | [`bytedance/seedance-2.0/mini/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/text-to-video) | Bytedance | video |
+| Seedance 2.0 Text to Video API | [`bytedance/seedance-2.0/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/text-to-video) | Bytedance | video |
+| Sora 2 | [`fal-ai/sora-2/text-to-video`](https://fal.ai/models/fal-ai/sora-2/text-to-video) | OpenAI | video |
+| Sora 2 | [`fal-ai/sora-2/text-to-video/pro`](https://fal.ai/models/fal-ai/sora-2/text-to-video/pro) | OpenAI | video |
+| Stable Video Diffusion | [`fal-ai/fast-svd/text-to-video`](https://fal.ai/models/fal-ai/fast-svd/text-to-video) | — | video |
+| Stable Video Diffusion Turbo | [`fal-ai/fast-svd-lcm/text-to-video`](https://fal.ai/models/fal-ai/fast-svd-lcm/text-to-video) | — | video |
+| T2V Turbo - Video Crafter | [`fal-ai/t2v-turbo`](https://fal.ai/models/fal-ai/t2v-turbo) | — | video |
+| Veo 2 | [`fal-ai/veo2`](https://fal.ai/models/fal-ai/veo2) | Google | video |
+| Veo 3 | [`fal-ai/veo3`](https://fal.ai/models/fal-ai/veo3) | Google | video |
+| Veo 3 Fast | [`fal-ai/veo3/fast`](https://fal.ai/models/fal-ai/veo3/fast) | Google | video |
+| Veo 3.1 | [`fal-ai/veo3.1`](https://fal.ai/models/fal-ai/veo3.1) | Google | video |
+| Veo 3.1 Fast | [`fal-ai/veo3.1/fast`](https://fal.ai/models/fal-ai/veo3.1/fast) | Google | video |
+| Veo3.1 Lite Text to Video | [`fal-ai/veo3.1/lite`](https://fal.ai/models/fal-ai/veo3.1/lite) | Google | video |
+| Vidu | [`fal-ai/vidu/q2/text-to-video`](https://fal.ai/models/fal-ai/vidu/q2/text-to-video) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q3/text-to-video`](https://fal.ai/models/fal-ai/vidu/q3/text-to-video) | Vidu | video |
+| Vidu | [`fal-ai/vidu/q3/text-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q3/text-to-video/turbo) | Vidu | video |
+| Vidu Text to Video | [`fal-ai/vidu/q1/text-to-video`](https://fal.ai/models/fal-ai/vidu/q1/text-to-video) | Vidu | video |
+| Wan | [`fal-ai/wan/v2.2-5b/text-to-video/distill`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video/distill) | Alibaba | video |
+| Wan | [`fal-ai/wan/v2.2-5b/text-to-video/fast-wan`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video/fast-wan) | Alibaba | video |
+| Wan | [`fal-ai/wan/v2.2-a14b/text-to-video/turbo`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video/turbo) | Alibaba | video |
+| Wan 2.5 Text to Video | [`fal-ai/wan-25-preview/text-to-video`](https://fal.ai/models/fal-ai/wan-25-preview/text-to-video) | Alibaba | video |
+| Wan Text to Video | [`fal-ai/wan/v2.7/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/text-to-video) | Alibaba | video |
+| Wan v2.2 5B | [`fal-ai/wan/v2.2-5b/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video) | Alibaba | video |
+| Wan v2.6 Text to Video | [`wan/v2.6/text-to-video`](https://fal.ai/models/wan/v2.6/text-to-video) | Alibaba | video |
+| Wan-2.1 Pro Text-to-Video | [`fal-ai/wan-pro/text-to-video`](https://fal.ai/models/fal-ai/wan-pro/text-to-video) | Alibaba | video |
+| Wan-2.1 Text-to-Video | [`fal-ai/wan-t2v`](https://fal.ai/models/fal-ai/wan-t2v) | Alibaba | video |
+| Wan-2.1 Text-to-Video with LoRAs | [`fal-ai/wan-t2v-lora`](https://fal.ai/models/fal-ai/wan-t2v-lora) | Alibaba | video |
+| Wan-2.2 Text-to-Video A14B | [`fal-ai/wan/v2.2-a14b/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video) | Alibaba | video |
+| Wan-2.2 Text-to-Video A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/text-to-video/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video/lora) | Alibaba | video |
+
+
+
+
+training — 52 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| ERNIE-Image Trainer | [`fal-ai/ernie-image-trainer`](https://fal.ai/models/fal-ai/ernie-image-trainer) | Baidu | json |
+| FLUX 2 [klein] 9b Base Trainer | [`fal-ai/flux-2-klein-9b-base-trainer`](https://fal.ai/models/fal-ai/flux-2-klein-9b-base-trainer) | Black Forest Labs | json |
+| Flux 2 Klein 9B Base Trainer | [`fal-ai/flux-2-klein-9b-base-trainer/edit`](https://fal.ai/models/fal-ai/flux-2-klein-9b-base-trainer/edit) | Black Forest Labs | json |
+| FLUX 2 Trainer | [`fal-ai/flux-2-trainer`](https://fal.ai/models/fal-ai/flux-2-trainer) | Black Forest Labs | json |
+| FLUX 2 Trainer Edit | [`fal-ai/flux-2-trainer/edit`](https://fal.ai/models/fal-ai/flux-2-trainer/edit) | Black Forest Labs | json |
+| FLUX 2 Trainer V2 | [`fal-ai/flux-2-trainer-v2`](https://fal.ai/models/fal-ai/flux-2-trainer-v2) | Black Forest Labs | json |
+| FLUX 2 Trainer V2 Edit | [`fal-ai/flux-2-trainer-v2/edit`](https://fal.ai/models/fal-ai/flux-2-trainer-v2/edit) | Black Forest Labs | json |
+| Flux Kontext Trainer | [`fal-ai/flux-kontext-trainer`](https://fal.ai/models/fal-ai/flux-kontext-trainer) | Black Forest Labs | json |
+| Ideogram | [`fal-ai/ideogram/custom-models`](https://fal.ai/models/fal-ai/ideogram/custom-models) | Ideogram | text |
+| Ideogram V4.0q LoRA Trainer | [`ideogram/v4/trainer`](https://fal.ai/models/ideogram/v4/trainer) | Ideogram | json |
+| Krea 2 Trainer | [`fal-ai/krea-2-trainer`](https://fal.ai/models/fal-ai/krea-2-trainer) | Krea | json |
+| LTX 2.3 Trainer (V2) - Audio Inpainting | [`fal-ai/ltx23-trainer-v2/audio-inpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-inpaint) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Audio+Video Reference IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/av2av`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/av2av) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Audio+Video Reference Transformation | [`fal-ai/ltx23-trainer-v2/av2av`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/av2av) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Audio-to-Audio | [`fal-ai/ltx23-trainer-v2/a2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/a2a) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Audio-to-Audio IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/a2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/a2a) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Audio-to-Video | [`fal-ai/ltx23-trainer-v2/a2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/a2v) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Backward Audio Extension | [`fal-ai/ltx23-trainer-v2/audio-extend-suffix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-extend-suffix) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Backward Video Extension | [`fal-ai/ltx23-trainer-v2/extend-suffix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/extend-suffix) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Forward Audio Extension | [`fal-ai/ltx23-trainer-v2/audio-extend-prefix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-extend-prefix) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Forward Video Extension | [`fal-ai/ltx23-trainer-v2/extend-prefix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/extend-prefix) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Image-to-Video | [`fal-ai/ltx23-trainer-v2/i2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/i2v) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Keyframe Interpolation | [`fal-ai/ltx23-trainer-v2/interpolate`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/interpolate) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Masked Audio+Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/av2av-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/av2av-masked) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Masked Audio+Video Transformation | [`fal-ai/ltx23-trainer-v2/av2av-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/av2av-masked) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Masked Video-to-Video | [`fal-ai/ltx23-trainer-v2/v2v-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2v-masked) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Masked Video-to-Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/v2v-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/v2v-masked) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Spatial Outpainting | [`fal-ai/ltx23-trainer-v2/outpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/outpaint) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Text-to-Audio | [`fal-ai/ltx23-trainer-v2/t2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/t2a) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Text-to-Video | [`fal-ai/ltx23-trainer-v2/t2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/t2v) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Video Inpainting | [`fal-ai/ltx23-trainer-v2/inpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/inpaint) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Video-to-Audio | [`fal-ai/ltx23-trainer-v2/v2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2a) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Video-to-Video | [`fal-ai/ltx23-trainer-v2/v2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2v) | Lightricks | video |
+| LTX 2.3 Trainer (V2) - Video-to-Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/v2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/v2v) | Lightricks | video |
+| LTX-2.3 22B Video to Video Trainer | [`fal-ai/ltx23-v2v-trainer`](https://fal.ai/models/fal-ai/ltx23-v2v-trainer) | Lightricks | video |
+| LTX-2.3 22B Video Trainer | [`fal-ai/ltx23-video-trainer`](https://fal.ai/models/fal-ai/ltx23-video-trainer) | Lightricks | video |
+| Phota Create Profile | [`fal-ai/phota/create-profile`](https://fal.ai/models/fal-ai/phota/create-profile) | Phota | text |
+| Qwen Image 2512 Trainer | [`fal-ai/qwen-image-2512-trainer`](https://fal.ai/models/fal-ai/qwen-image-2512-trainer) | Alibaba | json |
+| Qwen Image Edit 2509 Trainer | [`fal-ai/qwen-image-edit-2509-trainer`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-trainer) | Alibaba | json |
+| Recraft V3 Create Style | [`fal-ai/recraft/v3/create-style`](https://fal.ai/models/fal-ai/recraft/v3/create-style) | Recraft | text |
+| Stable Audio 3 Trainer | [`fal-ai/stable-audio-3-trainer`](https://fal.ai/models/fal-ai/stable-audio-3-trainer) | Stability AI | json |
+| Train Flux LoRA | [`fal-ai/flux-lora-fast-training`](https://fal.ai/models/fal-ai/flux-lora-fast-training) | Black Forest Labs | json |
+| Train Flux LoRAs For Portraits | [`fal-ai/flux-lora-portrait-trainer`](https://fal.ai/models/fal-ai/flux-lora-portrait-trainer) | Black Forest Labs | json |
+| Turbo Flux Trainer | [`fal-ai/turbo-flux-trainer`](https://fal.ai/models/fal-ai/turbo-flux-trainer) | Black Forest Labs | json |
+| Wan 2.2 14B Image Trainer | [`fal-ai/wan-22-image-trainer`](https://fal.ai/models/fal-ai/wan-22-image-trainer) | Alibaba | json |
+| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/i2v-720p`](https://fal.ai/models/fal-ai/wan-trainer/i2v-720p) | Alibaba | json |
+| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/t2v`](https://fal.ai/models/fal-ai/wan-trainer/t2v) | Alibaba | json |
+| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/t2v-14b`](https://fal.ai/models/fal-ai/wan-trainer/t2v-14b) | Alibaba | json |
+| Wan-2.2 LoRA Trainer | [`fal-ai/wan-22-trainer/i2v-a14b`](https://fal.ai/models/fal-ai/wan-22-trainer/i2v-a14b) | Alibaba | json |
+| Wan-2.2 LoRA Trainer | [`fal-ai/wan-22-trainer/t2v-a14b`](https://fal.ai/models/fal-ai/wan-22-trainer/t2v-a14b) | Alibaba | json |
+| Z Image Trainer | [`fal-ai/z-image-trainer`](https://fal.ai/models/fal-ai/z-image-trainer) | Alibaba | json |
+| Z Image Turbo Trainer V2 | [`fal-ai/z-image-turbo-trainer-v2`](https://fal.ai/models/fal-ai/z-image-turbo-trainer-v2) | Alibaba | json |
+
+
+
+
+text-to-audio — 45 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| ACE Step | [`fal-ai/ace-step`](https://fal.ai/models/fal-ai/ace-step) | — | audio |
+| ACE Step Prompt To Audio | [`fal-ai/ace-step/prompt-to-audio`](https://fal.ai/models/fal-ai/ace-step/prompt-to-audio) | — | audio |
+| CSM-1B | [`fal-ai/csm-1b`](https://fal.ai/models/fal-ai/csm-1b) | — | audio |
+| DiffRhythm: Lyrics to Song | [`fal-ai/diffrhythm`](https://fal.ai/models/fal-ai/diffrhythm) | — | audio |
+| Elevenlabs | [`fal-ai/elevenlabs/text-to-dialogue/eleven-v3`](https://fal.ai/models/fal-ai/elevenlabs/text-to-dialogue/eleven-v3) | ElevenLabs | audio |
+| Elevenlabs Music | [`fal-ai/elevenlabs/music`](https://fal.ai/models/fal-ai/elevenlabs/music) | ElevenLabs | audio |
+| Elevenlabs Sound Effects V2 | [`fal-ai/elevenlabs/sound-effects/v2`](https://fal.ai/models/fal-ai/elevenlabs/sound-effects/v2) | ElevenLabs | audio |
+| Elevenlabs Tts Eleven V3 | [`fal-ai/elevenlabs/tts/eleven-v3`](https://fal.ai/models/fal-ai/elevenlabs/tts/eleven-v3) | ElevenLabs | audio |
+| ElevenLabs TTS Multilingual v2 | [`fal-ai/elevenlabs/tts/multilingual-v2`](https://fal.ai/models/fal-ai/elevenlabs/tts/multilingual-v2) | ElevenLabs | audio |
+| F5 TTS | [`fal-ai/f5-tts`](https://fal.ai/models/fal-ai/f5-tts) | — | json |
+| Gemini TTS | [`fal-ai/gemini-tts`](https://fal.ai/models/fal-ai/gemini-tts) | Google | audio |
+| Kokoro TTS | [`fal-ai/kokoro/american-english`](https://fal.ai/models/fal-ai/kokoro/american-english) | — | audio |
+| Kokoro TTS (Brazilian Portuguese) | [`fal-ai/kokoro/brazilian-portuguese`](https://fal.ai/models/fal-ai/kokoro/brazilian-portuguese) | — | audio |
+| Kokoro TTS (British English) | [`fal-ai/kokoro/british-english`](https://fal.ai/models/fal-ai/kokoro/british-english) | — | audio |
+| Kokoro TTS (French) | [`fal-ai/kokoro/french`](https://fal.ai/models/fal-ai/kokoro/french) | — | audio |
+| Kokoro TTS (Hindi) | [`fal-ai/kokoro/hindi`](https://fal.ai/models/fal-ai/kokoro/hindi) | — | audio |
+| Kokoro TTS (Italian) | [`fal-ai/kokoro/italian`](https://fal.ai/models/fal-ai/kokoro/italian) | — | audio |
+| Kokoro TTS (Japanese) | [`fal-ai/kokoro/japanese`](https://fal.ai/models/fal-ai/kokoro/japanese) | — | audio |
+| Kokoro TTS (Mandarin Chinese) | [`fal-ai/kokoro/mandarin-chinese`](https://fal.ai/models/fal-ai/kokoro/mandarin-chinese) | — | audio |
+| Kokoro TTS (Spanish) | [`fal-ai/kokoro/spanish`](https://fal.ai/models/fal-ai/kokoro/spanish) | — | audio |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-audio`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-audio) | Lightricks | audio |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-audio/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-audio/lora) | Lightricks | audio |
+| Lyria 3 Pro | [`fal-ai/lyria3/pro`](https://fal.ai/models/fal-ai/lyria3/pro) | Google | audio |
+| Lyria2 | [`fal-ai/lyria2`](https://fal.ai/models/fal-ai/lyria2) | Google | audio |
+| Lyria3 | [`fal-ai/lyria3`](https://fal.ai/models/fal-ai/lyria3) | Google | audio |
+| MiniMax (Hailuo AI) Music | [`fal-ai/minimax-music`](https://fal.ai/models/fal-ai/minimax-music) | Minimax | audio |
+| MiniMax (Hailuo AI) Music v1.5 | [`fal-ai/minimax-music/v1.5`](https://fal.ai/models/fal-ai/minimax-music/v1.5) | Minimax | audio |
+| Minimax Music | [`fal-ai/minimax-music/v2`](https://fal.ai/models/fal-ai/minimax-music/v2) | Minimax | audio |
+| Minimax Music 2.5 | [`fal-ai/minimax-music/v2.5`](https://fal.ai/models/fal-ai/minimax-music/v2.5) | Minimax | audio |
+| Minimax Music 2.6 | [`fal-ai/minimax-music/v2.6`](https://fal.ai/models/fal-ai/minimax-music/v2.6) | Minimax | audio |
+| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/text-to-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/text-to-audio) | Mirelo AI | audio |
+| MMAudio V2 Text to Audio | [`fal-ai/mmaudio-v2/text-to-audio`](https://fal.ai/models/fal-ai/mmaudio-v2/text-to-audio) | — | audio |
+| music generator | [`cassetteai/music-generator`](https://fal.ai/models/cassetteai/music-generator) | Cassette AI | json |
+| Seed Audio 1.0 | [`bytedance/seed-audio-1.0`](https://fal.ai/models/bytedance/seed-audio-1.0) | Bytedance | audio |
+| Sonilo V1.1 Text to Music | [`sonilo/v1.1/text-to-music`](https://fal.ai/models/sonilo/v1.1/text-to-music) | Sonilo | audio |
+| Sound Effects Generator | [`cassetteai/sound-effects-generator`](https://fal.ai/models/cassetteai/sound-effects-generator) | Cassette AI | json |
+| Stable Audio 2.5 | [`fal-ai/stable-audio-25/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-25/text-to-audio) | Stability AI | audio |
+| Stable Audio 3 | [`fal-ai/stable-audio-3/medium/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/text-to-audio) | Stability AI | audio |
+| Stable Audio 3 | [`fal-ai/stable-audio-3/small/music/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/text-to-audio) | Stability AI | audio |
+| Stable Audio 3 Medium Base Text to Audio | [`fal-ai/stable-audio-3/medium/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/text-to-audio) | Stability AI | audio |
+| Stable Audio 3 Small Music Text to Audio | [`fal-ai/stable-audio-3/small/music/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/text-to-audio) | Stability AI | audio |
+| Stable Audio 3 Small SFX Base Text to Audio | [`fal-ai/stable-audio-3/small/sfx/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/text-to-audio) | — | audio |
+| Stable Audio 3 Small SFX Text to Audio | [`fal-ai/stable-audio-3/small/sfx/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/text-to-audio) | Stability AI | audio |
+| Stable Audio Open | [`fal-ai/stable-audio`](https://fal.ai/models/fal-ai/stable-audio) | Stability AI | json |
+| Zonos-Audio-Clone | [`fal-ai/zonos`](https://fal.ai/models/fal-ai/zonos) | — | audio |
+
+
+
+
+audio-to-audio — 43 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| ACE Step Audio Inpaint | [`fal-ai/ace-step/audio-inpaint`](https://fal.ai/models/fal-ai/ace-step/audio-inpaint) | — | audio |
+| ACE Step Audio Outpaint | [`fal-ai/ace-step/audio-outpaint`](https://fal.ai/models/fal-ai/ace-step/audio-outpaint) | — | audio |
+| ACE Step Audio To Audio | [`fal-ai/ace-step/audio-to-audio`](https://fal.ai/models/fal-ai/ace-step/audio-to-audio) | — | audio |
+| Audio Understanding | [`fal-ai/audio-understanding`](https://fal.ai/models/fal-ai/audio-understanding) | — | text |
+| DeepFilterNet 3 | [`fal-ai/deepfilternet3`](https://fal.ai/models/fal-ai/deepfilternet3) | — | json |
+| Demucs | [`fal-ai/demucs`](https://fal.ai/models/fal-ai/demucs) | — | json |
+| Dia Tts | [`fal-ai/dia-tts/voice-clone`](https://fal.ai/models/fal-ai/dia-tts/voice-clone) | — | audio |
+| ElevenLabs Audio Isolation | [`fal-ai/elevenlabs/audio-isolation`](https://fal.ai/models/fal-ai/elevenlabs/audio-isolation) | ElevenLabs | audio |
+| ElevenLabs Voice Changer | [`fal-ai/elevenlabs/voice-changer`](https://fal.ai/models/fal-ai/elevenlabs/voice-changer) | ElevenLabs | audio |
+| FFmpeg API [Merge Audios] | [`fal-ai/ffmpeg-api/merge-audios`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-audios) | — | audio |
+| Kling Video Create Voice | [`fal-ai/kling-video/create-voice`](https://fal.ai/models/fal-ai/kling-video/create-voice) | Kling | text |
+| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/extend-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/extend-audio) | Mirelo AI | audio |
+| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/inpaint-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/inpaint-audio) | Mirelo AI | audio |
+| Personaplex | [`fal-ai/personaplex`](https://fal.ai/models/fal-ai/personaplex) | — | audio |
+| Personaplex | [`fal-ai/personaplex/realtime`](https://fal.ai/models/fal-ai/personaplex/realtime) | — | audio |
+| Qwen 3 TTS - Clone Voice [0.6B] | [`fal-ai/qwen-3-tts/clone-voice/0.6b`](https://fal.ai/models/fal-ai/qwen-3-tts/clone-voice/0.6b) | Alibaba | json |
+| Qwen 3 TTS - Clone Voice [1.7B] | [`fal-ai/qwen-3-tts/clone-voice/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/clone-voice/1.7b) | Alibaba | json |
+| Sam Audio | [`fal-ai/sam-audio/separate`](https://fal.ai/models/fal-ai/sam-audio/separate) | — | json |
+| Sam Audio | [`fal-ai/sam-audio/span-separate`](https://fal.ai/models/fal-ai/sam-audio/span-separate) | — | json |
+| Stable Audio 2.5 | [`fal-ai/stable-audio-25/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-25/audio-to-audio) | Stability AI | audio |
+| Stable Audio 25 | [`fal-ai/stable-audio-25/inpaint`](https://fal.ai/models/fal-ai/stable-audio-25/inpaint) | Stability AI | audio |
+| Stable Audio 3 | [`fal-ai/stable-audio-3/small/music/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-to-audio) | Stability AI | audio |
+| Stable Audio 3 | [`fal-ai/stable-audio-3/small/sfx/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-to-audio) | Stability AI | audio |
+| Stable Audio 3 Medium Audio Inpainting | [`fal-ai/stable-audio-3/medium/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Medium Audio Outpainting | [`fal-ai/stable-audio-3/medium/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Medium Audio to Audio | [`fal-ai/stable-audio-3/medium/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-to-audio) | Stability AI | audio |
+| Stable Audio 3 Medium Base Audio Inpainting | [`fal-ai/stable-audio-3/medium/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Medium Base Audio Outpainting | [`fal-ai/stable-audio-3/medium/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Medium Base Audio to Audio | [`fal-ai/stable-audio-3/medium/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-to-audio) | Stability AI | audio |
+| Stable Audio 3 Small Music Audio Inpainting | [`fal-ai/stable-audio-3/small/music/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Small Music Audio Outpainting | [`fal-ai/stable-audio-3/small/music/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Small Music Base Audio Inpainting | [`fal-ai/stable-audio-3/small/music/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Small Music Base Audio Outpainting | [`fal-ai/stable-audio-3/small/music/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Small Music Base Audio to Audio | [`fal-ai/stable-audio-3/small/music/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-to-audio) | Stability AI | audio |
+| Stable Audio 3 Small SFX Audio Inpainting | [`fal-ai/stable-audio-3/small/sfx/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Small SFX Audio Outpainting | [`fal-ai/stable-audio-3/small/sfx/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Small SFX Base Audio Inpainting | [`fal-ai/stable-audio-3/small/sfx/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-inpainting) | Stability AI | audio |
+| Stable Audio 3 Small SFX Base Audio Outpainting | [`fal-ai/stable-audio-3/small/sfx/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-outpainting) | Stability AI | audio |
+| Stable Audio 3 Small SFX Base Audio to Audio | [`fal-ai/stable-audio-3/small/sfx/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-to-audio) | Stability AI | audio |
+| Tada | [`fal-ai/tada/3b/text-to-speech`](https://fal.ai/models/fal-ai/tada/3b/text-to-speech) | — | audio |
+| Tada TTS 1B | [`fal-ai/tada/1b/text-to-speech`](https://fal.ai/models/fal-ai/tada/1b/text-to-speech) | Hume AI | audio |
+| Workflow Utilities Audio Compressor | [`fal-ai/workflow-utilities/audio-compressor`](https://fal.ai/models/fal-ai/workflow-utilities/audio-compressor) | — | audio |
+| Workflow Utilities Impulse Response | [`fal-ai/workflow-utilities/impulse-response`](https://fal.ai/models/fal-ai/workflow-utilities/impulse-response) | — | audio |
+
+
+
+
+image-to-3d — 36 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Hunyuan 3D Pro Image to 3D | [`fal-ai/hunyuan-3d/v3.1/pro/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/pro/image-to-3d) | Tencent | file |
+| Hunyuan 3D Rapid Image to 3D | [`fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d) | Tencent | file |
+| Hunyuan World | [`fal-ai/hunyuan_world/image-to-world`](https://fal.ai/models/fal-ai/hunyuan_world/image-to-world) | Tencent | json |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2`](https://fal.ai/models/fal-ai/hunyuan3d/v2) | Tencent | file |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2/mini`](https://fal.ai/models/fal-ai/hunyuan3d/v2/mini) | Tencent | file |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2/mini/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/mini/turbo) | Tencent | file |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2/multi-view`](https://fal.ai/models/fal-ai/hunyuan3d/v2/multi-view) | Tencent | file |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2/multi-view/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/multi-view/turbo) | Tencent | file |
+| Hunyuan3D | [`fal-ai/hunyuan3d/v2/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/turbo) | Tencent | file |
+| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/image-to-3d) | Tencent | file |
+| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/sketch-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/sketch-to-3d) | Tencent | file |
+| Hyper3d | [`fal-ai/hyper3d/rodin/v2`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2) | Hyper3D | file |
+| Hyper3D - Rodin V2.5 - Image to 3D | [`fal-ai/hyper3d/rodin/v2.5`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5) | Hyper3D | file |
+| Hyper3D - Rodin V2.5 - Image to 3D - Fast | [`fal-ai/hyper3d/rodin/v2.5/fast`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/fast) | Hyper3D | file |
+| Hyper3D Rodin | [`fal-ai/hyper3d/rodin`](https://fal.ai/models/fal-ai/hyper3d/rodin) | Hyper3D | file |
+| Meshy 5 Multi | [`fal-ai/meshy/v5/multi-image-to-3d`](https://fal.ai/models/fal-ai/meshy/v5/multi-image-to-3d) | Meshy | file |
+| Meshy 6 | [`fal-ai/meshy/v6/image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/image-to-3d) | Meshy | file |
+| Meshy 6 - Multi Image To 3D | [`fal-ai/meshy/v6/multi-image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/multi-image-to-3d) | Meshy | file |
+| Meshy 6 Preview | [`fal-ai/meshy/v6-preview/image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6-preview/image-to-3d) | Meshy | file |
+| Pixal3d | [`fal-ai/pixal3d`](https://fal.ai/models/fal-ai/pixal3d) | — | file |
+| ReconViaGen 0.5 | [`fal-ai/reconviagen-0.5`](https://fal.ai/models/fal-ai/reconviagen-0.5) | — | file |
+| Sam 3 | [`fal-ai/sam-3/3d-body`](https://fal.ai/models/fal-ai/sam-3/3d-body) | — | file |
+| Sam 3 | [`fal-ai/sam-3/3d-objects`](https://fal.ai/models/fal-ai/sam-3/3d-objects) | — | file |
+| Trellis | [`fal-ai/trellis`](https://fal.ai/models/fal-ai/trellis) | Trellis | file |
+| Trellis | [`fal-ai/trellis/multi`](https://fal.ai/models/fal-ai/trellis/multi) | Trellis | file |
+| Trellis 2 | [`fal-ai/trellis-2`](https://fal.ai/models/fal-ai/trellis-2) | Trellis | file |
+| Trellis 2 | [`fal-ai/trellis-2/retexture`](https://fal.ai/models/fal-ai/trellis-2/retexture) | Trellis | file |
+| TRELLIS.2 LoRA Inference | [`fal-ai/trellis-2-lora`](https://fal.ai/models/fal-ai/trellis-2-lora) | Trellis | file |
+| TRELLIS.2 Trainer | [`fal-ai/trellis-2-lora-trainer`](https://fal.ai/models/fal-ai/trellis-2-lora-trainer) | Trellis | json |
+| Tripo H3.1 Image to 3D | [`tripo3d/h3.1/image-to-3d`](https://fal.ai/models/tripo3d/h3.1/image-to-3d) | Tripo3D | file |
+| Tripo H3.1 Multiview to 3D | [`tripo3d/h3.1/multiview-to-3d`](https://fal.ai/models/tripo3d/h3.1/multiview-to-3d) | Tripo3D | file |
+| Tripo P1 Image to 3D | [`tripo3d/p1/image-to-3d`](https://fal.ai/models/tripo3d/p1/image-to-3d) | Tripo3D | file |
+| Tripo3D | [`tripo3d/tripo/v2.5/image-to-3d`](https://fal.ai/models/tripo3d/tripo/v2.5/image-to-3d) | Tripo3D | file |
+| Tripo3D | [`tripo3d/tripo/v2.5/multiview-to-3d`](https://fal.ai/models/tripo3d/tripo/v2.5/multiview-to-3d) | Tripo3D | file |
+| Triposplat | [`tripo3d/triposplat`](https://fal.ai/models/tripo3d/triposplat) | Tripo3D | file |
+| TripoSR | [`fal-ai/triposr`](https://fal.ai/models/fal-ai/triposr) | — | file |
+
+
+
+
+text-to-speech — 33 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Async Text to Speech Pro V1.0 | [`async/tts-pro/v1.0`](https://fal.ai/models/async/tts-pro/v1.0) | Async | audio |
+| Bytedance Seed Speech Text to Speech | [`fal-ai/bytedance/seed-speech/tts/v2`](https://fal.ai/models/fal-ai/bytedance/seed-speech/tts/v2) | Bytedance | audio |
+| Chatterbox | [`fal-ai/chatterbox/text-to-speech`](https://fal.ai/models/fal-ai/chatterbox/text-to-speech) | Resemble AI | audio |
+| Chatterbox | [`fal-ai/chatterbox/text-to-speech/multilingual`](https://fal.ai/models/fal-ai/chatterbox/text-to-speech/multilingual) | Resemble AI | audio |
+| Chatterboxhd | [`resemble-ai/chatterboxhd/text-to-speech`](https://fal.ai/models/resemble-ai/chatterboxhd/text-to-speech) | Resemble AI | audio |
+| Dia | [`fal-ai/dia-tts`](https://fal.ai/models/fal-ai/dia-tts) | — | audio |
+| ElevenLabs TTS Turbo v2.5 | [`fal-ai/elevenlabs/tts/turbo-v2.5`](https://fal.ai/models/fal-ai/elevenlabs/tts/turbo-v2.5) | ElevenLabs | audio |
+| Gemini 3.1 Flash Tts | [`fal-ai/gemini-3.1-flash-tts`](https://fal.ai/models/fal-ai/gemini-3.1-flash-tts) | Google | audio |
+| Index TTS 2.0 | [`fal-ai/index-tts-2/text-to-speech`](https://fal.ai/models/fal-ai/index-tts-2/text-to-speech) | — | audio |
+| Inworld TTS-1.5 Max | [`fal-ai/inworld-tts`](https://fal.ai/models/fal-ai/inworld-tts) | Inworld | audio |
+| Kling TTS | [`fal-ai/kling-video/v1/tts`](https://fal.ai/models/fal-ai/kling-video/v1/tts) | Kling | audio |
+| Maya | [`fal-ai/maya/batch`](https://fal.ai/models/fal-ai/maya/batch) | — | audio |
+| Maya | [`fal-ai/maya/stream`](https://fal.ai/models/fal-ai/maya/stream) | — | json |
+| Maya1 | [`fal-ai/maya`](https://fal.ai/models/fal-ai/maya) | — | audio |
+| Minimax | [`fal-ai/minimax/preview/speech-2.5-hd`](https://fal.ai/models/fal-ai/minimax/preview/speech-2.5-hd) | Minimax | audio |
+| Minimax | [`fal-ai/minimax/preview/speech-2.5-turbo`](https://fal.ai/models/fal-ai/minimax/preview/speech-2.5-turbo) | Minimax | audio |
+| MiniMax Speech 2.6 [HD] | [`fal-ai/minimax/speech-2.6-hd`](https://fal.ai/models/fal-ai/minimax/speech-2.6-hd) | Minimax | audio |
+| MiniMax Speech 2.6 [Turbo] | [`fal-ai/minimax/speech-2.6-turbo`](https://fal.ai/models/fal-ai/minimax/speech-2.6-turbo) | Minimax | audio |
+| MiniMax Speech 2.8 [HD] | [`fal-ai/minimax/speech-2.8-hd`](https://fal.ai/models/fal-ai/minimax/speech-2.8-hd) | Minimax | audio |
+| MiniMax Speech 2.8 [Turbo] | [`fal-ai/minimax/speech-2.8-turbo`](https://fal.ai/models/fal-ai/minimax/speech-2.8-turbo) | Minimax | audio |
+| MiniMax Speech-02 HD | [`fal-ai/minimax/speech-02-hd`](https://fal.ai/models/fal-ai/minimax/speech-02-hd) | Minimax | audio |
+| MiniMax Speech-02 Turbo | [`fal-ai/minimax/speech-02-turbo`](https://fal.ai/models/fal-ai/minimax/speech-02-turbo) | Minimax | audio |
+| MiniMax Voice Cloning | [`fal-ai/minimax/voice-clone`](https://fal.ai/models/fal-ai/minimax/voice-clone) | Minimax | audio |
+| MiniMax Voice Design | [`fal-ai/minimax/voice-design`](https://fal.ai/models/fal-ai/minimax/voice-design) | Minimax | audio |
+| Orpheus TTS | [`fal-ai/orpheus-tts`](https://fal.ai/models/fal-ai/orpheus-tts) | — | audio |
+| Qwen 3 TTS - Text to Speech [0.6B] | [`fal-ai/qwen-3-tts/text-to-speech/0.6b`](https://fal.ai/models/fal-ai/qwen-3-tts/text-to-speech/0.6b) | Alibaba | audio |
+| Qwen 3 TTS - Text to Speech [1.7B] | [`fal-ai/qwen-3-tts/text-to-speech/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/text-to-speech/1.7b) | Alibaba | audio |
+| Qwen 3 TTS - Voice Design [1.7B] | [`fal-ai/qwen-3-tts/voice-design/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/voice-design/1.7b) | Alibaba | audio |
+| Vibevoice | [`fal-ai/vibevoice/0.5b`](https://fal.ai/models/fal-ai/vibevoice/0.5b) | — | audio |
+| VibeVoice 1.5B | [`fal-ai/vibevoice`](https://fal.ai/models/fal-ai/vibevoice) | — | audio |
+| VibeVoice 7B | [`fal-ai/vibevoice/7b`](https://fal.ai/models/fal-ai/vibevoice/7b) | — | audio |
+| xAI Text to Speech | [`xai/tts/v1`](https://fal.ai/models/xai/tts/v1) | xAI | audio |
+| Zonos2 Text to Speech | [`fal-ai/zonos2`](https://fal.ai/models/fal-ai/zonos2) | Zyphra | audio |
+
+
+
+
+vision — 33 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Florence 2 Large Caption | [`fal-ai/florence-2-large/caption`](https://fal.ai/models/fal-ai/florence-2-large/caption) | — | text |
+| Florence 2 Large Detailed Caption | [`fal-ai/florence-2-large/detailed-caption`](https://fal.ai/models/fal-ai/florence-2-large/detailed-caption) | — | text |
+| Florence 2 Large OCR | [`fal-ai/florence-2-large/ocr`](https://fal.ai/models/fal-ai/florence-2-large/ocr) | — | text |
+| Florence 2 Large Region To Category | [`fal-ai/florence-2-large/region-to-category`](https://fal.ai/models/fal-ai/florence-2-large/region-to-category) | — | text |
+| Florence-2 Large | [`fal-ai/florence-2-large/more-detailed-caption`](https://fal.ai/models/fal-ai/florence-2-large/more-detailed-caption) | — | text |
+| Florence-2 Large | [`fal-ai/florence-2-large/region-to-description`](https://fal.ai/models/fal-ai/florence-2-large/region-to-description) | — | text |
+| GOT OCR 2.0 | [`fal-ai/got-ocr/v2`](https://fal.ai/models/fal-ai/got-ocr/v2) | — | json |
+| Isaac 0.1 | [`perceptron/isaac-01`](https://fal.ai/models/perceptron/isaac-01) | Perceptron | json |
+| LLaVA v1.6 34B | [`fal-ai/llava-next`](https://fal.ai/models/fal-ai/llava-next) | — | json |
+| Marlin | [`fal-ai/marlin`](https://fal.ai/models/fal-ai/marlin) | — | json |
+| Marlin Find | [`fal-ai/marlin/find`](https://fal.ai/models/fal-ai/marlin/find) | — | json |
+| Moondream | [`fal-ai/moondream/batched`](https://fal.ai/models/fal-ai/moondream/batched) | — | json |
+| Moondream 3 Preview [Query] | [`fal-ai/moondream3-preview/query`](https://fal.ai/models/fal-ai/moondream3-preview/query) | Moondream | json |
+| Moondream2 | [`fal-ai/moondream2`](https://fal.ai/models/fal-ai/moondream2) | Moondream | text |
+| Moondream2 | [`fal-ai/moondream2/object-detection`](https://fal.ai/models/fal-ai/moondream2/object-detection) | Moondream | image |
+| Moondream2 | [`fal-ai/moondream2/point-object-detection`](https://fal.ai/models/fal-ai/moondream2/point-object-detection) | Moondream | image |
+| Moondream2 | [`fal-ai/moondream2/visual-query`](https://fal.ai/models/fal-ai/moondream2/visual-query) | Moondream | text |
+| Moondream3 Preview [Caption] | [`fal-ai/moondream3-preview/caption`](https://fal.ai/models/fal-ai/moondream3-preview/caption) | Moondream | json |
+| Moondream3 Preview [Detect] | [`fal-ai/moondream3-preview/detect`](https://fal.ai/models/fal-ai/moondream3-preview/detect) | Moondream | image |
+| Moondream3 Preview [Point] | [`fal-ai/moondream3-preview/point`](https://fal.ai/models/fal-ai/moondream3-preview/point) | Moondream | image |
+| MoonDreamNext | [`fal-ai/moondream-next`](https://fal.ai/models/fal-ai/moondream-next) | Moondream | text |
+| MoonDreamNext Batch | [`fal-ai/moondream-next/batch`](https://fal.ai/models/fal-ai/moondream-next/batch) | Moondream | json |
+| Nemotron Diffusion Vlm | [`fal-ai/nemotron-diffusion-vlm`](https://fal.ai/models/fal-ai/nemotron-diffusion-vlm) | NVIDIA | json |
+| NSFW Checker | [`fal-ai/x-ailab/nsfw`](https://fal.ai/models/fal-ai/x-ailab/nsfw) | — | json |
+| NSFW Filter | [`fal-ai/imageutils/nsfw`](https://fal.ai/models/fal-ai/imageutils/nsfw) | — | json |
+| OpenRouter [Vision] | [`openrouter/router/vision`](https://fal.ai/models/openrouter/router/vision) | Openrouter | json |
+| Sa2VA 4B Image | [`fal-ai/sa2va/4b/image`](https://fal.ai/models/fal-ai/sa2va/4b/image) | — | json |
+| Sa2VA 4B Video | [`fal-ai/sa2va/4b/video`](https://fal.ai/models/fal-ai/sa2va/4b/video) | — | json |
+| Sa2VA 8B Image | [`fal-ai/sa2va/8b/image`](https://fal.ai/models/fal-ai/sa2va/8b/image) | — | json |
+| Sa2VA 8B Video | [`fal-ai/sa2va/8b/video`](https://fal.ai/models/fal-ai/sa2va/8b/video) | — | json |
+| Sam 3 | [`fal-ai/sam-3/image/embed`](https://fal.ai/models/fal-ai/sam-3/image/embed) | — | text |
+| Scene Finder | [`fal-ai/scene-finder`](https://fal.ai/models/fal-ai/scene-finder) | Fal | images |
+| Video Understanding | [`fal-ai/video-understanding`](https://fal.ai/models/fal-ai/video-understanding) | — | text |
+
+
+
+
+audio-to-video — 20 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Avatars | [`veed/avatars/audio-to-video`](https://fal.ai/models/veed/avatars/audio-to-video) | Veed | video |
+| Avatars Audio to Video | [`argil/avatars/audio-to-video`](https://fal.ai/models/argil/avatars/audio-to-video) | Argil AI | video |
+| EchoMimic V3 | [`fal-ai/echomimic-v3`](https://fal.ai/models/fal-ai/echomimic-v3) | — | video |
+| ElevenLabs Dubbing | [`fal-ai/elevenlabs/dubbing`](https://fal.ai/models/fal-ai/elevenlabs/dubbing) | ElevenLabs | video |
+| Flashtalk | [`fal-ai/flashtalk`](https://fal.ai/models/fal-ai/flashtalk) | Soul AI Lab | video |
+| Longcat Single Avatar | [`fal-ai/longcat-single-avatar/audio-to-video`](https://fal.ai/models/fal-ai/longcat-single-avatar/audio-to-video) | — | video |
+| Longcat Single Avatar | [`fal-ai/longcat-single-avatar/image-audio-to-video`](https://fal.ai/models/fal-ai/longcat-single-avatar/image-audio-to-video) | — | video |
+| LTX 2.0 Video Pro | [`fal-ai/ltx-2/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2/audio-to-video) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/audio-to-video) | Lightricks | video |
+| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/audio-to-video/lora) | Lightricks | video |
+| LTX 2.3 Video Pro | [`fal-ai/ltx-2.3/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/audio-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/audio-to-video) | Lightricks | video |
+| LTX-2 19B | [`fal-ai/ltx-2-19b/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/audio-to-video/lora) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/audio-to-video) | Lightricks | video |
+| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/audio-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/audio-to-video) | Lightricks | video |
+| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/audio-to-video/lora) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/audio-to-video) | Lightricks | video |
+| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/audio-to-video/lora) | Lightricks | video |
+| Wan-2.2 Speech-to-Video 14B | [`fal-ai/wan/v2.2-14b/speech-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-14b/speech-to-video) | Alibaba | video |
+
+
+
+
+text-to-3d — 11 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Hunyuan 3d | [`fal-ai/hunyuan-3d/v3.1/rapid/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/rapid/text-to-3d) | Tencent | file |
+| Hunyuan 3D Pro Text to 3D | [`fal-ai/hunyuan-3d/v3.1/pro/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/pro/text-to-3d) | Tencent | file |
+| Hunyuan Motion [0.46B] | [`fal-ai/hunyuan-motion/fast`](https://fal.ai/models/fal-ai/hunyuan-motion/fast) | Tencent | json |
+| Hunyuan Motion [1B] | [`fal-ai/hunyuan-motion`](https://fal.ai/models/fal-ai/hunyuan-motion) | Tencent | json |
+| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/text-to-3d) | Tencent | file |
+| Hyper3D - Rodin V2.5 - Text to 3D | [`fal-ai/hyper3d/rodin/v2.5/text-to-3d`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/text-to-3d) | Hyper3D | file |
+| Hyper3D - Rodin V2.5 - Text to 3D - Fast | [`fal-ai/hyper3d/rodin/v2.5/text-to-3d/fast`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/text-to-3d/fast) | Hyper3D | file |
+| Meshy 6 | [`fal-ai/meshy/v6/text-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/text-to-3d) | Meshy | file |
+| Meshy 6 Preview | [`fal-ai/meshy/v6-preview/text-to-3d`](https://fal.ai/models/fal-ai/meshy/v6-preview/text-to-3d) | Meshy | file |
+| Tripo H3.1 Text to 3D | [`tripo3d/h3.1/text-to-3d`](https://fal.ai/models/tripo3d/h3.1/text-to-3d) | Tripo3D | file |
+| Tripo P1 Text to 3D | [`tripo3d/p1/text-to-3d`](https://fal.ai/models/tripo3d/p1/text-to-3d) | Tripo3D | file |
+
+
+
+
+speech-to-text — 10 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Cohere Transcribe | [`fal-ai/cohere-transcribe`](https://fal.ai/models/fal-ai/cohere-transcribe) | Cohere | json |
+| ElevenLabs Speech to Text | [`fal-ai/elevenlabs/speech-to-text`](https://fal.ai/models/fal-ai/elevenlabs/speech-to-text) | ElevenLabs | json |
+| ElevenLabs Speech to Text - Scribe V2 | [`fal-ai/elevenlabs/speech-to-text/scribe-v2`](https://fal.ai/models/fal-ai/elevenlabs/speech-to-text/scribe-v2) | ElevenLabs | json |
+| Nemotron Asr Multilingual | [`nvidia/nemotron-asr-multilingual/asr`](https://fal.ai/models/nvidia/nemotron-asr-multilingual/asr) | NVIDIA | json |
+| Pipecat's Smart Turn model | [`fal-ai/smart-turn`](https://fal.ai/models/fal-ai/smart-turn) | — | json |
+| Speech-to-Text | [`fal-ai/speech-to-text`](https://fal.ai/models/fal-ai/speech-to-text) | — | json |
+| Speech-To-text | [`fal-ai/speech-to-text/stream`](https://fal.ai/models/fal-ai/speech-to-text/stream) | — | json |
+| Speech-to-Text | [`fal-ai/speech-to-text/turbo`](https://fal.ai/models/fal-ai/speech-to-text/turbo) | — | json |
+| Speech-to-Text | [`fal-ai/speech-to-text/turbo/stream`](https://fal.ai/models/fal-ai/speech-to-text/turbo/stream) | — | json |
+| Wizper (Whisper v3 -- fal.ai edition) | [`fal-ai/wizper`](https://fal.ai/models/fal-ai/wizper) | — | json |
+
+
+
+
+3d-to-3d — 7 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Hunyuan 3D Part Splitter | [`fal-ai/hunyuan-3d/v3.1/part`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/part) | Tencent | json |
+| Hunyuan 3D Smart Topology | [`fal-ai/hunyuan-3d/v3.1/smart-topology`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/smart-topology) | Tencent | file |
+| Meshy 5 Remesh | [`fal-ai/meshy/v5/remesh`](https://fal.ai/models/fal-ai/meshy/v5/remesh) | Meshy | file |
+| Meshy 5 Retexture | [`fal-ai/meshy/v5/retexture`](https://fal.ai/models/fal-ai/meshy/v5/retexture) | Meshy | file |
+| Meshy Rigging | [`fal-ai/meshy/rigging`](https://fal.ai/models/fal-ai/meshy/rigging) | Meshy | json |
+| Meshy Rigging Multi Animation | [`fal-ai/meshy/rigging/multi-animation`](https://fal.ai/models/fal-ai/meshy/rigging/multi-animation) | Meshy | json |
+| Sam 3 | [`fal-ai/sam-3/3d-align`](https://fal.ai/models/fal-ai/sam-3/3d-align) | — | file |
+
+
+
+
+json — 6 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Ffmpeg Api | [`fal-ai/ffmpeg-api/loudnorm`](https://fal.ai/models/fal-ai/ffmpeg-api/loudnorm) | — | audio |
+| FFmpeg API Metadata | [`fal-ai/ffmpeg-api/metadata`](https://fal.ai/models/fal-ai/ffmpeg-api/metadata) | — | json |
+| FFmpeg API Waveform | [`fal-ai/ffmpeg-api/waveform`](https://fal.ai/models/fal-ai/ffmpeg-api/waveform) | — | json |
+| Omnilottie | [`fal-ai/omnilottie`](https://fal.ai/models/fal-ai/omnilottie) | — | json |
+| Omnilottie | [`fal-ai/omnilottie/image-to-lottie`](https://fal.ai/models/fal-ai/omnilottie/image-to-lottie) | — | json |
+| Omnilottie | [`fal-ai/omnilottie/video-to-lottie`](https://fal.ai/models/fal-ai/omnilottie/video-to-lottie) | — | json |
+
+
+
+
+llm — 5 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Bytedance Seed V2 Mini | [`fal-ai/bytedance/seed/v2/mini`](https://fal.ai/models/fal-ai/bytedance/seed/v2/mini) | Bytedance | json |
+| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni`](https://fal.ai/models/nvidia/nemotron-3-nano-omni) | NVIDIA | json |
+| OpenRouter | [`openrouter/router`](https://fal.ai/models/openrouter/router) | Openrouter | json |
+| OpenRouter [Enterprise] | [`openrouter/router/enterprise`](https://fal.ai/models/openrouter/router/enterprise) | Openrouter | json |
+| Video Prompt Generator | [`fal-ai/video-prompt-generator`](https://fal.ai/models/fal-ai/video-prompt-generator) | — | text |
+
+
+
+
+video-to-audio — 5 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Kling Video | [`fal-ai/kling-video/video-to-audio`](https://fal.ai/models/fal-ai/kling-video/video-to-audio) | Kling | video |
+| Mirelo SFX | [`mirelo-ai/sfx-v1/video-to-audio`](https://fal.ai/models/mirelo-ai/sfx-v1/video-to-audio) | Mirelo AI | audio |
+| Mirelo SFX V1.5 | [`mirelo-ai/sfx-v1.5/video-to-audio`](https://fal.ai/models/mirelo-ai/sfx-v1.5/video-to-audio) | Mirelo AI | audio |
+| Sam Audio | [`fal-ai/sam-audio/visual-separate`](https://fal.ai/models/fal-ai/sam-audio/visual-separate) | — | json |
+| V1.1 | [`sonilo/v1.1/video-to-music`](https://fal.ai/models/sonilo/v1.1/video-to-music) | Sonilo | audio |
+
+
+
+
+text-to-json — 4 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Fibo | [`bria/fibo/generate/structured_prompt`](https://fal.ai/models/bria/fibo/generate/structured_prompt) | Bria AI | json |
+| Fibo Edit [Structured Instruction] | [`bria/fibo-edit/edit/structured_instruction`](https://fal.ai/models/bria/fibo-edit/edit/structured_instruction) | Bria AI | json |
+| Fibo Lite | [`bria/fibo-lite/generate/structured_prompt`](https://fal.ai/models/bria/fibo-lite/generate/structured_prompt) | Bria AI | json |
+| Fibo Lite | [`bria/fibo-lite/generate/structured_prompt/lite`](https://fal.ai/models/bria/fibo-lite/generate/structured_prompt/lite) | Bria AI | json |
+
+
+
+
+video-to-text — 3 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/video`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/video) | NVIDIA | json |
+| OpenRouter [Video] | [`openrouter/router/video`](https://fal.ai/models/openrouter/router/video) | Openrouter | json |
+| OpenRouter [Video][Enterprise] | [`openrouter/router/video/enterprise`](https://fal.ai/models/openrouter/router/video/enterprise) | Openrouter | json |
+
+
+
+
+audio-to-text — 2 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/audio`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/audio) | NVIDIA | json |
+| Silero VAD | [`fal-ai/silero-vad`](https://fal.ai/models/fal-ai/silero-vad) | — | json |
+
+
+
+
+speech-to-speech — 2 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Chatterbox | [`fal-ai/chatterbox/speech-to-speech`](https://fal.ai/models/fal-ai/chatterbox/speech-to-speech) | Resemble AI | audio |
+| Chatterboxhd | [`resemble-ai/chatterboxhd/speech-to-speech`](https://fal.ai/models/resemble-ai/chatterboxhd/speech-to-speech) | Resemble AI | audio |
+
+
+
+
+unknown — 2 models
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| OpenRouter [Audio] | [`openrouter/router/audio`](https://fal.ai/models/openrouter/router/audio) | Openrouter | json |
+| Workflow Utilities Interleave Video | [`fal-ai/workflow-utilities/interleave-video`](https://fal.ai/models/fal-ai/workflow-utilities/interleave-video) | — | video |
+
+
+
+
+image-to-json — 1 model
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Bagel | [`fal-ai/bagel/understand`](https://fal.ai/models/fal-ai/bagel/understand) | — | json |
+
+
+
+
+image-to-text — 1 model
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/vision`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/vision) | NVIDIA | json |
+
+
+
+
+workflow — 1 model
+
+| Model | Endpoint | Lab | Output |
+| --- | --- | --- | --- |
+| Workflow Utilities Pick Image By Index | [`fal-ai/workflow-utilities/pick-image-by-index`](https://fal.ai/models/fal-ai/workflow-utilities/pick-image-by-index) | — | images |
+
+
+
+
diff --git a/README.md b/README.md
index a09c7ec..3bceb2a 100644
--- a/README.md
+++ b/README.md
@@ -2,38 +2,51 @@
**Every fal model in ComfyUI, one API key.**
-Custom nodes that bring the entire [fal.ai](https://fal.ai) catalog into ComfyUI: ~90 curated hand-written nodes for the most popular models, plus ~1,391 auto-generated nodes covering every live public model on fal — image, video, audio, 3D, LLMs and more. One `FAL_KEY` unlocks all of them. With a persistent result cache (never pay for the same call twice), spend guards, async fan-out, and zero-I/O fal→fal chaining.
+Custom nodes that bring the entire [fal.ai](https://fal.ai) catalog into ComfyUI: ~90 curated hand-written nodes for the most popular models, plus ~1,391 auto-generated nodes covering every live public model on fal — image, video, audio, 3D, LLMs and more. One `FAL_KEY` unlocks all of them. With a persistent result cache (never pay for the same call twice), spend guards, async fan-out, and zero-I/O fal→fal chaining. The full model catalog lives in [MODELS.md](MODELS.md).
## Table of Contents
-- [What's New in 2.0](#whats-new-in-20)
+- [What's New](#whats-new)
- [Installation](#installation)
- [Configuration](#configuration)
-- [Usage](#usage)
+- [Screenshots](#screenshots)
- [Curated Nodes](#curated-nodes)
- - [Image Generation](#image-generation)
- - [Video Generation](#video-generation)
- - [Language Models (LLMs)](#language-models-llms)
- - [Vision Language Models (VLMs)](#vision-language-models-vlms)
- [Auto-Generated Nodes](#auto-generated-nodes)
- [Platform Utilities](#platform-utilities)
-- [Utility Nodes](#utility-nodes-24)
-- [Generated Model List](#generated-model-list)
-- [Registry Maintenance](#registry-maintenance)
+- [Utility Nodes](#utility-nodes)
- [Troubleshooting](#troubleshooting)
- [Contributing](#contributing)
- [License](#license)
-## What's New in 2.0
+## What's New
-- **~1,391 auto-generated nodes** — every live public model on fal, generated at startup from the committed `data/fal_registry.json`. Roughly: 537 video, ~565 image, 115 audio, 47 3D/file, 20 text, 107 other/JSON models. Find them in the node browser under `FAL/Models/`.
-- **Native ComfyUI types everywhere** — auto-generated nodes take native `IMAGE`/`VIDEO`/`AUDIO` inputs (uploaded to fal automatically) and return native `VIDEO`/`AUDIO` outputs. Tooltips come straight from the API schemas, and each node's help panel shows the model's pricing.
-- **Fal Any Endpoint (fal)** — a generic node that calls *any* fal endpoint by id with free-form JSON arguments plus optional image/video/audio inputs. Even brand-new models work the day they launch.
-- **Visible errors (breaking-ish change)** — failed API calls now raise real errors in ComfyUI with fal's actual error message (validation issues, content policy, quota), instead of silently returning blank images or `"Error:"` strings. If your workflow relied on failures passing through quietly, it will now stop at the failing node.
-- **Progress and cancellation** — queue position and model logs stream to the console, and ComfyUI's Cancel button interrupts in-flight fal requests.
-- **All ~90 curated nodes unchanged** — fully backward compatible. Bonus fixes: the GPT-Image 2 / GPT-Image 2 Edit nodes now actually load, and a new **Video from URL → VIDEO (fal)** node bridges URL outputs into ComfyUI's native `VIDEO` type.
-- **Config options** — `config.ini.example` is now provided (your `config.ini` stays gitignored), and an optional `[dynamic_nodes]` section lets you disable or filter the auto-generated nodes.
-- **Dependencies fixed** — `pyproject.toml` now declares everything needed (`opencv-python` etc.); requires `fal-client>=1.0`.
+### 2.5
+
+- **Async execution** — fal calls run asynchronously on modern ComfyUI, so the UI stays responsive while jobs are in flight.
+- **Typed builder nodes** — build LoRA lists and reference-element configs with dedicated, connectable nodes instead of hand-typed JSON.
+- **Featured tier** — hand-picked models surface under **FAL/Featured** in the node menu, and models superseded by newer versions are flagged.
+- **Registry freshness** — the pack warns when the committed model registry snapshot is stale, and you can refresh it from the fal sidebar without leaving ComfyUI.
+- **MODELS.md** — the full ~1,391-model catalog moved out of this README into [MODELS.md](MODELS.md).
+
+### 2.4
+
+Twenty utility nodes under `FAL/Utils` covering everything between your assets and a fal endpoint — dataset prep (images → captioned training ZIP), media loading from URLs/folders, video trim/concat/mux/frame-extract, image grids and resizing, and JSON/prompt/text data helpers. See [Utility Nodes](#utility-nodes).
+
+### 2.3
+
+Durable **job inbox** (queued jobs survive ComfyUI restarts), **provenance receipts** (saved outputs carry endpoint + request id in a sidecar/PNG chunk and can be re-materialized for free), and the in-canvas web extension: cost badges above nodes, a fal sidebar with spend/balance/live jobs, and endpoint autocomplete.
+
+### 2.2
+
+**Persistent result cache** — identical fal calls are served from disk, free and instant, across restarts; uploads are deduplicated too. **Spend guard** — refuse to submit past a session budget or below a balance floor, before money moves. **URL passthrough** — wire a fal node's URL output into the next node's `*_direct_url` input and intermediate media never touches your machine.
+
+### 2.1
+
+Platform utilities under `FAL/Platform`: **Fal Submit + Fal Collect** for parallel fan-out (five video jobs run concurrently on fal, not back-to-back), **Fal Result by Request ID** to re-fetch any past result without re-paying, **Fal Cost Estimator**, and **Fal Session Costs**.
+
+### 2.0
+
+Every live public model on fal became a node: ~1,391 auto-generated nodes built at startup from the committed `data/fal_registry.json`, with native `IMAGE`/`VIDEO`/`AUDIO` sockets, schema-derived tooltips, and pricing in the help panel. Plus the generic **Fal Any Endpoint** node, visible errors (failed calls raise fal's actual error message instead of silently returning blanks), progress + cancellation, and full backward compatibility for all ~90 curated nodes.
## Installation
@@ -41,1883 +54,115 @@ Custom nodes that bring the entire [fal.ai](https://fal.ai) catalog into ComfyUI
```
cd custom_nodes
```
-
2. Clone this repository:
```
git clone https://github.com/gokayfem/ComfyUI-fal-API.git
```
-
3. Install the required dependencies:
```
pip install -r requirements.txt
```
+4. Configure your API key (below) and restart ComfyUI. Curated nodes appear under the **FAL** category, auto-generated nodes under **FAL/Models/<category>** (e.g. `FAL/Models/text-to-image`), and hand-picked models under **FAL/Featured** — or just search for any model by name.
## Configuration
1. Get your fal API key from [fal.ai](https://fal.ai/dashboard/keys)
-
-2. Copy `config.ini.example` to `config.ini` inside `custom_nodes/ComfyUI-fal-API` (the `config.ini` file is gitignored, so your key never ends up in a commit)
-
-3. Replace `` with your actual fal API key:
- ```ini
- [API]
- FAL_KEY = your_actual_api_key
- ```
-
-4. Alternatively, you can set the FAL_KEY environment variable:
+2. Copy `config.ini.example` to `config.ini` inside `custom_nodes/ComfyUI-fal-API` (`config.ini` is gitignored, so your key never ends up in a commit)
+3. Replace `` with your actual fal API key — or set the `FAL_KEY` environment variable instead:
```bash
export FAL_KEY=your_actual_api_key
```
-### Optional: dynamic node settings
+### config.ini reference
-Add a `[dynamic_nodes]` section to `config.ini` to control the auto-generated nodes:
+All sections besides `[API]` are optional; defaults shown.
```ini
+[API]
+FAL_KEY = your_actual_api_key
+
[dynamic_nodes]
-# Set to false to load only the curated hand-written nodes
+; Set to false to load only the curated hand-written nodes.
enabled = true
-# Comma-separated category filter; leave unset to load everything
-categories = text-to-image,image-to-video
-```
+; Comma-separated category filter; leave unset to load everything.
+; categories = text-to-image,image-to-video
-## Usage
+[cache]
+; Persistent result cache: identical fal calls are served from disk (free)
+; across ComfyUI restarts. Bypass per node with force_rerun.
+enabled = true
+ttl_days = 7
+max_entries = 5000
-After installation and configuration, restart ComfyUI. The curated nodes appear in the node browser under the **FAL** category, and the auto-generated nodes under **FAL/Models/<category>** (e.g. `FAL/Models/text-to-image`). You can also just search for a model name — every auto-generated node is named after its fal model.
+[spend_guard]
+; Refuse to submit jobs once the session's estimated spend reaches the
+; budget, or when the account balance falls below the floor. 0 = disabled.
+session_budget_usd = 0
+min_balance_usd = 0
-## Curated Nodes
+[archive]
+; Safety caps for the dataset/folder → ZIP upload utilities.
+max_files = 5000
+max_total_mb = 2048
-Hand-written nodes with carefully tuned inputs for the most popular models. All of these are unchanged and backward compatible in 2.0.
+[registry]
+; On startup a background thread compares the local model registry
+; against fal's live catalog and logs how many new models are available;
+; the fal sidebar shows them with a one-click refresh (restart required).
+; startup_check = true
-### Image Generation
+[MODELS.md](MODELS.md).**
-- **Flux Pro (fal)**: Generate high-quality images using the Flux Pro model
-- **Flux Dev (fal)**: Use the development version of Flux for image generation
-- **Flux Schnell (fal)**: Fast image generation with Flux Schnell
-- **Flux Pro 1.1 (fal)**: Latest version of Flux Pro for image generation
-- **Flux Pro 1 Fill (fal)**: Image-to-image generation with mask-based fill capabilities
-- **Flux Ultra (fal)**: Ultra-high quality image generation with advanced controls
-- **Flux General (fal)**: ControlNets, Ipadapters, Loras for Flux Dev
-- **Flux LoRA (fal)**: Flux with dual LoRA support for custom styles
-- **Flux Pro Kontext (fal)**: Context-aware single image-to-image generation with max_quality toggle
-- **Flux Pro Kontext Multi (fal)**: Multi-image composition (2-4 images) with context awareness and max_quality toggle
-- **Flux Pro Kontext Text-to-Image (fal)**: Text-to-image with aspect ratio controls and max_quality toggle
-- **Recraft V3 (fal)**: Professional design generation with multiple style options
-- **Sana (fal)**: High-quality image synthesis with ultra-high resolution support
-- **HiDream Full (fal)**: Advanced image generation with comprehensive parameter control
-- **Ideogram v3 (fal)**: Advanced text-to-image generation with typography support
-- **Clarity Upscaler (fal)**: Clarity upscaler for upscaling images with high very fidelity
-- **Seedvr Upscaler (fal)**: Use SeedVR2 to upscale your images
-- **Imagen4 Preview (fal)**: Use Imagen4 (Preview version) to generate images
-- **Qwen Image Edit (fal)**: Use Qwen to edit images
-- **Qwen Image Edit Plus with LoRAs (fal)**: Use Qwen Image Edit Plus with LoRA support to edit images
-- **SeedEdit 3.0 (fal)**: Use SeedEdit 3.0 to edit images
-- **Seedream 4.0 Edit (fal)**: Use Seedream 4.0 to edit images
-- **Nano Banana Text-to-Image (fal)**: Use Nano Banana to generate images
-- **Nano Banana Edit (fal)**: Use Nano Banana to edit images
-- **Nano Banana Pro (fal)**: Unified node for both text-to-image and image editing with Nano Banana Pro
-- **Nano Banana 2 (fal)**: Unified node for text-to-image and image editing with Nano Banana 2 (Gemini 3.1 Flash Image) with multi-resolution (0.5K-4K) and optional web search grounding
-- **Reve Text-to-Image (fal)**: Use Reve's image model to generate images
-- **Dreamina v3.1 Text-to-Image (fal)**: Use Dreamina v3.1 to generate images
-- **GPT-Image 1.5 (fal)**: High-fidelity text-to-image generation with strong prompt adherence
-- **GPT-Image 1.5 Edit (fal)**: High-fidelity image editing with strong prompt adherence (supports up to 16 batched images and optional mask)
-- **GPT-Image 2.0 (fal)** and **GPT-Image 2 Edit (fal)**: OpenAI GPT-Image 2 generation and editing — *fixed in 2.0: these nodes previously failed to load*
-- **DY Wan Fun 2.2 (fal)**: Generate images using DY Wan Fun 2.2 model
-- **DY Wan Upscaler (fal)**: Upscale images using DY Wan Upscaler
+Find them in the node browser under `FAL/Models/`, or search by model name. Node keys are `FalAPI_` (slashes → dashes), so workflows stay stable across registry refreshes. Each generated node gives you:
-### Video Generation
+- **Native inputs/outputs** — `IMAGE`/`VIDEO`/`AUDIO` sockets; connected media is uploaded to fal automatically, and video/audio/image models return native ComfyUI types (JSON-ish models return the raw result string).
+- **Tooltips + pricing** — hover any input for fal's own parameter docs; the help panel shows the model's current pricing.
+- **Seed semantics** — `seed = -1` means "random / omit seed".
+- **force_rerun** — bypass result caching to re-roll identical inputs.
-- **Infinity Star Text-to-Video (fal)**: Generate videos using Infinity Star and text prompts
-- **Kling Video Generation (fal)**: Generate videos using the Kling model
-- **Kling Pro v1.0 Video Generation (fal)**: Original version of Kling Pro for video generation
-- **Kling Pro v1.6 Video Generation (fal)**: Latest version of Kling Pro with improved quality
-- **Kling Master v2.0 Video Generation (fal)**: Advanced video generation with Kling Master
-- **Kling Pro 2.1 Video Generation (fal)**: Video Generation with Kling Pro with First Frame Last Frame support
-- **Kling v2.5 Turbo Pro Image-to-Video (fal)**: Video Generation with Kling Turbo with First Frame Last Frame support
-- **Kling Omni Image-to-Video (fal)**: Kling Omni image-to-video generation with start/end image support
-- **Kling Omni Reference-to-Video (fal)**: Generate videos with reference images and elements
-- **Kling Omni Video-to-Video Edit (fal)**: Edit videos with prompts and reference images
-- **Kling Omni Video-to-Video Reference (fal)**: Video-to-video with reference image control
-- **Kling v2.6 Pro Video Generation (fal)**: Unified T2V/I2V with native audio generation
-- **Kling V3 Standard Video Generation (fal)**: Kling 3.0 Standard unified T2V/I2V with 1080p, 3-15s duration, native audio, and end frame control
-- **Kling V3 Pro Video Generation (fal)**: Kling 3.0 Pro unified T2V/I2V with higher quality cinematic output (3-15s)
-- **Kling V3 Standard Motion Control (fal)**: Character animation via motion transfer from reference video
-- **Kling V3 Pro Motion Control (fal)**: Pro-quality character animation via motion transfer from reference video
-- **Kling O3 Standard Video Generation (fal)**: Kling O3 Standard unified T2V/I2V with 3-15s duration and native audio
-- **Kling O3 Pro Video Generation (fal)**: Kling O3 Pro unified T2V/I2V with highest quality output (3-15s)
-- **Krea Wan 14b Video-to-Video (fal)**: Video-to-Video generation using Krea Wan 14b model
-- **Runway Gen3 Image-to-Video (fal)**: Convert images to videos using Runway Gen3
-- **Luma Dream Machine (fal)**: Create videos with Luma Dream Machine
-- **MiniMax Video Generation (fal)**: Generate videos using MiniMax model
-- **MiniMax Text-to-Video (fal)**: Create videos from text prompts using MiniMax
-- **MiniMax Subject Reference (fal)**: Generate videos with subject reference using MiniMax
-- **Pixverse Swap (fal)**: Swap a person, object, or background in a video using Pixverse Swap
-- **Google Veo2 Image-to-Video (fal)**: Convert images to videos using Google's Veo2 model
-- **Veo3 Video Generation (fal)**: Text-to-video generation with Google Veo3 model
-- **Veo 3.1 First-Last-Frame-to-Video (fal)**: First Frame - Last Frame (Optional) video generation using the full VEO 3.1 model
-- **Veo 3.1 Fast First-Last-Frame-to-Video (fal)**: First Frame - Last Frame (Optional) video generation using the fast VEO 3.1 model
-- **Wan Pro Image-to-Video (fal)**: High-quality video generation with Wan Pro model
-- **Wan 2.5 Preview Image-to-Video (fal)**: Image-to-video generation with the latest Wan 2.5 preview model
-- **Wan VACE Video Edit (fal)**: Video + Reference Images to video generation with Wan VACE
-- **Wan 2.2 VACE Fun 14b (fal)**: Video editing with Wan 2.2 VACE Fun 14b model for pose and depth control
-- **Wan 2.2 14b Animate: Replace Character (fal)**: Animate video content by replacing the foreground character with a new or augmented character using Wan 2.2 14b
-- **Wan 2.2 14b Animate: Move Character (fal)**: Animate video content by moving the foreground character within the scene using Wan 2.2 14b
-- **Wan 2.6 Video Generation (fal)**: Unified T2V/I2V node - generates video from text, or from image if provided
-- **Wan 2.6 Reference-to-Video (fal)**: Generate videos with subject consistency using up to 3 reference videos (@Video1, @Video2, @Video3 in prompt)
-- **Seedance Image-to-Video (fal)**: Convert images to videos using Seedance Lite model
-- **Seedance Text-to-Video (fal)**: Generate videos from text prompts using Seedance Lite model
-- **Seedance Pro Image-to-Video (fal)**: Convert images to videos using Seedance Pro model with advanced controls
-- **Sora 2 Pro Image-to-Video (fal)**: Generate Videos from an image input using OpenAI Sora 2 Pro
-- **Video Upscaler (fal)**: Upscale video quality using AI
-- **Seedvr Upscale Video (fal)**: Upscale video quality using Seedvr
-- **Bria Video Increase Resolution (fal)**: Increase video resolution using Bria
-- **Topaz Upscale Video (fal)**: Upscale video quality using Topaz
-- **Combined Video Generation (fal)**: Generate videos using multiple services simultaneously
- - Supports Kling Pro v1.6, Kling Master v2.0, MiniMax, Luma, Veo2, and Wan Pro
- - Each service can be individually enabled/disabled
- - Wan Pro runs with safety checker enabled and automatic seed selection
-- **Load Video from URL**: Load and process videos from a given URL
-- **Video from URL → VIDEO (fal)**: *New in 2.0* — turn any video URL (e.g. from a `result_json` output) into ComfyUI's native `VIDEO` type
+**Fal Any Endpoint (fal)** is the escape hatch: one generic node that calls *any* fal endpoint by id with free-form JSON arguments plus optional image/video/audio inputs (uploaded and merged into the matching keys). Outputs are extracted as `IMAGE`/`VIDEO`/`AUDIO`, with the raw result always available as `result_json`. Even brand-new models work the day they launch.
-### Language Models (LLMs)
-
-- **LLM (fal)**: Large Language Model for text generation and processing VIA openrouter endpoint
- - Available models:
- - google/gemini-2.5-flash
- - anthropic/claude-sonnet-4.5
- - openai/gpt-4.1
- - openai/gpt-oss-120b
- - meta-llama/llama-4-maverick
- - custom (Get model name from openrouter)'
-
-### Vision Language Models (VLMs)
-
-- **VLM (fal)**: Vision Language Model for image understanding and text generation VIA openrouter endpoint
- - Available models:
- - google/gemini-2.5-flash
- - anthropic/claude-sonnet-4.5
- - openai/gpt-4o
- - qwen/qwen3-vl-235b-a22b-instruct
- - x-ai/grok-4-fast
- - custom (Get model name from openrouter)
- - Supports various tasks such as image captioning, visual question answering, and more
-
-## Auto-Generated Nodes
-
-New in 2.0: at startup, this package reads the committed `data/fal_registry.json` and generates a ComfyUI node for every live public model on fal — currently ~1,391 models. No code is written to disk; the node classes are built in memory each time ComfyUI starts, so updating the registry file is all it takes to get new models.
-
-**Where to find them:** the node browser under `FAL/Models/` (e.g. `FAL/Models/image-to-video`, `FAL/Models/text-to-image`), or just search for the model name. Internally the node keys are `FalAPI_` (slashes replaced with dashes), so workflows stay stable across registry refreshes.
-
-**What each generated node gives you:**
-
-- **Native inputs** — `IMAGE`, `VIDEO`, and `AUDIO` sockets for media parameters; connected media is uploaded to fal automatically. Every other parameter (prompts, enums, sliders) is a regular widget.
-- **Native outputs** — video models return ComfyUI's native `VIDEO` type, audio models return `AUDIO`, image models return `IMAGE` batches. JSON-ish models return the raw result as a string.
-- **Tooltips from the API schema** — hover any input to see fal's own parameter documentation.
-- **Pricing in the help panel** — each node's description includes the model's current pricing so you know what a queue run costs before you press it.
-- **Seed semantics** — `seed = -1` means "random / omit seed"; any other value is sent to the API for reproducibility.
-- **force_rerun** — a toggle that bypasses ComfyUI's result caching so you can re-roll the same inputs without changing anything.
-
-### Fal Any Endpoint (fal)
-
-The escape hatch: a single generic node (under `FAL/Models`) that calls **any** fal endpoint by id. Type the endpoint id (e.g. `fal-ai/flux/dev`), provide arguments as a JSON object, and optionally connect image/video/audio inputs — they are uploaded and override the matching keys (`image_url`, `image_urls`, `video_url`, `audio_url`, `seed`) in your JSON. Outputs are extracted opportunistically as `IMAGE`/`VIDEO`/`AUDIO`, and the raw API result is always available as a `result_json` string.
-
-### Disabling or filtering
-
-If ~893 extra nodes is more than you want, use the `[dynamic_nodes]` config section (see [Configuration](#configuration)) to disable them entirely (`enabled = false`) or load only certain categories (`categories = text-to-image,image-to-video`). The curated nodes always load regardless.
+**Keeping the catalog fresh:** a weekly GitHub Action refreshes `data/fal_registry.json` and opens a PR; you can also run `python scripts/build_registry.py` yourself (then `python scripts/build_readme.py` to regenerate MODELS.md), or use the refresh button in the fal sidebar. If ~1,391 extra nodes is more than you want, the `[dynamic_nodes]` config section disables or filters them — see [Configuration](#configuration).
## Platform Utilities
-New in 2.1–2.3: utilities built on fal's platform primitives (queue, request ids, per-model pricing) — found under `FAL/Platform`.
+Nodes built on fal's platform primitives (queue, request ids, per-model pricing), under `FAL/Platform`:
-### Async fan-out: Fal Submit + Fal Collect
+| Node | What it does |
+| --- | --- |
+| **Fal Submit** / **Fal Collect** | Queue a job on any endpoint and collect it later — wire N Submits into N Collects and all N jobs run **in parallel** on fal, so the graph takes as long as the slowest one, not the sum. |
+| **Fal Result by Request ID** | Paste any past request id (console log, sidebar, or [fal dashboard](https://fal.ai/dashboard/requests)) to re-fetch its result **without re-generating or re-paying**. |
+| **Fal Cost Estimator** | Endpoint id + run count → cost report and `total_usd` float from fal's published pricing, *before* you queue anything. |
+| **Fal Session Costs** | Running ledger of every fal call this session (endpoint, duration, request id, estimated cost), with optional reset. |
+| **Fal Account Balance** | Your live fal balance (needs an admin-scoped key; scoped keys degrade gracefully). |
+| **Fal Job Inbox** | Every Submit is journaled to disk, so queued jobs **survive ComfyUI restarts** — lists pending/collected jobs and outputs the newest pending `request_id` + `endpoint_id`. |
+| **Fal Save Media from URL** | fal result URLs eventually expire; this downloads any result into your `output/` directory and writes a provenance receipt (`.fal.json` sidecar + PNG text chunk with endpoint, request id, source URL). |
+| **Fal Provenance from File** | Read a saved file's receipt back into `endpoint_id` + `request_id` — re-materialize a generation for free, months later. |
-ComfyUI executes nodes one at a time — normally five video generations run back-to-back. **Fal Submit** queues a job on any endpoint and returns instantly with a handle; **Fal Collect** blocks until that job finishes and extracts the outputs (`IMAGE`/`VIDEO`/`AUDIO` + raw JSON). Wire five Submits into five Collects and all five models run **in parallel** on fal — the graph takes as long as the slowest one, not the sum.
+Behind the nodes, three always-on platform features:
-### Fal Result by Request ID
+- **Persistent result cache** — identical fal calls are served from a disk cache, free and instant, across restarts; input uploads are deduplicated. Bypass per node with `force_rerun`; tune via `[cache]`.
+- **Spend guard** — with `[spend_guard]` configured, the pack refuses to submit once estimated session spend hits your budget or your balance drops below the floor — the node errors *before* money moves.
+- **URL passthrough** — every generated node's media input has a `*_direct_url` twin and image nodes output `image_urls`; chain fal→fal by URL and intermediate media never touches your machine.
-Every fal generation has a durable request id (shown in the console log and the session cost report, and on your [fal dashboard](https://fal.ai/dashboard/requests)). Paste an id into this node to **re-fetch any past result without re-generating or re-paying** — recover yesterday's video and wire it into a new graph.
+And a web extension (degrades silently on older ComfyUI): **cost badges** above every priced fal node with live estimates on free-typed endpoint fields, a **fal sidebar** (session spend, balance, live job list with per-job Cancel, registry freshness/refresh), and **endpoint autocomplete** with prices when editing any `endpoint_id` field.
-### Fal Cost Estimator
-
-Enter an endpoint id and a run count → a cost report and a `total_usd` float, parsed from fal's published pricing — *before* you queue anything. For per-unit priced models (e.g. $/second of video) it reports the unit price.
-
-### Fal Session Costs
-
-An in-memory ledger records every fal call this session (endpoint, duration, request id, estimated cost). This node reports the running total — "47 calls, ~$6.20" — with the last calls itemized so you can copy request ids. Optional `reset` clears it after reporting.
-
-### Persistent result cache (2.2)
-
-Identical fal calls are served from a **disk cache** — free and instant — across ComfyUI restarts. Re-open yesterday's workflow and only the nodes you changed re-run. Uploads are deduplicated too (the same input image is uploaded to fal storage once, ever). Bypass per node with `force_rerun`; configure via `[cache]` in config.ini (`enabled`, `ttl_days`, `max_entries`).
-
-### Spend Guard + Fal Account Balance (2.2)
-
-Set `[spend_guard] session_budget_usd` and/or `min_balance_usd` in config.ini and the pack **refuses to submit** once the session's estimated spend hits your budget or your fal balance drops below the floor — the node errors before money moves, never after. The **Fal Account Balance** node reports your live balance (requires an admin-scoped key for the billing API; scoped keys degrade gracefully).
-
-### URL passthrough: zero-I/O fal→fal chains (2.2)
-
-Every auto-generated node's media input has an optional `*_direct_url` twin, and image nodes output `image_urls` alongside the IMAGE tensor (video/audio/file nodes already output URLs). Wire a fal node's URL output into the next fal node's `*_direct_url` input and the intermediate media **never touches your machine** — no download, no re-upload. Chain image → video → upscale at fal speed.
-
-### Durable Job Inbox (2.3)
-
-Every `Fal Submit` is journaled to disk, so queued jobs **survive ComfyUI restarts**. The **Fal Job Inbox** node lists pending/collected jobs and outputs the newest pending `request_id` + `endpoint_id` — wire them into *Fal Result by Request ID* to collect yesterday's generations after a restart. Submit tonight, collect tomorrow.
-
-### Provenance: every output is a receipt (2.3)
-
-*Fal Save Media from URL* now writes a `.fal.json` sidecar (and embeds a `fal_provenance` text chunk into PNGs) recording the endpoint, request id, and source URL, and returns the `request_id` as a second output. The **Fal Provenance from File** node reads any previously saved file back into `endpoint_id` + `request_id` — re-materialize the generation for free, months later.
-
-### In-canvas cost badges, job monitor, and endpoint search (2.3)
-
-The pack now ships a small web extension:
-
-- **Cost badges** — every fal node with published pricing shows a pill just above it ("≈$0.08/run"); nodes with free-typed endpoint fields (Any Endpoint, Submit, Cost Estimator) estimate live as you type.
-- **fal sidebar** — session spend, account balance, and a live job list (with copy-able request ids and per-job Cancel) in a sidebar tab.
-- **Endpoint search** — editing an `endpoint_id` field pops up catalog search with prices; click to fill.
-
-All frontend features degrade silently on older ComfyUI versions.
-
-### Fal Save Media from URL
-
-fal result URLs eventually expire from the CDN. This node downloads any result URL into your ComfyUI `output/` directory (subfolders + collision-safe numbering) so generations are persisted with your other outputs.
-
-## Utility Nodes (2.4)
+## Utility Nodes
Twenty nodes under `FAL/Utils` covering everything between your assets and a fal endpoint — no other packs needed:
-- **Dataset** (`FAL/Utils/Dataset`): *Images → Training ZIP URL* (standard LoRA caption layout), *Folder → ZIP URL*, *Video → Frame Dataset ZIP URL*, *Batch Caption Images* (parallel VLM captioning). The full pipeline: Load Image Folder → Batch Caption → Images→ZIP → any trainer node.
-- **Load** (`FAL/Utils/Load`): *Load Image from URL* (multi-URL batching), *Load Audio from URL*, *Load Image Folder*, *Upload Folder as ZIP URL*.
-- **Video** (`FAL/Utils/Video`): *Extract Frames* (efficient last-frame seek — chain into image-to-video for endless extension), *Trim* (keyframe remux, no re-encode), *Concat* (auto resolution/fps normalize), *Mux Audio + Video* (marry TTS/music to generated video), *Video → Audio*.
-- **Image** (`FAL/Utils/Image`): *Image Grid with Labels*, *Resize to fal Preset* (cover/contain/stretch to the standard image_size dims), *Image ↔ Base64*.
-- **Data** (`FAL/Utils/Data`): *JSON Extract* (dot/bracket path queries against any `result_json` output), *Prompt Lines* (cycling line picker), *Text Template*.
-
-## Generated Model List
-
-The full list of auto-generated model nodes, grouped by category (largest first). Click a category to expand it. This section is regenerated with `python scripts/build_readme.py`.
-
-
-
-1391 models · newest model 2026-07-01 · refresh with `scripts/build_registry.py`
-
-
-image-to-image — 376 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Age Modify | [`fal-ai/image-apps-v2/age-modify`](https://fal.ai/models/fal-ai/image-apps-v2/age-modify) | — | images |
-| AuraSR | [`fal-ai/aura-sr`](https://fal.ai/models/fal-ai/aura-sr) | — | image |
-| Bagel | [`fal-ai/bagel/edit`](https://fal.ai/models/fal-ai/bagel/edit) | — | images |
-| ben-v2-image | [`fal-ai/ben/v2/image`](https://fal.ai/models/fal-ai/ben/v2/image) | — | image |
-| Bernini-R Edit Image | [`fal-ai/bernini-r/edit-image`](https://fal.ai/models/fal-ai/bernini-r/edit-image) | Bytedance | image |
-| Birefnet Background Removal | [`fal-ai/birefnet`](https://fal.ai/models/fal-ai/birefnet) | — | image |
-| Birefnet Background Removal V2 | [`fal-ai/birefnet/v2`](https://fal.ai/models/fal-ai/birefnet/v2) | — | image |
-| Boogu Image | [`fal-ai/boogu-image/edit`](https://fal.ai/models/fal-ai/boogu-image/edit) | — | images |
-| Bria | [`fal-ai/bria/reimagine`](https://fal.ai/models/fal-ai/bria/reimagine) | Bria AI | images |
-| Bria Background Replace | [`fal-ai/bria/background/replace`](https://fal.ai/models/fal-ai/bria/background/replace) | Bria AI | images |
-| Bria Eraser | [`fal-ai/bria/eraser`](https://fal.ai/models/fal-ai/bria/eraser) | Bria AI | image |
-| Bria Expand Image | [`fal-ai/bria/expand`](https://fal.ai/models/fal-ai/bria/expand) | Bria AI | image |
-| Bria GenFill | [`fal-ai/bria/genfill`](https://fal.ai/models/fal-ai/bria/genfill) | Bria AI | images |
-| Bria Product Shot | [`fal-ai/bria/product-shot`](https://fal.ai/models/fal-ai/bria/product-shot) | Bria AI | images |
-| Bria RMBG 2.0 | [`fal-ai/bria/background/remove`](https://fal.ai/models/fal-ai/bria/background/remove) | Bria AI | image |
-| Bytedance Seedream V4 Edit | [`fal-ai/bytedance/seedream/v4/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v4/edit) | Bytedance | images |
-| Bytedance Seedream V4.5 Edit | [`fal-ai/bytedance/seedream/v4.5/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v4.5/edit) | Bytedance | images |
-| Bytedance Seedream V5 Lite Edit | [`fal-ai/bytedance/seedream/v5/lite/edit`](https://fal.ai/models/fal-ai/bytedance/seedream/v5/lite/edit) | Bytedance | images |
-| Cartoonify | [`fal-ai/cartoonify`](https://fal.ai/models/fal-ai/cartoonify) | — | images |
-| CCSR Upscaler | [`fal-ai/ccsr`](https://fal.ai/models/fal-ai/ccsr) | — | image |
-| Chrono Edit | [`fal-ai/chrono-edit`](https://fal.ai/models/fal-ai/chrono-edit) | — | images |
-| Chrono Edit Lora | [`fal-ai/chrono-edit-lora`](https://fal.ai/models/fal-ai/chrono-edit-lora) | — | images |
-| Chrono Edit Lora Gallery | [`fal-ai/chrono-edit-lora-gallery/paintbrush`](https://fal.ai/models/fal-ai/chrono-edit-lora-gallery/paintbrush) | — | images |
-| Chrono Edit Lora Gallery | [`fal-ai/chrono-edit-lora-gallery/upscaler`](https://fal.ai/models/fal-ai/chrono-edit-lora-gallery/upscaler) | — | images |
-| City Teleport | [`fal-ai/image-apps-v2/city-teleport`](https://fal.ai/models/fal-ai/image-apps-v2/city-teleport) | — | images |
-| Clarity Upscaler | [`fal-ai/clarity-upscaler`](https://fal.ai/models/fal-ai/clarity-upscaler) | Clarity AI | image |
-| CodeFormer | [`fal-ai/codeformer`](https://fal.ai/models/fal-ai/codeformer) | — | image |
-| ControlLight | [`fal-ai/control-light`](https://fal.ai/models/fal-ai/control-light) | — | images |
-| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny/image-to-image`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny/image-to-image) | — | images |
-| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny/inpainting`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny/inpainting) | — | images |
-| Creative Upscaler | [`fal-ai/creative-upscaler`](https://fal.ai/models/fal-ai/creative-upscaler) | — | image |
-| Crystal Upscaler | [`clarityai/crystal-upscaler`](https://fal.ai/models/clarityai/crystal-upscaler) | Clarity AI | images |
-| DDColor | [`fal-ai/ddcolor`](https://fal.ai/models/fal-ai/ddcolor) | — | image |
-| DocRes | [`fal-ai/docres`](https://fal.ai/models/fal-ai/docres) | — | image |
-| DocRes-dewarp | [`fal-ai/docres/dewarp`](https://fal.ai/models/fal-ai/docres/dewarp) | — | image |
-| DRCT-Super-Resolution | [`fal-ai/drct-super-resolution`](https://fal.ai/models/fal-ai/drct-super-resolution) | — | image |
-| DreamOmni2 | [`fal-ai/dreamomni2/edit`](https://fal.ai/models/fal-ai/dreamomni2/edit) | — | image |
-| DWPose Pose Prediction | [`fal-ai/dwpose`](https://fal.ai/models/fal-ai/dwpose) | — | image |
-| Embed Product | [`bria/embed-product`](https://fal.ai/models/bria/embed-product) | Bria AI | json |
-| Emu 3.5 Image | [`fal-ai/emu-3.5-image/edit-image`](https://fal.ai/models/fal-ai/emu-3.5-image/edit-image) | — | images |
-| EVF-SAM2 Segmentation | [`fal-ai/evf-sam`](https://fal.ai/models/fal-ai/evf-sam) | — | image |
-| Expression Change | [`fal-ai/image-apps-v2/expression-change`](https://fal.ai/models/fal-ai/image-apps-v2/expression-change) | — | images |
-| Extract Object | [`bria/extract-object`](https://fal.ai/models/bria/extract-object) | Bria AI | image |
-| Face Retoucher | [`fal-ai/retoucher`](https://fal.ai/models/fal-ai/retoucher) | — | image |
-| FASHN Virtual Try-On V1.5 | [`fal-ai/fashn/tryon/v1.5`](https://fal.ai/models/fal-ai/fashn/tryon/v1.5) | Fashn | images |
-| FASHN Virtual Try-On V1.6 | [`fal-ai/fashn/tryon/v1.6`](https://fal.ai/models/fal-ai/fashn/tryon/v1.6) | Fashn | images |
-| Ffmpeg Api | [`fal-ai/ffmpeg-api/extract-frame`](https://fal.ai/models/fal-ai/ffmpeg-api/extract-frame) | — | images |
-| Fibo Edit | [`bria/fibo-edit/edit`](https://fal.ai/models/bria/fibo-edit/edit) | Bria AI | images |
-| Fibo Edit [Add Object by Text] | [`bria/fibo-edit/add_object_by_text`](https://fal.ai/models/bria/fibo-edit/add_object_by_text) | Bria AI | images |
-| Fibo Edit [Blend] | [`bria/fibo-edit/blend`](https://fal.ai/models/bria/fibo-edit/blend) | Bria AI | images |
-| Fibo Edit [Colorize] | [`bria/fibo-edit/colorize`](https://fal.ai/models/bria/fibo-edit/colorize) | Bria AI | images |
-| Fibo Edit [Erase by Text] | [`bria/fibo-edit/erase_by_text`](https://fal.ai/models/bria/fibo-edit/erase_by_text) | Bria AI | images |
-| Fibo Edit [Relight] | [`bria/fibo-edit/relight`](https://fal.ai/models/bria/fibo-edit/relight) | Bria AI | images |
-| Fibo Edit [Replace Object by Text] | [`bria/fibo-edit/replace_object_by_text`](https://fal.ai/models/bria/fibo-edit/replace_object_by_text) | Bria AI | images |
-| Fibo Edit [Reseason] | [`bria/fibo-edit/reseason`](https://fal.ai/models/bria/fibo-edit/reseason) | Bria AI | images |
-| Fibo Edit [Restore] | [`bria/fibo-edit/restore`](https://fal.ai/models/bria/fibo-edit/restore) | Bria AI | images |
-| Fibo Edit [Restyle] | [`bria/fibo-edit/restyle`](https://fal.ai/models/bria/fibo-edit/restyle) | Bria AI | images |
-| Fibo Edit [Rewrite Text] | [`bria/fibo-edit/rewrite_text`](https://fal.ai/models/bria/fibo-edit/rewrite_text) | Bria AI | images |
-| Fibo Edit [Sketch to Image] | [`bria/fibo-edit/sketch_to_colored_image`](https://fal.ai/models/bria/fibo-edit/sketch_to_colored_image) | Bria AI | images |
-| FILM | [`fal-ai/film`](https://fal.ai/models/fal-ai/film) | — | images |
-| Finegrain Eraser | [`fal-ai/finegrain-eraser`](https://fal.ai/models/fal-ai/finegrain-eraser) | Finegrain | image |
-| Finegrain Eraser Bbox | [`fal-ai/finegrain-eraser/bbox`](https://fal.ai/models/fal-ai/finegrain-eraser/bbox) | Finegrain | image |
-| Finegrain Eraser Mask | [`fal-ai/finegrain-eraser/mask`](https://fal.ai/models/fal-ai/finegrain-eraser/mask) | Finegrain | image |
-| Firered Image Edit | [`fal-ai/firered-image-edit`](https://fal.ai/models/fal-ai/firered-image-edit) | — | images |
-| Firered Image Edit V1.1 | [`fal-ai/firered-image-edit-v1.1`](https://fal.ai/models/fal-ai/firered-image-edit-v1.1) | FireRed | images |
-| Florence-2 Large | [`fal-ai/florence-2-large/caption-to-phrase-grounding`](https://fal.ai/models/fal-ai/florence-2-large/caption-to-phrase-grounding) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/dense-region-caption`](https://fal.ai/models/fal-ai/florence-2-large/dense-region-caption) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/object-detection`](https://fal.ai/models/fal-ai/florence-2-large/object-detection) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/ocr-with-region`](https://fal.ai/models/fal-ai/florence-2-large/ocr-with-region) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/open-vocabulary-detection`](https://fal.ai/models/fal-ai/florence-2-large/open-vocabulary-detection) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/referring-expression-segmentation`](https://fal.ai/models/fal-ai/florence-2-large/referring-expression-segmentation) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/region-proposal`](https://fal.ai/models/fal-ai/florence-2-large/region-proposal) | — | image |
-| Florence-2 Large | [`fal-ai/florence-2-large/region-to-segmentation`](https://fal.ai/models/fal-ai/florence-2-large/region-to-segmentation) | — | image |
-| Flow-Edit | [`fal-ai/flowedit`](https://fal.ai/models/fal-ai/flowedit) | — | image |
-| Flux 2 [klein] Realtime | [`fal-ai/flux-2/klein/realtime`](https://fal.ai/models/fal-ai/flux-2/klein/realtime) | Black Forest Labs | images |
-| FLUX 2 Edit | [`fal-ai/flux-2/edit`](https://fal.ai/models/fal-ai/flux-2/edit) | Black Forest Labs | images |
-| FLUX 2 Flash Edit | [`fal-ai/flux-2/flash/edit`](https://fal.ai/models/fal-ai/flux-2/flash/edit) | Black Forest Labs | images |
-| Flux 2 Flex | [`fal-ai/flux-2-flex/edit`](https://fal.ai/models/fal-ai/flux-2-flex/edit) | Black Forest Labs | images |
-| FLUX 2 Lora Edit | [`fal-ai/flux-2/lora/edit`](https://fal.ai/models/fal-ai/flux-2/lora/edit) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/add-background`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/add-background) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/apartment-staging`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/apartment-staging) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/face-to-full-portrait) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/multiple-angles) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/virtual-tryon`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/virtual-tryon) | Black Forest Labs | images |
-| Flux 2 Max | [`fal-ai/flux-2-max/edit`](https://fal.ai/models/fal-ai/flux-2-max/edit) | Black Forest Labs | images |
-| FLUX 2 Pro Edit | [`fal-ai/flux-2-pro/edit`](https://fal.ai/models/fal-ai/flux-2-pro/edit) | Black Forest Labs | images |
-| FLUX 2 Pro Outpaint | [`fal-ai/flux-2-pro/outpaint`](https://fal.ai/models/fal-ai/flux-2-pro/outpaint) | Black Forest Labs | images |
-| FLUX 2 Turbo Edit | [`fal-ai/flux-2/turbo/edit`](https://fal.ai/models/fal-ai/flux-2/turbo/edit) | Black Forest Labs | images |
-| Flux Kontext Lora | [`fal-ai/flux-kontext-lora`](https://fal.ai/models/fal-ai/flux-kontext-lora) | Black Forest Labs | images |
-| Flux Kontext Lora | [`fal-ai/flux-kontext-lora/inpaint`](https://fal.ai/models/fal-ai/flux-kontext-lora/inpaint) | Black Forest Labs | images |
-| Flux Pro Erase | [`fal-ai/flux-pro/v1/erase`](https://fal.ai/models/fal-ai/flux-pro/v1/erase) | Black Forest Labs | images |
-| FLUX Virtual Try-On | [`fal-ai/flux-pro/v1/vto`](https://fal.ai/models/fal-ai/flux-pro/v1/vto) | Black Forest Labs | images |
-| Flux Vision Upscaler | [`fal-ai/flux-vision-upscaler`](https://fal.ai/models/fal-ai/flux-vision-upscaler) | Black Forest Labs | image |
-| FLUX.1 [dev] | [`fal-ai/flux-1/dev/image-to-image`](https://fal.ai/models/fal-ai/flux-1/dev/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [dev] | [`fal-ai/flux/dev/image-to-image`](https://fal.ai/models/fal-ai/flux/dev/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [dev] Canny with LoRAs | [`fal-ai/flux-lora-canny`](https://fal.ai/models/fal-ai/flux-lora-canny) | Black Forest Labs | images |
-| FLUX.1 [dev] Control LoRA Canny | [`fal-ai/flux-control-lora-canny/image-to-image`](https://fal.ai/models/fal-ai/flux-control-lora-canny/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [dev] Control LoRA Depth | [`fal-ai/flux-control-lora-depth/image-to-image`](https://fal.ai/models/fal-ai/flux-control-lora-depth/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [dev] Depth with LoRAs | [`fal-ai/flux-lora-depth`](https://fal.ai/models/fal-ai/flux-lora-depth) | Black Forest Labs | images |
-| FLUX.1 [dev] Fill with LoRAs | [`fal-ai/flux-lora-fill`](https://fal.ai/models/fal-ai/flux-lora-fill) | Black Forest Labs | images |
-| FLUX.1 [dev] Redux | [`fal-ai/flux-1/dev/redux`](https://fal.ai/models/fal-ai/flux-1/dev/redux) | Black Forest Labs | images |
-| FLUX.1 [dev] Redux | [`fal-ai/flux/dev/redux`](https://fal.ai/models/fal-ai/flux/dev/redux) | Black Forest Labs | images |
-| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/differential-diffusion`](https://fal.ai/models/fal-ai/flux-general/differential-diffusion) | Black Forest Labs | images |
-| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/image-to-image`](https://fal.ai/models/fal-ai/flux-general/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/inpainting`](https://fal.ai/models/fal-ai/flux-general/inpainting) | Black Forest Labs | images |
-| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general/rf-inversion`](https://fal.ai/models/fal-ai/flux-general/rf-inversion) | Black Forest Labs | images |
-| FLUX.1 [dev] with LoRAs | [`fal-ai/flux-lora/image-to-image`](https://fal.ai/models/fal-ai/flux-lora/image-to-image) | Black Forest Labs | images |
-| FLUX.1 [pro] Fill | [`fal-ai/flux-pro/v1/fill`](https://fal.ai/models/fal-ai/flux-pro/v1/fill) | Black Forest Labs | images |
-| FLUX.1 [pro] Fill Fine-tuned | [`fal-ai/flux-pro/v1/fill-finetuned`](https://fal.ai/models/fal-ai/flux-pro/v1/fill-finetuned) | Black Forest Labs | images |
-| FLUX.1 [schnell] Redux | [`fal-ai/flux-1/schnell/redux`](https://fal.ai/models/fal-ai/flux-1/schnell/redux) | Black Forest Labs | images |
-| FLUX.1 [schnell] Redux | [`fal-ai/flux/schnell/redux`](https://fal.ai/models/fal-ai/flux/schnell/redux) | Black Forest Labs | images |
-| FLUX.1 Kontext [dev] | [`fal-ai/flux-kontext/dev`](https://fal.ai/models/fal-ai/flux-kontext/dev) | Black Forest Labs | images |
-| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max`](https://fal.ai/models/fal-ai/flux-pro/kontext/max) | Black Forest Labs | images |
-| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max/multi`](https://fal.ai/models/fal-ai/flux-pro/kontext/max/multi) | Black Forest Labs | images |
-| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext`](https://fal.ai/models/fal-ai/flux-pro/kontext) | Black Forest Labs | images |
-| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext/multi`](https://fal.ai/models/fal-ai/flux-pro/kontext/multi) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] | [`fal-ai/flux-1/krea/image-to-image`](https://fal.ai/models/fal-ai/flux-1/krea/image-to-image) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] | [`fal-ai/flux/krea/image-to-image`](https://fal.ai/models/fal-ai/flux/krea/image-to-image) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] Inpainting with LoRAs | [`fal-ai/flux-krea-lora/inpainting`](https://fal.ai/models/fal-ai/flux-krea-lora/inpainting) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] Redux | [`fal-ai/flux-1/krea/redux`](https://fal.ai/models/fal-ai/flux-1/krea/redux) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] Redux | [`fal-ai/flux/krea/redux`](https://fal.ai/models/fal-ai/flux/krea/redux) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] with LoRAs | [`fal-ai/flux-krea-lora/image-to-image`](https://fal.ai/models/fal-ai/flux-krea-lora/image-to-image) | Black Forest Labs | images |
-| FLUX.1 SRPO [dev] | [`fal-ai/flux-1/srpo/image-to-image`](https://fal.ai/models/fal-ai/flux-1/srpo/image-to-image) | Black Forest Labs | images |
-| FLUX.1 SRPO [dev] | [`fal-ai/flux/srpo/image-to-image`](https://fal.ai/models/fal-ai/flux/srpo/image-to-image) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B | [`fal-ai/flux-2/klein/4b/edit`](https://fal.ai/models/fal-ai/flux-2/klein/4b/edit) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B Base | [`fal-ai/flux-2/klein/4b/base/edit`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/edit) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B Base LoRA | [`fal-ai/flux-2/klein/4b/base/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/edit/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B LoRA | [`fal-ai/flux-2/klein/4b/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/edit/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B | [`fal-ai/flux-2/klein/9b/edit`](https://fal.ai/models/fal-ai/flux-2/klein/9b/edit) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B Base | [`fal-ai/flux-2/klein/9b/base/edit`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/edit) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B Base LoRA | [`fal-ai/flux-2/klein/9b/base/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/edit/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B LoRA | [`fal-ai/flux-2/klein/9b/edit/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/edit/lora) | Black Forest Labs | images |
-| FLUX1.1 [pro] Redux | [`fal-ai/flux-pro/v1.1/redux`](https://fal.ai/models/fal-ai/flux-pro/v1.1/redux) | Black Forest Labs | images |
-| FLUX1.1 [pro] ultra Redux | [`fal-ai/flux-pro/v1.1-ultra/redux`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra/redux) | Black Forest Labs | images |
-| Gemini 2.5 Flash Image | [`fal-ai/gemini-25-flash-image/edit`](https://fal.ai/models/fal-ai/gemini-25-flash-image/edit) | Google | images |
-| Gemini 3 Pro Image Preview | [`fal-ai/gemini-3-pro-image-preview/edit`](https://fal.ai/models/fal-ai/gemini-3-pro-image-preview/edit) | Google | images |
-| Gemini 3.1 Flash Image Preview | [`fal-ai/gemini-3.1-flash-image-preview/edit`](https://fal.ai/models/fal-ai/gemini-3.1-flash-image-preview/edit) | Google | images |
-| Genfill | [`bria/genfill/v2`](https://fal.ai/models/bria/genfill/v2) | — | images |
-| Ghiblify Images | [`fal-ai/ghiblify`](https://fal.ai/models/fal-ai/ghiblify) | — | image |
-| Glm Image | [`fal-ai/glm-image/image-to-image`](https://fal.ai/models/fal-ai/glm-image/image-to-image) | — | images |
-| GPT Image 1 Mini | [`fal-ai/gpt-image-1-mini/edit`](https://fal.ai/models/fal-ai/gpt-image-1-mini/edit) | OpenAI | images |
-| GPT Image 2 API | [`openai/gpt-image-2/edit`](https://fal.ai/models/openai/gpt-image-2/edit) | OpenAI | images |
-| GPT-Image 1.5 | [`fal-ai/gpt-image-1.5/edit`](https://fal.ai/models/fal-ai/gpt-image-1.5/edit) | OpenAI | images |
-| gpt-image-1 | [`fal-ai/gpt-image-1/edit-image`](https://fal.ai/models/fal-ai/gpt-image-1/edit-image) | OpenAI | images |
-| Grok Imagine Image | [`xai/grok-imagine-image/edit`](https://fal.ai/models/xai/grok-imagine-image/edit) | xAI | images |
-| Grok Imagine Image Editing Quality | [`xai/grok-imagine-image/quality/edit`](https://fal.ai/models/xai/grok-imagine-image/quality/edit) | xAI | images |
-| Hair Change | [`fal-ai/image-apps-v2/hair-change`](https://fal.ai/models/fal-ai/image-apps-v2/hair-change) | — | images |
-| Headshot Generator | [`fal-ai/image-apps-v2/headshot-photo`](https://fal.ai/models/fal-ai/image-apps-v2/headshot-photo) | — | images |
-| Hidream I1 Full | [`fal-ai/hidream-i1-full/image-to-image`](https://fal.ai/models/fal-ai/hidream-i1-full/image-to-image) | Hidream | images |
-| Hidream O1 Image | [`fal-ai/hidream-o1-image/dev/edit`](https://fal.ai/models/fal-ai/hidream-o1-image/dev/edit) | Hidream | images |
-| Hidream O1 Image | [`fal-ai/hidream-o1-image/edit`](https://fal.ai/models/fal-ai/hidream-o1-image/edit) | Hidream | images |
-| Hunyuan Image | [`fal-ai/hunyuan-image/v3/instruct/edit`](https://fal.ai/models/fal-ai/hunyuan-image/v3/instruct/edit) | Tencent | images |
-| Hunyuan World | [`fal-ai/hunyuan_world`](https://fal.ai/models/fal-ai/hunyuan_world) | Tencent | image |
-| Hy Wu Edit | [`fal-ai/hy-wu-edit`](https://fal.ai/models/fal-ai/hy-wu-edit) | — | images |
-| IC-Light-v2 for Image Relighting | [`fal-ai/iclight-v2`](https://fal.ai/models/fal-ai/iclight-v2) | — | images |
-| Ideogram | [`fal-ai/ideogram/v3/layerize-text`](https://fal.ai/models/fal-ai/ideogram/v3/layerize-text) | Ideogram | image |
-| Ideogram | [`fal-ai/ideogram/v3/reframe`](https://fal.ai/models/fal-ai/ideogram/v3/reframe) | Ideogram | images |
-| Ideogram | [`fal-ai/ideogram/v3/remix`](https://fal.ai/models/fal-ai/ideogram/v3/remix) | Ideogram | images |
-| Ideogram Remove Background | [`fal-ai/ideogram/remove-background`](https://fal.ai/models/fal-ai/ideogram/remove-background) | Ideogram | image |
-| Ideogram Replace Background | [`fal-ai/ideogram/v3/replace-background`](https://fal.ai/models/fal-ai/ideogram/v3/replace-background) | Ideogram | images |
-| Ideogram Upscale | [`fal-ai/ideogram/upscale`](https://fal.ai/models/fal-ai/ideogram/upscale) | Ideogram | images |
-| Ideogram V2 Edit | [`fal-ai/ideogram/v2/edit`](https://fal.ai/models/fal-ai/ideogram/v2/edit) | Ideogram | images |
-| Ideogram V2 Remix | [`fal-ai/ideogram/v2/remix`](https://fal.ai/models/fal-ai/ideogram/v2/remix) | Ideogram | images |
-| Ideogram V2 Turbo Edit | [`fal-ai/ideogram/v2/turbo/edit`](https://fal.ai/models/fal-ai/ideogram/v2/turbo/edit) | Ideogram | images |
-| Ideogram V2 Turbo Remix | [`fal-ai/ideogram/v2/turbo/remix`](https://fal.ai/models/fal-ai/ideogram/v2/turbo/remix) | Ideogram | images |
-| Ideogram V2A Remix | [`fal-ai/ideogram/v2a/remix`](https://fal.ai/models/fal-ai/ideogram/v2a/remix) | Ideogram | images |
-| Ideogram V2A Turbo Remix | [`fal-ai/ideogram/v2a/turbo/remix`](https://fal.ai/models/fal-ai/ideogram/v2a/turbo/remix) | Ideogram | images |
-| Ideogram V3 Character | [`fal-ai/ideogram/character`](https://fal.ai/models/fal-ai/ideogram/character) | Ideogram | images |
-| Ideogram V3 Character Edit | [`fal-ai/ideogram/character/edit`](https://fal.ai/models/fal-ai/ideogram/character/edit) | Ideogram | images |
-| Ideogram V3 Character Remix | [`fal-ai/ideogram/character/remix`](https://fal.ai/models/fal-ai/ideogram/character/remix) | Ideogram | images |
-| Ideogram V3 Edit | [`fal-ai/ideogram/v3/edit`](https://fal.ai/models/fal-ai/ideogram/v3/edit) | Ideogram | images |
-| Ideogram V4.0q Image to Image | [`ideogram/v4/image-to-image`](https://fal.ai/models/ideogram/v4/image-to-image) | Ideogram | images |
-| Ideogram V4.0q Image to Image LoRA | [`ideogram/v4/image-to-image/lora`](https://fal.ai/models/ideogram/v4/image-to-image/lora) | Ideogram | images |
-| Ideogram V4.0q Tiling | [`ideogram/v4/tiling`](https://fal.ai/models/ideogram/v4/tiling) | Ideogram | images |
-| Ideogram V4.0q Tiling LoRA | [`ideogram/v4/tiling/lora`](https://fal.ai/models/ideogram/v4/tiling/lora) | Ideogram | images |
-| Image Editing | [`fal-ai/image-editing/baby-version`](https://fal.ai/models/fal-ai/image-editing/baby-version) | — | images |
-| Image Editing Age Progression | [`fal-ai/image-editing/age-progression`](https://fal.ai/models/fal-ai/image-editing/age-progression) | — | images |
-| Image Editing Background Change | [`fal-ai/image-editing/background-change`](https://fal.ai/models/fal-ai/image-editing/background-change) | — | images |
-| Image Editing Broccoli Haircut | [`fal-ai/image-editing/broccoli-haircut`](https://fal.ai/models/fal-ai/image-editing/broccoli-haircut) | — | images |
-| Image Editing Cartoonify | [`fal-ai/image-editing/cartoonify`](https://fal.ai/models/fal-ai/image-editing/cartoonify) | — | images |
-| Image Editing Color Correction | [`fal-ai/image-editing/color-correction`](https://fal.ai/models/fal-ai/image-editing/color-correction) | — | images |
-| Image Editing Expression Change | [`fal-ai/image-editing/expression-change`](https://fal.ai/models/fal-ai/image-editing/expression-change) | — | images |
-| Image Editing Face Enhancement | [`fal-ai/image-editing/face-enhancement`](https://fal.ai/models/fal-ai/image-editing/face-enhancement) | — | images |
-| Image Editing Hair Change | [`fal-ai/image-editing/hair-change`](https://fal.ai/models/fal-ai/image-editing/hair-change) | — | images |
-| Image Editing Object Removal | [`fal-ai/image-editing/object-removal`](https://fal.ai/models/fal-ai/image-editing/object-removal) | — | images |
-| Image Editing Photo Restoration | [`fal-ai/image-editing/photo-restoration`](https://fal.ai/models/fal-ai/image-editing/photo-restoration) | — | images |
-| Image Editing Plushie Style | [`fal-ai/image-editing/plushie-style`](https://fal.ai/models/fal-ai/image-editing/plushie-style) | — | images |
-| Image Editing Professional Photo | [`fal-ai/image-editing/professional-photo`](https://fal.ai/models/fal-ai/image-editing/professional-photo) | — | images |
-| Image Editing Realism | [`fal-ai/image-editing/realism`](https://fal.ai/models/fal-ai/image-editing/realism) | — | images |
-| Image Editing Reframe | [`fal-ai/image-editing/reframe`](https://fal.ai/models/fal-ai/image-editing/reframe) | — | images |
-| Image Editing Retouch | [`fal-ai/image-editing/retouch`](https://fal.ai/models/fal-ai/image-editing/retouch) | — | images |
-| Image Editing Scene Composition | [`fal-ai/image-editing/scene-composition`](https://fal.ai/models/fal-ai/image-editing/scene-composition) | — | images |
-| Image Editing Style Transfer | [`fal-ai/image-editing/style-transfer`](https://fal.ai/models/fal-ai/image-editing/style-transfer) | — | images |
-| Image Editing Text Removal | [`fal-ai/image-editing/text-removal`](https://fal.ai/models/fal-ai/image-editing/text-removal) | — | images |
-| Image Editing Time Of Day | [`fal-ai/image-editing/time-of-day`](https://fal.ai/models/fal-ai/image-editing/time-of-day) | — | images |
-| Image Editing Weather Effect | [`fal-ai/image-editing/weather-effect`](https://fal.ai/models/fal-ai/image-editing/weather-effect) | — | images |
-| Image Editing Wojak Style | [`fal-ai/image-editing/wojak-style`](https://fal.ai/models/fal-ai/image-editing/wojak-style) | — | images |
-| Image Editing Youtube Thumbnails | [`fal-ai/image-editing/youtube-thumbnails`](https://fal.ai/models/fal-ai/image-editing/youtube-thumbnails) | — | images |
-| Image Outpaint | [`fal-ai/image-apps-v2/outpaint`](https://fal.ai/models/fal-ai/image-apps-v2/outpaint) | — | images |
-| Image Preprocessors | [`fal-ai/image-preprocessors/depth-anything/v2`](https://fal.ai/models/fal-ai/image-preprocessors/depth-anything/v2) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/hed`](https://fal.ai/models/fal-ai/image-preprocessors/hed) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/lineart`](https://fal.ai/models/fal-ai/image-preprocessors/lineart) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/midas`](https://fal.ai/models/fal-ai/image-preprocessors/midas) | — | json |
-| Image Preprocessors | [`fal-ai/image-preprocessors/mlsd`](https://fal.ai/models/fal-ai/image-preprocessors/mlsd) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/pidi`](https://fal.ai/models/fal-ai/image-preprocessors/pidi) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/sam`](https://fal.ai/models/fal-ai/image-preprocessors/sam) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/scribble`](https://fal.ai/models/fal-ai/image-preprocessors/scribble) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/teed`](https://fal.ai/models/fal-ai/image-preprocessors/teed) | — | image |
-| Image Preprocessors | [`fal-ai/image-preprocessors/zoe`](https://fal.ai/models/fal-ai/image-preprocessors/zoe) | — | image |
-| Image2Pixel | [`fal-ai/image2pixel`](https://fal.ai/models/fal-ai/image2pixel) | — | images |
-| Image2svg | [`fal-ai/image2svg`](https://fal.ai/models/fal-ai/image2svg) | — | images |
-| Imagineart 2.0 Edit Preview | [`imagineart/imagineart-2.0-edit-preview/image-to-image`](https://fal.ai/models/imagineart/imagineart-2.0-edit-preview/image-to-image) | — | images |
-| Inpainting sdxl and sd | [`fal-ai/inpaint`](https://fal.ai/models/fal-ai/inpaint) | — | image |
-| Instant Character | [`fal-ai/instant-character`](https://fal.ai/models/fal-ai/instant-character) | — | images |
-| Invisible Watermark | [`fal-ai/invisible-watermark`](https://fal.ai/models/fal-ai/invisible-watermark) | — | image |
-| IP Adapter Face ID | [`fal-ai/ip-adapter-face-id`](https://fal.ai/models/fal-ai/ip-adapter-face-id) | — | image |
-| Joyai Image Edit | [`fal-ai/joyai-image-edit`](https://fal.ai/models/fal-ai/joyai-image-edit) | — | images |
-| Juggernaut Flux Base | [`rundiffusion-fal/juggernaut-flux/base/image-to-image`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/base/image-to-image) | Rundiffusion | images |
-| Juggernaut Flux Lora | [`rundiffusion-fal/juggernaut-flux-lora/inpainting`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux-lora/inpainting) | Rundiffusion | images |
-| Juggernaut Flux Pro | [`rundiffusion-fal/juggernaut-flux/pro/image-to-image`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/pro/image-to-image) | Rundiffusion | images |
-| Kling Image | [`fal-ai/kling-image/o3/image-to-image`](https://fal.ai/models/fal-ai/kling-image/o3/image-to-image) | Kling | images |
-| Kling Image | [`fal-ai/kling-image/v3/image-to-image`](https://fal.ai/models/fal-ai/kling-image/v3/image-to-image) | Kling | images |
-| Kling Kolors Virtual TryOn v1.5 | [`fal-ai/kling/v1-5/kolors-virtual-try-on`](https://fal.ai/models/fal-ai/kling/v1-5/kolors-virtual-try-on) | Kling | image |
-| Kling O1 Image | [`fal-ai/kling-image/o1`](https://fal.ai/models/fal-ai/kling-image/o1) | Kling | images |
-| Kolors Image to Image | [`fal-ai/kolors/image-to-image`](https://fal.ai/models/fal-ai/kolors/image-to-image) | — | images |
-| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion/image-to-image`](https://fal.ai/models/fal-ai/fast-lcm-diffusion/image-to-image) | — | images |
-| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion/inpainting`](https://fal.ai/models/fal-ai/fast-lcm-diffusion/inpainting) | — | images |
-| Leffa Pose Transfer | [`fal-ai/leffa/pose-transfer`](https://fal.ai/models/fal-ai/leffa/pose-transfer) | — | image |
-| Leffa Virtual TryOn | [`fal-ai/leffa/virtual-tryon`](https://fal.ai/models/fal-ai/leffa/virtual-tryon) | — | image |
-| Live Portrait | [`fal-ai/live-portrait/image`](https://fal.ai/models/fal-ai/live-portrait/image) | — | image |
-| Longcat Image | [`fal-ai/longcat-image/edit`](https://fal.ai/models/fal-ai/longcat-image/edit) | — | images |
-| Luma Photon | [`fal-ai/luma-photon/flash/modify`](https://fal.ai/models/fal-ai/luma-photon/flash/modify) | Luma AI | images |
-| Luma Photon | [`fal-ai/luma-photon/modify`](https://fal.ai/models/fal-ai/luma-photon/modify) | Luma AI | images |
-| Luma Photon Flash Reframe | [`fal-ai/luma-photon/flash/reframe`](https://fal.ai/models/fal-ai/luma-photon/flash/reframe) | Luma AI | images |
-| Luma Photon Reframe | [`fal-ai/luma-photon/reframe`](https://fal.ai/models/fal-ai/luma-photon/reframe) | Luma AI | images |
-| Luma Uni-1 Edit | [`luma/agent/uni-1/v1/edit`](https://fal.ai/models/luma/agent/uni-1/v1/edit) | Luma AI | images |
-| Luma Uni-1 Edit Max | [`luma/agent/uni-1/v1/max/edit`](https://fal.ai/models/luma/agent/uni-1/v1/max/edit) | Luma AI | images |
-| Mai Image 2.5 | [`microsoft/mai-image-2.5/edit`](https://fal.ai/models/microsoft/mai-image-2.5/edit) | Microsoft | images |
-| Makeup Changer | [`fal-ai/image-apps-v2/makeup-application`](https://fal.ai/models/fal-ai/image-apps-v2/makeup-application) | — | images |
-| Marigold Depth Estimation | [`fal-ai/imageutils/marigold-depth`](https://fal.ai/models/fal-ai/imageutils/marigold-depth) | — | image |
-| Midas Depth Estimation | [`fal-ai/imageutils/depth`](https://fal.ai/models/fal-ai/imageutils/depth) | — | image |
-| Minimax Image Subject Reference | [`fal-ai/minimax/image-01/subject-reference`](https://fal.ai/models/fal-ai/minimax/image-01/subject-reference) | Minimax | images |
-| Moondream3 Preview [Segment] | [`fal-ai/moondream3-preview/segment`](https://fal.ai/models/fal-ai/moondream3-preview/segment) | Moondream | image |
-| MoonDreamNext Detection | [`fal-ai/moondream-next/detection`](https://fal.ai/models/fal-ai/moondream-next/detection) | Moondream | image |
-| NAFNet-deblur | [`fal-ai/nafnet/deblur`](https://fal.ai/models/fal-ai/nafnet/deblur) | — | image |
-| NAFNet-denoise | [`fal-ai/nafnet/denoise`](https://fal.ai/models/fal-ai/nafnet/denoise) | — | image |
-| Nano Banana | [`fal-ai/nano-banana/edit`](https://fal.ai/models/fal-ai/nano-banana/edit) | Google | images |
-| Nano Banana 2 | [`fal-ai/nano-banana-2/edit`](https://fal.ai/models/fal-ai/nano-banana-2/edit) | Google | images |
-| Nano Banana Lite Edit | [`google/nano-banana-lite/edit`](https://fal.ai/models/google/nano-banana-lite/edit) | Google | images |
-| Nano Banana Pro | [`fal-ai/nano-banana-pro/edit`](https://fal.ai/models/fal-ai/nano-banana-pro/edit) | Google | images |
-| Object Removal | [`fal-ai/image-apps-v2/object-removal`](https://fal.ai/models/fal-ai/image-apps-v2/object-removal) | — | images |
-| Object Removal | [`fal-ai/object-removal`](https://fal.ai/models/fal-ai/object-removal) | — | images |
-| Object Removal | [`fal-ai/object-removal/bbox`](https://fal.ai/models/fal-ai/object-removal/bbox) | — | images |
-| Object Removal | [`fal-ai/object-removal/mask`](https://fal.ai/models/fal-ai/object-removal/mask) | — | images |
-| Omni Zero | [`fal-ai/omni-zero`](https://fal.ai/models/fal-ai/omni-zero) | — | image |
-| Optimized Latent Consistency (SDv1.5) | [`fal-ai/lcm-sd15-i2i`](https://fal.ai/models/fal-ai/lcm-sd15-i2i) | — | images |
-| PASD | [`fal-ai/pasd`](https://fal.ai/models/fal-ai/pasd) | — | images |
-| PATINA | [`fal-ai/patina`](https://fal.ai/models/fal-ai/patina) | Fal | images |
-| PATINA | [`fal-ai/patina/material/extract`](https://fal.ai/models/fal-ai/patina/material/extract) | Fal | images |
-| Perspective Change | [`fal-ai/image-apps-v2/perspective`](https://fal.ai/models/fal-ai/image-apps-v2/perspective) | — | images |
-| Phota | [`fal-ai/phota/edit`](https://fal.ai/models/fal-ai/phota/edit) | Phota | images |
-| Phota Enhance | [`fal-ai/phota/enhance`](https://fal.ai/models/fal-ai/phota/enhance) | Phota | images |
-| Photo Restoration | [`fal-ai/image-apps-v2/photo-restoration`](https://fal.ai/models/fal-ai/image-apps-v2/photo-restoration) | — | images |
-| Photography Effects | [`fal-ai/image-apps-v2/photography-effects`](https://fal.ai/models/fal-ai/image-apps-v2/photography-effects) | — | images |
-| PhotoMaker | [`fal-ai/photomaker`](https://fal.ai/models/fal-ai/photomaker) | — | images |
-| Pixelcut Background Remover | [`pixelcut/background-removal`](https://fal.ai/models/pixelcut/background-removal) | Pixelcut | image |
-| Playground v2.5 | [`fal-ai/playground-v25/image-to-image`](https://fal.ai/models/fal-ai/playground-v25/image-to-image) | — | images |
-| Playground v2.5 | [`fal-ai/playground-v25/inpainting`](https://fal.ai/models/fal-ai/playground-v25/inpainting) | — | images |
-| Portrait Enhance | [`fal-ai/image-apps-v2/portrait-enhance`](https://fal.ai/models/fal-ai/image-apps-v2/portrait-enhance) | — | images |
-| Post Processing | [`fal-ai/post-processing`](https://fal.ai/models/fal-ai/post-processing) | — | images |
-| Post Processing Blur | [`fal-ai/post-processing/blur`](https://fal.ai/models/fal-ai/post-processing/blur) | — | images |
-| Post Processing Chromatic Aberration | [`fal-ai/post-processing/chromatic-aberration`](https://fal.ai/models/fal-ai/post-processing/chromatic-aberration) | — | images |
-| Post Processing Color Correction | [`fal-ai/post-processing/color-correction`](https://fal.ai/models/fal-ai/post-processing/color-correction) | — | images |
-| Post Processing Color Tint | [`fal-ai/post-processing/color-tint`](https://fal.ai/models/fal-ai/post-processing/color-tint) | — | images |
-| Post Processing Desaturate | [`fal-ai/post-processing/desaturate`](https://fal.ai/models/fal-ai/post-processing/desaturate) | — | images |
-| Post Processing Dissolve | [`fal-ai/post-processing/dissolve`](https://fal.ai/models/fal-ai/post-processing/dissolve) | — | images |
-| Post Processing Dodge Burn | [`fal-ai/post-processing/dodge-burn`](https://fal.ai/models/fal-ai/post-processing/dodge-burn) | — | images |
-| Post Processing Grain | [`fal-ai/post-processing/grain`](https://fal.ai/models/fal-ai/post-processing/grain) | — | images |
-| Post Processing Parabolize | [`fal-ai/post-processing/parabolize`](https://fal.ai/models/fal-ai/post-processing/parabolize) | — | images |
-| Post Processing Sharpen | [`fal-ai/post-processing/sharpen`](https://fal.ai/models/fal-ai/post-processing/sharpen) | — | images |
-| Post Processing Solarize | [`fal-ai/post-processing/solarize`](https://fal.ai/models/fal-ai/post-processing/solarize) | — | images |
-| Post Processing Vignette | [`fal-ai/post-processing/vignette`](https://fal.ai/models/fal-ai/post-processing/vignette) | — | images |
-| Product Holding | [`fal-ai/image-apps-v2/product-holding`](https://fal.ai/models/fal-ai/image-apps-v2/product-holding) | — | images |
-| Product Photography | [`fal-ai/image-apps-v2/product-photography`](https://fal.ai/models/fal-ai/image-apps-v2/product-photography) | — | images |
-| PuLID | [`fal-ai/pulid`](https://fal.ai/models/fal-ai/pulid) | — | images |
-| PuLID Flux | [`fal-ai/flux-pulid`](https://fal.ai/models/fal-ai/flux-pulid) | Black Forest Labs | images |
-| Qwen Image | [`fal-ai/qwen-image/image-to-image`](https://fal.ai/models/fal-ai/qwen-image/image-to-image) | Alibaba | images |
-| Qwen Image 2 | [`fal-ai/qwen-image-2/edit`](https://fal.ai/models/fal-ai/qwen-image-2/edit) | Alibaba | images |
-| Qwen Image 2 | [`fal-ai/qwen-image-2/pro/edit`](https://fal.ai/models/fal-ai/qwen-image-2/pro/edit) | Alibaba | images |
-| Qwen Image Edit | [`fal-ai/qwen-image-edit`](https://fal.ai/models/fal-ai/qwen-image-edit) | Alibaba | images |
-| Qwen Image Edit | [`fal-ai/qwen-image-edit/image-to-image`](https://fal.ai/models/fal-ai/qwen-image-edit/image-to-image) | Alibaba | images |
-| Qwen Image Edit | [`fal-ai/qwen-image-edit/inpaint`](https://fal.ai/models/fal-ai/qwen-image-edit/inpaint) | Alibaba | images |
-| Qwen Image Edit 2509 | [`fal-ai/qwen-image-edit-2509`](https://fal.ai/models/fal-ai/qwen-image-edit-2509) | Alibaba | images |
-| Qwen Image Edit 2509 Lora | [`fal-ai/qwen-image-edit-2509-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/add-background`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/add-background) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/face-to-full-portrait) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/group-photo`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/group-photo) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/integrate-product`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/integrate-product) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/lighting-restoration`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/lighting-restoration) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/multiple-angles) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/next-scene`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/next-scene) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/remove-element`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/remove-element) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/remove-lighting`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/remove-lighting) | Alibaba | images |
-| Qwen Image Edit 2509 Lora Gallery | [`fal-ai/qwen-image-edit-2509-lora-gallery/shirt-design`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-lora-gallery/shirt-design) | Alibaba | images |
-| Qwen Image Edit 2511 | [`fal-ai/qwen-image-edit-2511`](https://fal.ai/models/fal-ai/qwen-image-edit-2511) | Alibaba | images |
-| Qwen Image Edit 2511 | [`fal-ai/qwen-image-edit-2511/lora`](https://fal.ai/models/fal-ai/qwen-image-edit-2511/lora) | Alibaba | images |
-| Qwen Image Edit 2511 Multiple Angles | [`fal-ai/qwen-image-edit-2511-multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-2511-multiple-angles) | Alibaba | images |
-| Qwen Image Edit Lora | [`fal-ai/qwen-image-edit-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-lora) | Alibaba | images |
-| Qwen Image Edit Plus | [`fal-ai/qwen-image-edit-plus`](https://fal.ai/models/fal-ai/qwen-image-edit-plus) | Alibaba | images |
-| Qwen Image Edit Plus Lora | [`fal-ai/qwen-image-edit-plus-lora`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/add-background`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/add-background) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/face-to-full-portrait`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/face-to-full-portrait) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/group-photo`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/group-photo) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/integrate-product`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/integrate-product) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/lighting-restoration`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/lighting-restoration) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/multiple-angles`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/multiple-angles) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/next-scene`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/next-scene) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/remove-element`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/remove-element) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/remove-lighting`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/remove-lighting) | Alibaba | images |
-| Qwen Image Edit Plus Lora Gallery | [`fal-ai/qwen-image-edit-plus-lora-gallery/shirt-design`](https://fal.ai/models/fal-ai/qwen-image-edit-plus-lora-gallery/shirt-design) | Alibaba | images |
-| Qwen Image Layered | [`fal-ai/qwen-image-layered`](https://fal.ai/models/fal-ai/qwen-image-layered) | Alibaba | images |
-| Qwen Image Layered | [`fal-ai/qwen-image-layered/lora`](https://fal.ai/models/fal-ai/qwen-image-layered/lora) | Alibaba | images |
-| Qwen Image Max | [`fal-ai/qwen-image-max/edit`](https://fal.ai/models/fal-ai/qwen-image-max/edit) | Alibaba | images |
-| Recraft | [`fal-ai/recraft/vectorize`](https://fal.ai/models/fal-ai/recraft/vectorize) | Recraft | image |
-| Recraft Creative Upscale | [`fal-ai/recraft/upscale/creative`](https://fal.ai/models/fal-ai/recraft/upscale/creative) | Recraft | image |
-| Recraft Crisp Upscale | [`fal-ai/recraft/upscale/crisp`](https://fal.ai/models/fal-ai/recraft/upscale/crisp) | Recraft | image |
-| Recraft V3 | [`fal-ai/recraft/v3/image-to-image`](https://fal.ai/models/fal-ai/recraft/v3/image-to-image) | Recraft | images |
-| Relighting | [`fal-ai/image-apps-v2/relighting`](https://fal.ai/models/fal-ai/image-apps-v2/relighting) | — | images |
-| Rembg Enhance (Remove Background Enhance) | [`smoretalk-ai/rembg-enhance`](https://fal.ai/models/smoretalk-ai/rembg-enhance) | Smoretalk AI | image |
-| Remove Background | [`fal-ai/imageutils/rembg`](https://fal.ai/models/fal-ai/imageutils/rembg) | — | image |
-| Replace Background | [`bria/replace-background`](https://fal.ai/models/bria/replace-background) | Bria AI | json |
-| RIFE | [`fal-ai/rife`](https://fal.ai/models/fal-ai/rife) | — | images |
-| Sam 3 | [`fal-ai/sam-3/image-rle`](https://fal.ai/models/fal-ai/sam-3/image-rle) | — | json |
-| Sam 3 1 | [`fal-ai/sam-3-1/image`](https://fal.ai/models/fal-ai/sam-3-1/image) | — | image |
-| Sam 3 1 | [`fal-ai/sam-3-1/image-rle`](https://fal.ai/models/fal-ai/sam-3-1/image-rle) | — | json |
-| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union/image-to-image`](https://fal.ai/models/fal-ai/sdxl-controlnet-union/image-to-image) | — | images |
-| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union/inpainting`](https://fal.ai/models/fal-ai/sdxl-controlnet-union/inpainting) | — | images |
-| SeedVR2 | [`fal-ai/seedvr/upscale/image`](https://fal.ai/models/fal-ai/seedvr/upscale/image) | SeedVR | image |
-| SeedVR2 | [`fal-ai/seedvr/upscale/image/seamless`](https://fal.ai/models/fal-ai/seedvr/upscale/image/seamless) | SeedVR | image |
-| Segment Anything Model 2 | [`fal-ai/sam2/auto-segment`](https://fal.ai/models/fal-ai/sam2/auto-segment) | — | json |
-| Segment Anything Model 2 | [`fal-ai/sam2/image`](https://fal.ai/models/fal-ai/sam2/image) | — | image |
-| Segment Anything Model 3 | [`fal-ai/sam-3/image`](https://fal.ai/models/fal-ai/sam-3/image) | — | image |
-| Smart Resize | [`fal-ai/smart-resize`](https://fal.ai/models/fal-ai/smart-resize) | — | images |
-| Stable Diffusion V3 | [`fal-ai/stable-diffusion-v3-medium/image-to-image`](https://fal.ai/models/fal-ai/stable-diffusion-v3-medium/image-to-image) | Stability AI | images |
-| Stable Diffusion with LoRAs | [`fal-ai/lora/image-to-image`](https://fal.ai/models/fal-ai/lora/image-to-image) | — | images |
-| Stable Diffusion with LoRAs | [`fal-ai/lora/inpaint`](https://fal.ai/models/fal-ai/lora/inpaint) | — | images |
-| Stable Diffusion XL | [`fal-ai/fast-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-sdxl/image-to-image) | — | images |
-| Stable Diffusion XL | [`fal-ai/fast-sdxl/inpainting`](https://fal.ai/models/fal-ai/fast-sdxl/inpainting) | — | images |
-| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-lightning-sdxl/image-to-image) | — | images |
-| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl/inpainting`](https://fal.ai/models/fal-ai/fast-lightning-sdxl/inpainting) | — | images |
-| Stepx Edit2 | [`fal-ai/stepx-edit2`](https://fal.ai/models/fal-ai/stepx-edit2) | — | images |
-| Style Transfer | [`fal-ai/image-apps-v2/style-transfer`](https://fal.ai/models/fal-ai/image-apps-v2/style-transfer) | — | images |
-| Telestyle V2 Style Transfer | [`fal-ai/telestyle-v2`](https://fal.ai/models/fal-ai/telestyle-v2) | — | images |
-| Texture Transform | [`fal-ai/image-apps-v2/texture-transform`](https://fal.ai/models/fal-ai/image-apps-v2/texture-transform) | — | images |
-| Topaz | [`fal-ai/topaz/upscale/image`](https://fal.ai/models/fal-ai/topaz/upscale/image) | Topaz Labs | image |
-| try-on | [`fal-ai/cat-vton`](https://fal.ai/models/fal-ai/cat-vton) | — | image |
-| Uno | [`fal-ai/uno`](https://fal.ai/models/fal-ai/uno) | — | images |
-| Upscale | [`bria/upscale/creative`](https://fal.ai/models/bria/upscale/creative) | Bria AI | image |
-| Upscale Images | [`fal-ai/esrgan`](https://fal.ai/models/fal-ai/esrgan) | — | image |
-| Uso | [`fal-ai/uso`](https://fal.ai/models/fal-ai/uso) | — | images |
-| Vecglypher | [`fal-ai/vecglypher/image-to-svg`](https://fal.ai/models/fal-ai/vecglypher/image-to-svg) | — | image |
-| Vidu | [`fal-ai/vidu/q2/reference-to-image`](https://fal.ai/models/fal-ai/vidu/q2/reference-to-image) | Vidu | image |
-| Vidu | [`fal-ai/vidu/reference-to-image`](https://fal.ai/models/fal-ai/vidu/reference-to-image) | Vidu | image |
-| Virtual Try-on | [`fal-ai/image-apps-v2/virtual-try-on`](https://fal.ai/models/fal-ai/image-apps-v2/virtual-try-on) | — | images |
-| Wan | [`fal-ai/wan/v2.2-a14b/image-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-image) | Alibaba | image |
-| Wan | [`fal-ai/wan/v2.7/edit`](https://fal.ai/models/fal-ai/wan/v2.7/edit) | Alibaba | images |
-| Wan | [`fal-ai/wan/v2.7/pro/edit`](https://fal.ai/models/fal-ai/wan/v2.7/pro/edit) | Alibaba | images |
-| Wan 2.5 Image to Image | [`fal-ai/wan-25-preview/image-to-image`](https://fal.ai/models/fal-ai/wan-25-preview/image-to-image) | Alibaba | images |
-| Wan v2.6 Image to Image | [`wan/v2.6/image-to-image`](https://fal.ai/models/wan/v2.6/image-to-image) | Alibaba | images |
-| Workflow Utilities Extract Nth Frame | [`fal-ai/workflow-utilities/extract-nth-frame`](https://fal.ai/models/fal-ai/workflow-utilities/extract-nth-frame) | — | images |
-| Z Image Turbo Controlnet | [`fal-ai/z-image/turbo/controlnet`](https://fal.ai/models/fal-ai/z-image/turbo/controlnet) | Alibaba | images |
-| Z Image Turbo Controlnet Lora | [`fal-ai/z-image/turbo/controlnet/lora`](https://fal.ai/models/fal-ai/z-image/turbo/controlnet/lora) | Alibaba | images |
-| Z Image Turbo Image To Image | [`fal-ai/z-image/turbo/image-to-image`](https://fal.ai/models/fal-ai/z-image/turbo/image-to-image) | Alibaba | images |
-| Z Image Turbo Image To Image Lora | [`fal-ai/z-image/turbo/image-to-image/lora`](https://fal.ai/models/fal-ai/z-image/turbo/image-to-image/lora) | Alibaba | images |
-| Z Image Turbo Inpaint | [`fal-ai/z-image/turbo/inpaint`](https://fal.ai/models/fal-ai/z-image/turbo/inpaint) | Alibaba | images |
-| Z Image Turbo Inpaint Lora | [`fal-ai/z-image/turbo/inpaint/lora`](https://fal.ai/models/fal-ai/z-image/turbo/inpaint/lora) | Alibaba | images |
-
-
-
-
-image-to-video — 193 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| AI Avatar Multi | [`fal-ai/ai-avatar/multi`](https://fal.ai/models/fal-ai/ai-avatar/multi) | — | video |
-| AI Avatar Multi Text | [`fal-ai/ai-avatar/multi-text`](https://fal.ai/models/fal-ai/ai-avatar/multi-text) | — | video |
-| AI Avatar Single Text | [`fal-ai/ai-avatar/single-text`](https://fal.ai/models/fal-ai/ai-avatar/single-text) | — | video |
-| AMT Frame Interpolation | [`fal-ai/amt-interpolation/frame-interpolation`](https://fal.ai/models/fal-ai/amt-interpolation/frame-interpolation) | — | video |
-| Bernini-R Reference to Video | [`fal-ai/bernini-r/reference-to-video`](https://fal.ai/models/fal-ai/bernini-r/reference-to-video) | Bytedance | video |
-| Bytedance Omnihuman V1.5 | [`fal-ai/bytedance/omnihuman/v1.5`](https://fal.ai/models/fal-ai/bytedance/omnihuman/v1.5) | Bytedance | video |
-| Bytedance Seedance V1 Pro Fast Image To Video | [`fal-ai/bytedance/seedance/v1/pro/fast/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/fast/image-to-video) | Bytedance | video |
-| Bytedance Seedance V1.5 Pro Image To Video | [`fal-ai/bytedance/seedance/v1.5/pro/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1.5/pro/image-to-video) | Bytedance | video |
-| CogVideoX-5B | [`fal-ai/cogvideox-5b/image-to-video`](https://fal.ai/models/fal-ai/cogvideox-5b/image-to-video) | — | video |
-| Cosmos 3 Super Image to Video | [`nvidia/cosmos-3-super/image-to-video`](https://fal.ai/models/nvidia/cosmos-3-super/image-to-video) | NVIDIA | video |
-| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/image-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/image-to-video) | NVIDIA | video |
-| Creatify Aurora | [`fal-ai/creatify/aurora`](https://fal.ai/models/fal-ai/creatify/aurora) | Creatify AI | video |
-| Davinci Magihuman | [`fal-ai/davinci-magihuman`](https://fal.ai/models/fal-ai/davinci-magihuman) | — | video |
-| Fabric 1.0 | [`veed/fabric-1.0`](https://fal.ai/models/veed/fabric-1.0) | Veed | video |
-| Fabric 1.0 Fast | [`veed/fabric-1.0/fast`](https://fal.ai/models/veed/fabric-1.0/fast) | Veed | video |
-| Ffmpeg Api Images to Video | [`fal-ai/ffmpeg-api/images-to-video`](https://fal.ai/models/fal-ai/ffmpeg-api/images-to-video) | — | video |
-| Flashhead | [`fal-ai/flashhead`](https://fal.ai/models/fal-ai/flashhead) | Soul AI Lab | video |
-| Framepack | [`fal-ai/framepack`](https://fal.ai/models/fal-ai/framepack) | — | video |
-| Framepack | [`fal-ai/framepack/flf2v`](https://fal.ai/models/fal-ai/framepack/flf2v) | — | video |
-| Framepack F1 | [`fal-ai/framepack/f1`](https://fal.ai/models/fal-ai/framepack/f1) | — | video |
-| Gemini Omni Flash | [`google/gemini-omni-flash/image-to-video`](https://fal.ai/models/google/gemini-omni-flash/image-to-video) | Google | video |
-| Gemini Omni Flash | [`google/gemini-omni-flash/reference-to-video`](https://fal.ai/models/google/gemini-omni-flash/reference-to-video) | Google | video |
-| Grok Imagine Reference to Video | [`xai/grok-imagine-video/reference-to-video`](https://fal.ai/models/xai/grok-imagine-video/reference-to-video) | xAI | video |
-| Grok Imagine Video | [`xai/grok-imagine-video/image-to-video`](https://fal.ai/models/xai/grok-imagine-video/image-to-video) | xAI | video |
-| Grok Imagine Video 1.5 | [`xai/grok-imagine-video/v1.5/image-to-video`](https://fal.ai/models/xai/grok-imagine-video/v1.5/image-to-video) | xAI | video |
-| Happy Horse | [`alibaba/happy-horse/image-to-video`](https://fal.ai/models/alibaba/happy-horse/image-to-video) | Alibaba | video |
-| Happy Horse | [`alibaba/happy-horse/reference-to-video`](https://fal.ai/models/alibaba/happy-horse/reference-to-video) | Alibaba | video |
-| Happy Horse 1.1 Image to Video | [`alibaba/happy-horse/v1.1/image-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/image-to-video) | Alibaba | video |
-| Happy Horse 1.1 Reference to Video | [`alibaba/happy-horse/v1.1/reference-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/reference-to-video) | Alibaba | video |
-| Heygen | [`fal-ai/heygen/avatar4/image-to-video`](https://fal.ai/models/fal-ai/heygen/avatar4/image-to-video) | Heygen | video |
-| High Quality Stable Video Diffusion | [`fal-ai/stable-video`](https://fal.ai/models/fal-ai/stable-video) | Stability AI | video |
-| Hunyuan Video Image-to-Video Inference | [`fal-ai/hunyuan-video-image-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-image-to-video) | Tencent | video |
-| Hunyuan Video Image-to-Video LoRA Inference | [`fal-ai/hunyuan-video-img2vid-lora`](https://fal.ai/models/fal-ai/hunyuan-video-img2vid-lora) | Tencent | video |
-| Hunyuan Video V1.5 | [`fal-ai/hunyuan-video-v1.5/image-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-v1.5/image-to-video) | Tencent | video |
-| Kandinsky5 Pro | [`fal-ai/kandinsky5-pro/image-to-video`](https://fal.ai/models/fal-ai/kandinsky5-pro/image-to-video) | Kandinsky | video |
-| Kling 1.0 | [`fal-ai/kling-video/v1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1/standard/image-to-video) | Kling | video |
-| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/image-to-video) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/image-to-video) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/image-to-video) | Kling | video |
-| Kling 1.6 Elements | [`fal-ai/kling-video/v1.6/pro/elements`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/elements) | Kling | video |
-| Kling 1.6 Elements | [`fal-ai/kling-video/v1.6/standard/elements`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/elements) | Kling | video |
-| Kling 2.0 Master | [`fal-ai/kling-video/v2/master/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2/master/image-to-video) | Kling | video |
-| Kling 2.1 (pro) | [`fal-ai/kling-video/v2.1/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/pro/image-to-video) | Kling | video |
-| Kling 2.1 (standard) | [`fal-ai/kling-video/v2.1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/standard/image-to-video) | Kling | video |
-| Kling 2.1 Master | [`fal-ai/kling-video/v2.1/master/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/master/image-to-video) | Kling | video |
-| Kling AI Avatar | [`fal-ai/kling-video/v1/standard/ai-avatar`](https://fal.ai/models/fal-ai/kling-video/v1/standard/ai-avatar) | Kling | video |
-| Kling AI Avatar Pro | [`fal-ai/kling-video/v1/pro/ai-avatar`](https://fal.ai/models/fal-ai/kling-video/v1/pro/ai-avatar) | Kling | video |
-| Kling AI Avatar v2 Pro | [`fal-ai/kling-video/ai-avatar/v2/pro`](https://fal.ai/models/fal-ai/kling-video/ai-avatar/v2/pro) | Kling | video |
-| Kling AI Avatar v2 Standard | [`fal-ai/kling-video/ai-avatar/v2/standard`](https://fal.ai/models/fal-ai/kling-video/ai-avatar/v2/standard) | Kling | video |
-| Kling O1 First Frame Last Frame to Video [Pro] | [`fal-ai/kling-video/o1/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/image-to-video) | Kling | video |
-| Kling O1 First Frame Last Frame to Video [Standard] | [`fal-ai/kling-video/o1/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/standard/image-to-video) | Kling | video |
-| Kling O1 Reference Image to Video [Pro] | [`fal-ai/kling-video/o1/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/reference-to-video) | Kling | video |
-| Kling O1 Reference Image to Video [Standard] | [`fal-ai/kling-video/o1/standard/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o1/standard/reference-to-video) | Kling | video |
-| Kling O3 Image to Video [Pro] | [`fal-ai/kling-video/o3/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/image-to-video) | Kling | video |
-| Kling O3 Image to Video [Pro] | [`fal-ai/kling-video/o3/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/image-to-video) | Kling | video |
-| Kling O3 Reference to Video [Pro] | [`fal-ai/kling-video/o3/pro/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/reference-to-video) | Kling | video |
-| Kling O3 Reference to Video [Standard] | [`fal-ai/kling-video/o3/standard/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/reference-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/o3/4k/image-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/image-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/o3/4k/reference-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/reference-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/v2.5-turbo/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/pro/image-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/v2.5-turbo/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/standard/image-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/v3/4k/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/4k/image-to-video) | Kling | video |
-| Kling Video v2.6 Image to Video | [`fal-ai/kling-video/v2.6/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/image-to-video) | Kling | video |
-| Kling Video v3 Image to Video [Pro] | [`fal-ai/kling-video/v3/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/pro/image-to-video) | Kling | video |
-| Kling Video v3 Image to Video [Standard] | [`fal-ai/kling-video/v3/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/standard/image-to-video) | Kling | video |
-| Kling Video V3 Standard Turbo Image to Video | [`fal-ai/kling-video/v3/turbo/standard/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/standard/image-to-video) | Kling | video |
-| Kling Video V3 Turbo Pro Image to Video | [`fal-ai/kling-video/v3/turbo/pro/image-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/pro/image-to-video) | Kling | video |
-| Live Portrait | [`fal-ai/live-portrait`](https://fal.ai/models/fal-ai/live-portrait) | — | video |
-| LongCat Video | [`fal-ai/longcat-video/image-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/image-to-video/480p) | — | video |
-| LongCat Video | [`fal-ai/longcat-video/image-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/image-to-video/720p) | — | video |
-| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/image-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/distilled/image-to-video/480p) | — | video |
-| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/image-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/distilled/image-to-video/720p) | — | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/image-to-video) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/image-to-video/lora) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/ingredient`](https://fal.ai/models/fal-ai/ltx-2.3-quality/ingredient) | Lightricks | video |
-| LTX 2.3 Video Fast | [`fal-ai/ltx-2.3/image-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2.3/image-to-video/fast) | Lightricks | video |
-| LTX 2.3 Video Pro | [`fal-ai/ltx-2.3/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/image-to-video) | Lightricks | video |
-| LTX Video (preview) | [`fal-ai/ltx-video/image-to-video`](https://fal.ai/models/fal-ai/ltx-video/image-to-video) | Lightricks | video |
-| LTX Video 2.0 Fast | [`fal-ai/ltx-2/image-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2/image-to-video/fast) | Lightricks | video |
-| LTX Video 2.0 Pro | [`fal-ai/ltx-2/image-to-video`](https://fal.ai/models/fal-ai/ltx-2/image-to-video) | Lightricks | video |
-| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/image-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/image-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/image-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/image-to-video/lora) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/image-to-video) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/image-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/image-to-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/image-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/image-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/image-to-video) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/image-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/image-to-video/lora) | Lightricks | video |
-| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/image-to-video`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/image-to-video) | Lightricks | video |
-| Luma Ray 2 (Image to Video) | [`fal-ai/luma-dream-machine/ray-2/image-to-video`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/image-to-video) | Luma AI | video |
-| Luma Ray 2 Flash (Image to Video) | [`fal-ai/luma-dream-machine/ray-2-flash/image-to-video`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/image-to-video) | Luma AI | video |
-| Luma Ray 3.2 Image to Video | [`luma/agent/ray/v3.2/image-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/image-to-video) | Luma AI | video |
-| Lynx | [`bytedance/lynx`](https://fal.ai/models/bytedance/lynx) | Bytedance | video |
-| MAGI-1 (Distilled) | [`fal-ai/magi-distilled/image-to-video`](https://fal.ai/models/fal-ai/magi-distilled/image-to-video) | — | video |
-| Marey Realism V1.5 | [`moonvalley/marey/i2v`](https://fal.ai/models/moonvalley/marey/i2v) | Moonvalley | video |
-| Minimax | [`fal-ai/minimax/hailuo-02-fast/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02-fast/image-to-video) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01-live/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01-live/image-to-video) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01/image-to-video) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 Director - Image to Video | [`fal-ai/minimax/video-01-director/image-to-video`](https://fal.ai/models/fal-ai/minimax/video-01-director/image-to-video) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 Subject Reference | [`fal-ai/minimax/video-01-subject-reference`](https://fal.ai/models/fal-ai/minimax/video-01-subject-reference) | Minimax | video |
-| MiniMax Hailuo 02 [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-02/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/pro/image-to-video) | Minimax | video |
-| MiniMax Hailuo 02 [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-02/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/standard/image-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-2.3/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/pro/image-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-2.3/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/standard/image-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 Fast [Pro] (Image to Video) | [`fal-ai/minimax/hailuo-2.3-fast/pro/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3-fast/pro/image-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 Fast [Standard] (Image to Video) | [`fal-ai/minimax/hailuo-2.3-fast/standard/image-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3-fast/standard/image-to-video) | Minimax | video |
-| MuseTalk | [`fal-ai/musetalk`](https://fal.ai/models/fal-ai/musetalk) | — | video |
-| OmniHuman | [`fal-ai/bytedance/omnihuman`](https://fal.ai/models/fal-ai/bytedance/omnihuman) | Bytedance | video |
-| Ovi | [`fal-ai/ovi/image-to-video`](https://fal.ai/models/fal-ai/ovi/image-to-video) | — | video |
-| Pika | [`fal-ai/pika/v2.2/pikaframes`](https://fal.ai/models/fal-ai/pika/v2.2/pikaframes) | Pika | video |
-| Pika Effects (v1.5) | [`fal-ai/pika/v1.5/pikaffects`](https://fal.ai/models/fal-ai/pika/v1.5/pikaffects) | Pika | video |
-| Pika Image to Video (v2.1) | [`fal-ai/pika/v2.1/image-to-video`](https://fal.ai/models/fal-ai/pika/v2.1/image-to-video) | Pika | video |
-| Pika Image to Video (v2.2) | [`fal-ai/pika/v2.2/image-to-video`](https://fal.ai/models/fal-ai/pika/v2.2/image-to-video) | Pika | video |
-| Pika Image to Video Turbo (v2) | [`fal-ai/pika/v2/turbo/image-to-video`](https://fal.ai/models/fal-ai/pika/v2/turbo/image-to-video) | Pika | video |
-| Pika Scenes (v2.2) | [`fal-ai/pika/v2.2/pikascenes`](https://fal.ai/models/fal-ai/pika/v2.2/pikascenes) | Pika | video |
-| PixVerse C1 Image To Video | [`fal-ai/pixverse/c1/image-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/image-to-video) | Pixverse | video |
-| PixVerse C1 Reference To Video | [`fal-ai/pixverse/c1/reference-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/reference-to-video) | Pixverse | video |
-| PixVerse C1 Transition | [`fal-ai/pixverse/c1/transition`](https://fal.ai/models/fal-ai/pixverse/c1/transition) | Pixverse | video |
-| PixVerse Swap | [`fal-ai/pixverse/swap`](https://fal.ai/models/fal-ai/pixverse/swap) | Pixverse | video |
-| PixVerse V3.5 Effects | [`fal-ai/pixverse/v3.5/effects`](https://fal.ai/models/fal-ai/pixverse/v3.5/effects) | Pixverse | video |
-| PixVerse V3.5 Image To Video | [`fal-ai/pixverse/v3.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v3.5/image-to-video) | Pixverse | video |
-| PixVerse V3.5 Image To Video Fast | [`fal-ai/pixverse/v3.5/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v3.5/image-to-video/fast) | Pixverse | video |
-| PixVerse V3.5 Transition | [`fal-ai/pixverse/v3.5/transition`](https://fal.ai/models/fal-ai/pixverse/v3.5/transition) | Pixverse | video |
-| PixVerse V4 Effects | [`fal-ai/pixverse/v4/effects`](https://fal.ai/models/fal-ai/pixverse/v4/effects) | Pixverse | video |
-| PixVerse V4 Image To Video | [`fal-ai/pixverse/v4/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v4/image-to-video) | Pixverse | video |
-| PixVerse V4 Image To Video Fast | [`fal-ai/pixverse/v4/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4/image-to-video/fast) | Pixverse | video |
-| PixVerse V4.5 Effects | [`fal-ai/pixverse/v4.5/effects`](https://fal.ai/models/fal-ai/pixverse/v4.5/effects) | Pixverse | video |
-| PixVerse V4.5 Image To Video | [`fal-ai/pixverse/v4.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v4.5/image-to-video) | Pixverse | video |
-| PixVerse V4.5 Image To Video Fast | [`fal-ai/pixverse/v4.5/image-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4.5/image-to-video/fast) | Pixverse | video |
-| PixVerse V4.5 Transition | [`fal-ai/pixverse/v4.5/transition`](https://fal.ai/models/fal-ai/pixverse/v4.5/transition) | Pixverse | video |
-| PixVerse V5 Effects | [`fal-ai/pixverse/v5/effects`](https://fal.ai/models/fal-ai/pixverse/v5/effects) | Pixverse | video |
-| PixVerse V5 Image To Video | [`fal-ai/pixverse/v5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5/image-to-video) | Pixverse | video |
-| PixVerse V5 Transition | [`fal-ai/pixverse/v5/transition`](https://fal.ai/models/fal-ai/pixverse/v5/transition) | Pixverse | video |
-| PixVerse V5.5 Effects | [`fal-ai/pixverse/v5.5/effects`](https://fal.ai/models/fal-ai/pixverse/v5.5/effects) | Pixverse | video |
-| PixVerse V5.5 Image To Video | [`fal-ai/pixverse/v5.5/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.5/image-to-video) | Pixverse | video |
-| PixVerse V5.5 Transition | [`fal-ai/pixverse/v5.5/transition`](https://fal.ai/models/fal-ai/pixverse/v5.5/transition) | Pixverse | video |
-| PixVerse V5.6 Image To Video | [`fal-ai/pixverse/v5.6/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.6/image-to-video) | Pixverse | video |
-| PixVerse V5.6 Transition | [`fal-ai/pixverse/v5.6/transition`](https://fal.ai/models/fal-ai/pixverse/v5.6/transition) | Pixverse | video |
-| PixVerse V6 Image To Video | [`fal-ai/pixverse/v6/image-to-video`](https://fal.ai/models/fal-ai/pixverse/v6/image-to-video) | Pixverse | video |
-| PixVerse V6 Transition | [`fal-ai/pixverse/v6/transition`](https://fal.ai/models/fal-ai/pixverse/v6/transition) | Pixverse | video |
-| Sad Talker | [`fal-ai/sadtalker`](https://fal.ai/models/fal-ai/sadtalker) | — | video |
-| Sad Talker | [`fal-ai/sadtalker/reference`](https://fal.ai/models/fal-ai/sadtalker/reference) | — | video |
-| Seedance 1.0 Pro | [`fal-ai/bytedance/seedance/v1/pro/image-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/image-to-video) | Bytedance | video |
-| Seedance 2 Image to Video | [`bytedance/seedance-2.0/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/image-to-video) | Bytedance | video |
-| Seedance 2 Reference to Video | [`bytedance/seedance-2.0/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/reference-to-video) | Bytedance | video |
-| Seedance 2.0 Fast Image to Video | [`bytedance/seedance-2.0/fast/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/image-to-video) | Bytedance | video |
-| Seedance 2.0 Fast Reference to Video | [`bytedance/seedance-2.0/fast/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/reference-to-video) | Bytedance | video |
-| Seedance 2.0 Mini | [`bytedance/seedance-2.0/mini/reference-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/reference-to-video) | Bytedance | video |
-| Seedance 2.0 Mini Image to Video | [`bytedance/seedance-2.0/mini/image-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/image-to-video) | Bytedance | video |
-| Sora 2 | [`fal-ai/sora-2/characters`](https://fal.ai/models/fal-ai/sora-2/characters) | OpenAI | text |
-| Sora 2 | [`fal-ai/sora-2/image-to-video`](https://fal.ai/models/fal-ai/sora-2/image-to-video) | OpenAI | video |
-| Sora 2 | [`fal-ai/sora-2/image-to-video/pro`](https://fal.ai/models/fal-ai/sora-2/image-to-video/pro) | OpenAI | video |
-| Stable Video Diffusion Turbo | [`fal-ai/fast-svd-lcm`](https://fal.ai/models/fal-ai/fast-svd-lcm) | — | video |
-| sync-3 Avatar Image to Video | [`fal-ai/sync-lipsync/v3/image-to-video`](https://fal.ai/models/fal-ai/sync-lipsync/v3/image-to-video) | Syncso | video |
-| V2.6 | [`wan/v2.6/image-to-video/flash`](https://fal.ai/models/wan/v2.6/image-to-video/flash) | Alibaba | video |
-| Veo 2 (Image to Video) | [`fal-ai/veo2/image-to-video`](https://fal.ai/models/fal-ai/veo2/image-to-video) | Google | video |
-| Veo 3 Fast [Image to Video] | [`fal-ai/veo3/fast/image-to-video`](https://fal.ai/models/fal-ai/veo3/fast/image-to-video) | Google | video |
-| Veo 3.1 | [`fal-ai/veo3.1/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/first-last-frame-to-video) | Google | video |
-| Veo 3.1 | [`fal-ai/veo3.1/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/image-to-video) | Google | video |
-| Veo 3.1 | [`fal-ai/veo3.1/reference-to-video`](https://fal.ai/models/fal-ai/veo3.1/reference-to-video) | Google | video |
-| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/first-last-frame-to-video) | Google | video |
-| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/image-to-video) | Google | video |
-| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/reference-to-video`](https://fal.ai/models/fal-ai/veo3.1/fast/reference-to-video) | — | video |
-| Veo3 | [`fal-ai/veo3/image-to-video`](https://fal.ai/models/fal-ai/veo3/image-to-video) | Google | video |
-| Veo3.1 Lite FLF | [`fal-ai/veo3.1/lite/first-last-frame-to-video`](https://fal.ai/models/fal-ai/veo3.1/lite/first-last-frame-to-video) | Google | video |
-| Veo3.1 Lite Image to Video | [`fal-ai/veo3.1/lite/image-to-video`](https://fal.ai/models/fal-ai/veo3.1/lite/image-to-video) | Google | video |
-| Vidu | [`fal-ai/vidu/q1/reference-to-video`](https://fal.ai/models/fal-ai/vidu/q1/reference-to-video) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q2/image-to-video/pro`](https://fal.ai/models/fal-ai/vidu/q2/image-to-video/pro) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q2/image-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q2/image-to-video/turbo) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q2/reference-to-video/pro`](https://fal.ai/models/fal-ai/vidu/q2/reference-to-video/pro) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q3/image-to-video`](https://fal.ai/models/fal-ai/vidu/q3/image-to-video) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q3/image-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q3/image-to-video/turbo) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q3/reference-to-video/mix`](https://fal.ai/models/fal-ai/vidu/q3/reference-to-video/mix) | Vidu | video |
-| Vidu Image to Video | [`fal-ai/vidu/image-to-video`](https://fal.ai/models/fal-ai/vidu/image-to-video) | Vidu | video |
-| Vidu Image to Video | [`fal-ai/vidu/q1/image-to-video`](https://fal.ai/models/fal-ai/vidu/q1/image-to-video) | Vidu | video |
-| Vidu Reference to Video | [`fal-ai/vidu/reference-to-video`](https://fal.ai/models/fal-ai/vidu/reference-to-video) | Vidu | video |
-| Vidu Start End to Video | [`fal-ai/vidu/q1/start-end-to-video`](https://fal.ai/models/fal-ai/vidu/q1/start-end-to-video) | Vidu | video |
-| Vidu Start-End to Video | [`fal-ai/vidu/start-end-to-video`](https://fal.ai/models/fal-ai/vidu/start-end-to-video) | Vidu | video |
-| Vidu Template to Video | [`fal-ai/vidu/template-to-video`](https://fal.ai/models/fal-ai/vidu/template-to-video) | Vidu | video |
-| Wan | [`fal-ai/wan/v2.2-a14b/image-to-video/turbo`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video/turbo) | Alibaba | video |
-| Wan | [`fal-ai/wan/v2.7/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/image-to-video) | Alibaba | video |
-| Wan 2.5 Image to Video | [`fal-ai/wan-25-preview/image-to-video`](https://fal.ai/models/fal-ai/wan-25-preview/image-to-video) | Alibaba | video |
-| Wan 2.7 Reference to Video | [`fal-ai/wan/v2.7/reference-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/reference-to-video) | Alibaba | video |
-| Wan Effects | [`fal-ai/wan-effects`](https://fal.ai/models/fal-ai/wan-effects) | Alibaba | video |
-| Wan v2.2 5B | [`fal-ai/wan/v2.2-5b/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-5b/image-to-video) | Alibaba | video |
-| Wan v2.2 A14B | [`fal-ai/wan/v2.2-a14b/image-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video) | Alibaba | video |
-| Wan v2.2 A14B Image-to-Video A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/image-to-video/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/image-to-video/lora) | Alibaba | video |
-| Wan v2.6 Image to Video | [`wan/v2.6/image-to-video`](https://fal.ai/models/wan/v2.6/image-to-video) | Alibaba | video |
-| Wan-2.1 First-Last-Frame-to-Video | [`fal-ai/wan-flf2v`](https://fal.ai/models/fal-ai/wan-flf2v) | Alibaba | video |
-| Wan-2.1 Image-to-Video | [`fal-ai/wan-i2v`](https://fal.ai/models/fal-ai/wan-i2v) | Alibaba | video |
-| Wan-2.1 Image-to-Video with LoRAs | [`fal-ai/wan-i2v-lora`](https://fal.ai/models/fal-ai/wan-i2v-lora) | Alibaba | video |
-| Wan-2.1 Pro Image-to-Video | [`fal-ai/wan-pro/image-to-video`](https://fal.ai/models/fal-ai/wan-pro/image-to-video) | Alibaba | video |
-
-
-
-
-text-to-image — 189 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| AuraFlow | [`fal-ai/aura-flow`](https://fal.ai/models/fal-ai/aura-flow) | — | images |
-| Bagel | [`fal-ai/bagel`](https://fal.ai/models/fal-ai/bagel) | — | images |
-| Bitdance | [`fal-ai/bitdance`](https://fal.ai/models/fal-ai/bitdance) | — | images |
-| Boogu Image | [`fal-ai/boogu-image`](https://fal.ai/models/fal-ai/boogu-image) | — | images |
-| Bria Text-to-Image Base | [`fal-ai/bria/text-to-image/base`](https://fal.ai/models/fal-ai/bria/text-to-image/base) | Bria AI | images |
-| Bria Text-to-Image Fast | [`fal-ai/bria/text-to-image/fast`](https://fal.ai/models/fal-ai/bria/text-to-image/fast) | Bria AI | images |
-| Bria Text-to-Image HD | [`fal-ai/bria/text-to-image/hd`](https://fal.ai/models/fal-ai/bria/text-to-image/hd) | Bria AI | images |
-| Bytedance Dreamina V3.1 Text To Image | [`fal-ai/bytedance/dreamina/v3.1/text-to-image`](https://fal.ai/models/fal-ai/bytedance/dreamina/v3.1/text-to-image) | Bytedance | images |
-| Bytedance Seedream V4 Text To Image | [`fal-ai/bytedance/seedream/v4/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v4/text-to-image) | Bytedance | images |
-| Bytedance Seedream V4.5 Text To Image | [`fal-ai/bytedance/seedream/v4.5/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v4.5/text-to-image) | Bytedance | images |
-| Bytedance Seedream V5 Lite Text To Image | [`fal-ai/bytedance/seedream/v5/lite/text-to-image`](https://fal.ai/models/fal-ai/bytedance/seedream/v5/lite/text-to-image) | Bytedance | images |
-| CogView | [`fal-ai/cogview4`](https://fal.ai/models/fal-ai/cogview4) | — | images |
-| ControlNet SDXL | [`fal-ai/fast-sdxl-controlnet-canny`](https://fal.ai/models/fal-ai/fast-sdxl-controlnet-canny) | — | images |
-| Cosmos 3 Super | [`nvidia/cosmos-3-super/text-to-image`](https://fal.ai/models/nvidia/cosmos-3-super/text-to-image) | NVIDIA | images |
-| DeepSeek Janus-Pro | [`fal-ai/janus`](https://fal.ai/models/fal-ai/janus) | — | images |
-| Dreamshaper | [`fal-ai/dreamshaper`](https://fal.ai/models/fal-ai/dreamshaper) | — | images |
-| Emu 3.5 Image | [`fal-ai/emu-3.5-image/text-to-image`](https://fal.ai/models/fal-ai/emu-3.5-image/text-to-image) | — | images |
-| Ernie Image | [`fal-ai/ernie-image`](https://fal.ai/models/fal-ai/ernie-image) | Baidu | images |
-| Ernie Image Lora | [`fal-ai/ernie-image/lora`](https://fal.ai/models/fal-ai/ernie-image/lora) | Baidu | images |
-| Ernie Image Lora Turbo | [`fal-ai/ernie-image/lora/turbo`](https://fal.ai/models/fal-ai/ernie-image/lora/turbo) | Baidu | images |
-| Ernie Image Turbo | [`fal-ai/ernie-image/turbo`](https://fal.ai/models/fal-ai/ernie-image/turbo) | Baidu | images |
-| Fibo | [`bria/fibo/generate`](https://fal.ai/models/bria/fibo/generate) | Bria AI | images |
-| Fibo Bbq Preview | [`bria/fibo-bbq-preview/generate`](https://fal.ai/models/bria/fibo-bbq-preview/generate) | Bria AI | images |
-| Fibo Lite | [`bria/fibo-lite/generate`](https://fal.ai/models/bria/fibo-lite/generate) | Bria AI | images |
-| FLUX 2 | [`fal-ai/flux-2`](https://fal.ai/models/fal-ai/flux-2) | Black Forest Labs | images |
-| FLUX 2 Flash | [`fal-ai/flux-2/flash`](https://fal.ai/models/fal-ai/flux-2/flash) | Black Forest Labs | images |
-| Flux 2 Flex | [`fal-ai/flux-2-flex`](https://fal.ai/models/fal-ai/flux-2-flex) | Black Forest Labs | images |
-| FLUX 2 Lora | [`fal-ai/flux-2/lora`](https://fal.ai/models/fal-ai/flux-2/lora) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/ballpoint-pen-sketch`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/ballpoint-pen-sketch) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/digital-comic-art`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/digital-comic-art) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/satellite-view-style`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/satellite-view-style) | Black Forest Labs | images |
-| Flux 2 Lora Gallery | [`fal-ai/flux-2-lora-gallery/sepia-vintage`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/sepia-vintage) | Black Forest Labs | images |
-| FLUX 2 Lora Gallery Hdr Style | [`fal-ai/flux-2-lora-gallery/hdr-style`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/hdr-style) | Black Forest Labs | images |
-| FLUX 2 Lora Gallery Realism | [`fal-ai/flux-2-lora-gallery/realism`](https://fal.ai/models/fal-ai/flux-2-lora-gallery/realism) | Black Forest Labs | images |
-| Flux 2 Max | [`fal-ai/flux-2-max`](https://fal.ai/models/fal-ai/flux-2-max) | Black Forest Labs | images |
-| Flux 2 Pro | [`fal-ai/flux-2-pro`](https://fal.ai/models/fal-ai/flux-2-pro) | Black Forest Labs | images |
-| FLUX 2 Turbo | [`fal-ai/flux-2/turbo`](https://fal.ai/models/fal-ai/flux-2/turbo) | Black Forest Labs | images |
-| Flux Kontext Lora | [`fal-ai/flux-kontext-lora/text-to-image`](https://fal.ai/models/fal-ai/flux-kontext-lora/text-to-image) | Black Forest Labs | images |
-| Flux Krea Lora | [`fal-ai/flux-krea-lora/stream`](https://fal.ai/models/fal-ai/flux-krea-lora/stream) | Black Forest Labs | images |
-| Flux Lora | [`fal-ai/flux-lora/stream`](https://fal.ai/models/fal-ai/flux-lora/stream) | Black Forest Labs | images |
-| FLUX.1 [dev] | [`fal-ai/flux-1/dev`](https://fal.ai/models/fal-ai/flux-1/dev) | Black Forest Labs | images |
-| FLUX.1 [dev] | [`fal-ai/flux/dev`](https://fal.ai/models/fal-ai/flux/dev) | Black Forest Labs | images |
-| FLUX.1 [dev] Control LoRA Canny | [`fal-ai/flux-control-lora-canny`](https://fal.ai/models/fal-ai/flux-control-lora-canny) | Black Forest Labs | images |
-| FLUX.1 [dev] Control LoRA Depth | [`fal-ai/flux-control-lora-depth`](https://fal.ai/models/fal-ai/flux-control-lora-depth) | Black Forest Labs | images |
-| FLUX.1 [dev] Inpainting with LoRAs | [`fal-ai/flux-lora/inpainting`](https://fal.ai/models/fal-ai/flux-lora/inpainting) | Black Forest Labs | images |
-| FLUX.1 [dev] with Controlnets and Loras | [`fal-ai/flux-general`](https://fal.ai/models/fal-ai/flux-general) | Black Forest Labs | images |
-| FLUX.1 [dev] with LoRAs | [`fal-ai/flux-lora`](https://fal.ai/models/fal-ai/flux-lora) | Black Forest Labs | images |
-| FLUX.1 [schnell] | [`fal-ai/flux-1/schnell`](https://fal.ai/models/fal-ai/flux-1/schnell) | Black Forest Labs | images |
-| FLUX.1 [schnell] | [`fal-ai/flux/schnell`](https://fal.ai/models/fal-ai/flux/schnell) | Black Forest Labs | images |
-| FLUX.1 Kontext [max] | [`fal-ai/flux-pro/kontext/max/text-to-image`](https://fal.ai/models/fal-ai/flux-pro/kontext/max/text-to-image) | Black Forest Labs | images |
-| FLUX.1 Kontext [pro] | [`fal-ai/flux-pro/kontext/text-to-image`](https://fal.ai/models/fal-ai/flux-pro/kontext/text-to-image) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] | [`fal-ai/flux-1/krea`](https://fal.ai/models/fal-ai/flux-1/krea) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] | [`fal-ai/flux/krea`](https://fal.ai/models/fal-ai/flux/krea) | Black Forest Labs | images |
-| FLUX.1 Krea [dev] with LoRAs | [`fal-ai/flux-krea-lora`](https://fal.ai/models/fal-ai/flux-krea-lora) | Black Forest Labs | images |
-| FLUX.1 SRPO [dev] | [`fal-ai/flux-1/srpo`](https://fal.ai/models/fal-ai/flux-1/srpo) | Black Forest Labs | images |
-| FLUX.1 SRPO [dev] | [`fal-ai/flux/srpo`](https://fal.ai/models/fal-ai/flux/srpo) | Black Forest Labs | images |
-| FLUX.1 Subject | [`fal-ai/flux-subject`](https://fal.ai/models/fal-ai/flux-subject) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B | [`fal-ai/flux-2/klein/4b`](https://fal.ai/models/fal-ai/flux-2/klein/4b) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B Base | [`fal-ai/flux-2/klein/4b/base`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B Base LoRA | [`fal-ai/flux-2/klein/4b/base/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/base/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 4B LoRA | [`fal-ai/flux-2/klein/4b/lora`](https://fal.ai/models/fal-ai/flux-2/klein/4b/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B | [`fal-ai/flux-2/klein/9b`](https://fal.ai/models/fal-ai/flux-2/klein/9b) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B Base | [`fal-ai/flux-2/klein/9b/base`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B Base LoRA | [`fal-ai/flux-2/klein/9b/base/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/base/lora) | Black Forest Labs | images |
-| FLUX.2 [klein] 9B LoRA | [`fal-ai/flux-2/klein/9b/lora`](https://fal.ai/models/fal-ai/flux-2/klein/9b/lora) | Black Forest Labs | images |
-| FLUX1.1 [pro] | [`fal-ai/flux-pro/v1.1`](https://fal.ai/models/fal-ai/flux-pro/v1.1) | Black Forest Labs | images |
-| FLUX1.1 [pro] ultra | [`fal-ai/flux-pro/v1.1-ultra`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra) | Black Forest Labs | images |
-| FLUX1.1 [pro] ultra Fine-tuned | [`fal-ai/flux-pro/v1.1-ultra-finetuned`](https://fal.ai/models/fal-ai/flux-pro/v1.1-ultra-finetuned) | Black Forest Labs | images |
-| Fooocus | [`fal-ai/fast-fooocus-sdxl/image-to-image`](https://fal.ai/models/fal-ai/fast-fooocus-sdxl/image-to-image) | — | images |
-| Fooocus | [`fal-ai/fooocus`](https://fal.ai/models/fal-ai/fooocus) | — | images |
-| Fooocus Image Prompt | [`fal-ai/fooocus/image-prompt`](https://fal.ai/models/fal-ai/fooocus/image-prompt) | — | images |
-| Fooocus Inpainting | [`fal-ai/fooocus/inpaint`](https://fal.ai/models/fal-ai/fooocus/inpaint) | — | images |
-| Fooocus Upscale or Vary | [`fal-ai/fooocus/upscale-or-vary`](https://fal.ai/models/fal-ai/fooocus/upscale-or-vary) | — | images |
-| Gemini 2.5 Flash Image | [`fal-ai/gemini-25-flash-image`](https://fal.ai/models/fal-ai/gemini-25-flash-image) | Google | images |
-| Gemini 3 Pro Image Preview | [`fal-ai/gemini-3-pro-image-preview`](https://fal.ai/models/fal-ai/gemini-3-pro-image-preview) | Google | images |
-| Gemini 3.1 Flash Image Preview | [`fal-ai/gemini-3.1-flash-image-preview`](https://fal.ai/models/fal-ai/gemini-3.1-flash-image-preview) | Google | images |
-| GLM Image | [`fal-ai/glm-image`](https://fal.ai/models/fal-ai/glm-image) | — | images |
-| GPT Image 1 Mini | [`fal-ai/gpt-image-1-mini`](https://fal.ai/models/fal-ai/gpt-image-1-mini) | OpenAI | images |
-| GPT Image 2 API | [`openai/gpt-image-2`](https://fal.ai/models/openai/gpt-image-2) | OpenAI | images |
-| GPT-Image 1.5 | [`fal-ai/gpt-image-1.5`](https://fal.ai/models/fal-ai/gpt-image-1.5) | OpenAI | images |
-| gpt-image-1 | [`fal-ai/gpt-image-1/text-to-image`](https://fal.ai/models/fal-ai/gpt-image-1/text-to-image) | OpenAI | images |
-| Grok Imagine Image | [`xai/grok-imagine-image`](https://fal.ai/models/xai/grok-imagine-image) | xAI | images |
-| Grok Imagine Image | [`xai/grok-imagine-image/quality/text-to-image`](https://fal.ai/models/xai/grok-imagine-image/quality/text-to-image) | xAI | images |
-| Hidream I1 Dev | [`fal-ai/hidream-i1-dev`](https://fal.ai/models/fal-ai/hidream-i1-dev) | Hidream | images |
-| Hidream I1 Fast | [`fal-ai/hidream-i1-fast`](https://fal.ai/models/fal-ai/hidream-i1-fast) | Hidream | images |
-| Hidream I1 Full | [`fal-ai/hidream-i1-full`](https://fal.ai/models/fal-ai/hidream-i1-full) | Hidream | images |
-| Hidream O1 Image | [`fal-ai/hidream-o1-image`](https://fal.ai/models/fal-ai/hidream-o1-image) | Hidream | images |
-| Hidream O1 Image | [`fal-ai/hidream-o1-image/dev`](https://fal.ai/models/fal-ai/hidream-o1-image/dev) | — | images |
-| Hunyuan Image | [`fal-ai/hunyuan-image/v2.1/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v2.1/text-to-image) | Tencent | images |
-| Hunyuan Image | [`fal-ai/hunyuan-image/v3/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v3/text-to-image) | Tencent | images |
-| Hunyuan Image 3.0 Instruct | [`fal-ai/hunyuan-image/v3/instruct/text-to-image`](https://fal.ai/models/fal-ai/hunyuan-image/v3/instruct/text-to-image) | Tencent | images |
-| Ideogram | [`fal-ai/ideogram/custom-models/generate`](https://fal.ai/models/fal-ai/ideogram/custom-models/generate) | Ideogram | images |
-| Ideogram Text to Image | [`fal-ai/ideogram/v3`](https://fal.ai/models/fal-ai/ideogram/v3) | Ideogram | images |
-| Ideogram Transparent | [`fal-ai/ideogram/v3/generate-transparent`](https://fal.ai/models/fal-ai/ideogram/v3/generate-transparent) | Ideogram | images |
-| Ideogram V2 | [`fal-ai/ideogram/v2`](https://fal.ai/models/fal-ai/ideogram/v2) | Ideogram | images |
-| Ideogram V2 Turbo | [`fal-ai/ideogram/v2/turbo`](https://fal.ai/models/fal-ai/ideogram/v2/turbo) | Ideogram | images |
-| Ideogram V2A | [`fal-ai/ideogram/v2a`](https://fal.ai/models/fal-ai/ideogram/v2a) | Ideogram | images |
-| Ideogram V2A Turbo | [`fal-ai/ideogram/v2a/turbo`](https://fal.ai/models/fal-ai/ideogram/v2a/turbo) | Ideogram | images |
-| Ideogram V4.0 Text to Image | [`ideogram/v4`](https://fal.ai/models/ideogram/v4) | Ideogram | images |
-| Ideogram V4.0q Text to Image (LoRA) | [`ideogram/v4/lora`](https://fal.ai/models/ideogram/v4/lora) | Ideogram | images |
-| Illusion Diffusion | [`fal-ai/illusion-diffusion`](https://fal.ai/models/fal-ai/illusion-diffusion) | — | image |
-| Imagineart 1.5 Preview | [`imagineart/imagineart-1.5-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-1.5-preview/text-to-image) | ImagineArt | images |
-| ImagineArt 1.5 Pro Preview | [`imagineart/imagineart-1.5-pro-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-1.5-pro-preview/text-to-image) | ImagineArt | images |
-| Imagineart 2.0 Preview | [`imagineart/imagineart-2.0-preview/text-to-image`](https://fal.ai/models/imagineart/imagineart-2.0-preview/text-to-image) | ImagineArt | images |
-| Juggernaut Flux Base | [`rundiffusion-fal/juggernaut-flux/base`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/base) | Rundiffusion | images |
-| Juggernaut Flux Base LoRA | [`rundiffusion-fal/juggernaut-flux-lora`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux-lora) | Rundiffusion | images |
-| Juggernaut Flux Lightning | [`rundiffusion-fal/juggernaut-flux/lightning`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/lightning) | Rundiffusion | images |
-| Juggernaut Flux Pro | [`rundiffusion-fal/juggernaut-flux/pro`](https://fal.ai/models/rundiffusion-fal/juggernaut-flux/pro) | Rundiffusion | images |
-| Kling Image | [`fal-ai/kling-image/o3/text-to-image`](https://fal.ai/models/fal-ai/kling-image/o3/text-to-image) | Kling | images |
-| Kling Image | [`fal-ai/kling-image/v3/text-to-image`](https://fal.ai/models/fal-ai/kling-image/v3/text-to-image) | Kling | images |
-| Kolors | [`fal-ai/kolors`](https://fal.ai/models/fal-ai/kolors) | — | images |
-| Krea 2 Large | [`krea/v2/large/text-to-image`](https://fal.ai/models/krea/v2/large/text-to-image) | Krea | images |
-| Krea 2 Medium | [`krea/v2/medium/text-to-image`](https://fal.ai/models/krea/v2/medium/text-to-image) | Krea | images |
-| Krea 2 Medium Text to Image Turbo | [`krea/v2/medium/turbo/text-to-image`](https://fal.ai/models/krea/v2/medium/turbo/text-to-image) | Krea | images |
-| Krea 2 Text to Image Turbo LoRA | [`fal-ai/krea-2/turbo/lora`](https://fal.ai/models/fal-ai/krea-2/turbo/lora) | Krea 2 | images |
-| Krea 2 Turbo | [`fal-ai/krea-2/turbo`](https://fal.ai/models/fal-ai/krea-2/turbo) | Krea | images |
-| Latent Consistency Models (v1.5/XL) | [`fal-ai/fast-lcm-diffusion`](https://fal.ai/models/fal-ai/fast-lcm-diffusion) | — | images |
-| Longcat Image | [`fal-ai/longcat-image`](https://fal.ai/models/fal-ai/longcat-image) | — | images |
-| Luma Photon | [`fal-ai/luma-photon`](https://fal.ai/models/fal-ai/luma-photon) | Luma AI | images |
-| Luma Photon Flash | [`fal-ai/luma-photon/flash`](https://fal.ai/models/fal-ai/luma-photon/flash) | Luma AI | images |
-| Luma Uni-1 Text to Image | [`luma/agent/uni-1/v1/text-to-image`](https://fal.ai/models/luma/agent/uni-1/v1/text-to-image) | Luma AI | images |
-| Luma Uni-1 Text to Image Max | [`luma/agent/uni-1/v1/max`](https://fal.ai/models/luma/agent/uni-1/v1/max) | Luma AI | images |
-| Lumina Image 2 | [`fal-ai/lumina-image/v2`](https://fal.ai/models/fal-ai/lumina-image/v2) | — | images |
-| Mai Image 2.5 Text to Image | [`microsoft/mai-image-2.5`](https://fal.ai/models/microsoft/mai-image-2.5) | Microsoft | images |
-| MiniMax (Hailuo AI) Text to Image | [`fal-ai/minimax/image-01`](https://fal.ai/models/fal-ai/minimax/image-01) | Minimax | images |
-| Nano Banana | [`fal-ai/nano-banana`](https://fal.ai/models/fal-ai/nano-banana) | Google | images |
-| Nano Banana 2 | [`fal-ai/nano-banana-2`](https://fal.ai/models/fal-ai/nano-banana-2) | Google | images |
-| Nano Banana 2 Lite | [`google/nano-banana-2-lite`](https://fal.ai/models/google/nano-banana-2-lite) | Google | images |
-| Nano Banana Lite | [`google/nano-banana-lite`](https://fal.ai/models/google/nano-banana-lite) | Google | images |
-| Nano Banana Pro | [`fal-ai/nano-banana-pro`](https://fal.ai/models/fal-ai/nano-banana-pro) | Google | images |
-| Nucleus Image | [`fal-ai/nucleus-image`](https://fal.ai/models/fal-ai/nucleus-image) | — | images |
-| OmniGen v1 | [`fal-ai/omnigen-v1`](https://fal.ai/models/fal-ai/omnigen-v1) | — | images |
-| Omnigen V2 | [`fal-ai/omnigen-v2`](https://fal.ai/models/fal-ai/omnigen-v2) | — | images |
-| Ovis Image | [`fal-ai/ovis-image`](https://fal.ai/models/fal-ai/ovis-image) | — | images |
-| PATINA | [`fal-ai/patina/material`](https://fal.ai/models/fal-ai/patina/material) | Fal | images |
-| Phota Text to Image | [`fal-ai/phota`](https://fal.ai/models/fal-ai/phota) | — | images |
-| PixArt-Σ | [`fal-ai/pixart-sigma`](https://fal.ai/models/fal-ai/pixart-sigma) | — | images |
-| Playground v2.5 | [`fal-ai/playground-v25`](https://fal.ai/models/fal-ai/playground-v25) | — | images |
-| Pony V7 | [`fal-ai/pony-v7`](https://fal.ai/models/fal-ai/pony-v7) | — | images |
-| Qwen Image | [`fal-ai/qwen-image`](https://fal.ai/models/fal-ai/qwen-image) | Alibaba | images |
-| Qwen Image 2 | [`fal-ai/qwen-image-2/pro/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-2/pro/text-to-image) | Alibaba | images |
-| Qwen Image 2 | [`fal-ai/qwen-image-2/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-2/text-to-image) | Alibaba | images |
-| Qwen Image 2512 | [`fal-ai/qwen-image-2512`](https://fal.ai/models/fal-ai/qwen-image-2512) | Alibaba | images |
-| Qwen Image 2512 | [`fal-ai/qwen-image-2512/lora`](https://fal.ai/models/fal-ai/qwen-image-2512/lora) | Alibaba | images |
-| Qwen Image Max | [`fal-ai/qwen-image-max/text-to-image`](https://fal.ai/models/fal-ai/qwen-image-max/text-to-image) | Alibaba | images |
-| Realistic Vision | [`fal-ai/realistic-vision`](https://fal.ai/models/fal-ai/realistic-vision) | — | images |
-| Recraft 20b | [`fal-ai/recraft-20b`](https://fal.ai/models/fal-ai/recraft-20b) | Recraft | images |
-| Recraft V3 | [`fal-ai/recraft/v3/text-to-image`](https://fal.ai/models/fal-ai/recraft/v3/text-to-image) | Recraft | images |
-| Recraft V4 | [`fal-ai/recraft/v4/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4/text-to-image) | Recraft | images |
-| Recraft V4 (Vector) | [`fal-ai/recraft/v4/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4/text-to-vector) | Recraft | images |
-| Recraft V4 Pro | [`fal-ai/recraft/v4/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4/pro/text-to-image) | Recraft | images |
-| Recraft V4 Pro (Vector) | [`fal-ai/recraft/v4/pro/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4/pro/text-to-vector) | Recraft | images |
-| Recraft V4.1 Text to Image | [`fal-ai/recraft/v4.1/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/text-to-image) | Recraft | images |
-| Recraft V4.1 Text to Image Pro | [`fal-ai/recraft/v4.1/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/pro/text-to-image) | Recraft | images |
-| Recraft V4.1 Text to Image Utility | [`fal-ai/recraft/v4.1/utility/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/utility/text-to-image) | Recraft | images |
-| Recraft V4.1 Text to Vector | [`fal-ai/recraft/v4.1/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4.1/text-to-vector) | Recraft | images |
-| Recraft V4.1 Text to Vector Pro | [`fal-ai/recraft/v4.1/pro/text-to-vector`](https://fal.ai/models/fal-ai/recraft/v4.1/pro/text-to-vector) | Recraft | images |
-| Recraft V4.1 Utility Text to Image | [`fal-ai/recraft/v4.1/utility/pro/text-to-image`](https://fal.ai/models/fal-ai/recraft/v4.1/utility/pro/text-to-image) | Recraft | images |
-| Rundiffusion Photo Flux | [`rundiffusion-fal/rundiffusion-photo-flux`](https://fal.ai/models/rundiffusion-fal/rundiffusion-photo-flux) | Rundiffusion | images |
-| Sana | [`fal-ai/sana`](https://fal.ai/models/fal-ai/sana) | — | images |
-| Sana Sprint | [`fal-ai/sana/sprint`](https://fal.ai/models/fal-ai/sana/sprint) | — | images |
-| Sana v1.5 1.6B | [`fal-ai/sana/v1.5/1.6b`](https://fal.ai/models/fal-ai/sana/v1.5/1.6b) | — | images |
-| Sana v1.5 4.8B | [`fal-ai/sana/v1.5/4.8b`](https://fal.ai/models/fal-ai/sana/v1.5/4.8b) | — | images |
-| SDXL ControlNet Union | [`fal-ai/sdxl-controlnet-union`](https://fal.ai/models/fal-ai/sdxl-controlnet-union) | — | images |
-| Sensenova U1 Infographic | [`fal-ai/sensenova-u1-infographic`](https://fal.ai/models/fal-ai/sensenova-u1-infographic) | — | images |
-| SoteDiffusion | [`fal-ai/stable-cascade/sote-diffusion`](https://fal.ai/models/fal-ai/stable-cascade/sote-diffusion) | Stability AI | images |
-| Stable Cascade | [`fal-ai/stable-cascade`](https://fal.ai/models/fal-ai/stable-cascade) | Stability AI | images |
-| Stable Diffusion 3.5 Large | [`fal-ai/stable-diffusion-v35-large`](https://fal.ai/models/fal-ai/stable-diffusion-v35-large) | Stability AI | images |
-| Stable Diffusion 3.5 Medium | [`fal-ai/stable-diffusion-v35-medium`](https://fal.ai/models/fal-ai/stable-diffusion-v35-medium) | Stability AI | images |
-| Stable Diffusion v1.5 | [`fal-ai/stable-diffusion-v15`](https://fal.ai/models/fal-ai/stable-diffusion-v15) | Stability AI | images |
-| Stable Diffusion V3 | [`fal-ai/stable-diffusion-v3-medium`](https://fal.ai/models/fal-ai/stable-diffusion-v3-medium) | Stability AI | images |
-| Stable Diffusion with LoRAs | [`fal-ai/lora`](https://fal.ai/models/fal-ai/lora) | — | images |
-| Stable Diffusion XL | [`fal-ai/fast-sdxl`](https://fal.ai/models/fal-ai/fast-sdxl) | — | images |
-| Stable Diffusion XL Lightning | [`fal-ai/fast-lightning-sdxl`](https://fal.ai/models/fal-ai/fast-lightning-sdxl) | — | images |
-| Vecglypher | [`fal-ai/vecglypher`](https://fal.ai/models/fal-ai/vecglypher) | — | image |
-| Vidu | [`fal-ai/vidu/q2/text-to-image`](https://fal.ai/models/fal-ai/vidu/q2/text-to-image) | Vidu | image |
-| Wan | [`fal-ai/wan/v2.2-5b/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-image) | Alibaba | image |
-| Wan | [`fal-ai/wan/v2.2-a14b/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-image) | Alibaba | image |
-| Wan | [`fal-ai/wan/v2.7/pro/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.7/pro/text-to-image) | Alibaba | images |
-| Wan | [`fal-ai/wan/v2.7/text-to-image`](https://fal.ai/models/fal-ai/wan/v2.7/text-to-image) | Alibaba | images |
-| Wan 2.5 Text to Image | [`fal-ai/wan-25-preview/text-to-image`](https://fal.ai/models/fal-ai/wan-25-preview/text-to-image) | Alibaba | images |
-| Wan v2.2 A14B Text-to-Image A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/text-to-image/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-image/lora) | Alibaba | image |
-| Wan v2.6 Text to Image | [`wan/v2.6/text-to-image`](https://fal.ai/models/wan/v2.6/text-to-image) | Alibaba | images |
-| Z Image Base | [`fal-ai/z-image/base`](https://fal.ai/models/fal-ai/z-image/base) | Alibaba | images |
-| Z Image Base Lora | [`fal-ai/z-image/base/lora`](https://fal.ai/models/fal-ai/z-image/base/lora) | Alibaba | images |
-| Z Image Turbo | [`fal-ai/z-image/turbo`](https://fal.ai/models/fal-ai/z-image/turbo) | Alibaba | images |
-| Z Image Turbo Lora | [`fal-ai/z-image/turbo/lora`](https://fal.ai/models/fal-ai/z-image/turbo/lora) | Alibaba | images |
-| Z-Image Turbo Seamless Tiling | [`fal-ai/z-image/turbo/tiling`](https://fal.ai/models/fal-ai/z-image/turbo/tiling) | Alibaba | images |
-| Z-Image Turbo Seamless Tiling Lora | [`fal-ai/z-image/turbo/tiling/lora`](https://fal.ai/models/fal-ai/z-image/turbo/tiling/lora) | Alibaba | images |
-
-
-
-
-video-to-video — 181 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| AMT Interpolation | [`fal-ai/amt-interpolation`](https://fal.ai/models/fal-ai/amt-interpolation) | — | video |
-| AnimateDiff | [`fal-ai/fast-animatediff/video-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/video-to-video) | — | video |
-| AnimateDiff Turbo | [`fal-ai/fast-animatediff/turbo/video-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/turbo/video-to-video) | — | video |
-| Auto-Captioner | [`fal-ai/auto-caption`](https://fal.ai/models/fal-ai/auto-caption) | — | text |
-| Ben-Video-Bg-Rm | [`fal-ai/ben/v2/video`](https://fal.ai/models/fal-ai/ben/v2/video) | — | video |
-| Bernini-R Edit Video | [`fal-ai/bernini-r/edit-video`](https://fal.ai/models/fal-ai/bernini-r/edit-video) | Bytedance | video |
-| Bernini-R Reference Edit Video | [`fal-ai/bernini-r/reference-edit-video`](https://fal.ai/models/fal-ai/bernini-r/reference-edit-video) | Bytedance | video |
-| Birefnet | [`fal-ai/birefnet/v2/video`](https://fal.ai/models/fal-ai/birefnet/v2/video) | — | video |
-| Bria Video Eraser | [`bria/bria_video_eraser/erase/keypoints`](https://fal.ai/models/bria/bria_video_eraser/erase/keypoints) | Bria AI | json |
-| Bria Video Eraser | [`bria/bria_video_eraser/erase/prompt`](https://fal.ai/models/bria/bria_video_eraser/erase/prompt) | Bria AI | json |
-| Bria Video Eraser Erase Mask | [`bria/bria_video_eraser/erase/mask`](https://fal.ai/models/bria/bria_video_eraser/erase/mask) | Bria AI | json |
-| Bria's VRMBG 3.0 | [`bria/video/background-removal/v3`](https://fal.ai/models/bria/video/background-removal/v3) | — | video |
-| Bria's VRMBG 3.0 Realtime | [`bria/video/background-removal/realtime`](https://fal.ai/models/bria/video/background-removal/realtime) | Bria AI | json |
-| Bytedance Dreamactor V2 | [`fal-ai/bytedance/dreamactor/v2`](https://fal.ai/models/fal-ai/bytedance/dreamactor/v2) | Bytedance | video |
-| Bytedance Upscaler Upscale Video | [`fal-ai/bytedance-upscaler/upscale/video`](https://fal.ai/models/fal-ai/bytedance-upscaler/upscale/video) | Bytedance | video |
-| CogVideoX-5B | [`fal-ai/cogvideox-5b/video-to-video`](https://fal.ai/models/fal-ai/cogvideox-5b/video-to-video) | — | video |
-| Controlfoley | [`fal-ai/controlfoley`](https://fal.ai/models/fal-ai/controlfoley) | — | video |
-| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/video-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/video-to-video) | — | video |
-| Crystal Upscaler [Video] | [`clarityai/crystal-video-upscaler`](https://fal.ai/models/clarityai/crystal-video-upscaler) | Clarity AI | video |
-| Depth Anything Video | [`fal-ai/depth-anything-video`](https://fal.ai/models/fal-ai/depth-anything-video) | — | video |
-| DWPose Pose Prediction | [`fal-ai/dwpose/video`](https://fal.ai/models/fal-ai/dwpose/video) | — | video |
-| Editto | [`fal-ai/editto`](https://fal.ai/models/fal-ai/editto) | — | video |
-| Ffmpeg Api | [`fal-ai/ffmpeg-api/merge-videos`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-videos) | — | video |
-| FFmpeg API Compose | [`fal-ai/ffmpeg-api/compose`](https://fal.ai/models/fal-ai/ffmpeg-api/compose) | — | text |
-| Ffmpeg Api Merge Audio-Video | [`fal-ai/ffmpeg-api/merge-audio-video`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-audio-video) | — | video |
-| FILM | [`fal-ai/film/video`](https://fal.ai/models/fal-ai/film/video) | — | video |
-| Flashvsr | [`fal-ai/flashvsr/upscale/video`](https://fal.ai/models/fal-ai/flashvsr/upscale/video) | — | video |
-| Gemini Omni Flash | [`google/gemini-omni-flash/edit`](https://fal.ai/models/google/gemini-omni-flash/edit) | Google | video |
-| Grok Imagine Extend Video | [`xai/grok-imagine-video/extend-video`](https://fal.ai/models/xai/grok-imagine-video/extend-video) | xAI | video |
-| Grok Imagine Video | [`xai/grok-imagine-video/edit-video`](https://fal.ai/models/xai/grok-imagine-video/edit-video) | xAI | video |
-| Happy Horse Video Edit | [`alibaba/happy-horse/video-edit`](https://fal.ai/models/alibaba/happy-horse/video-edit) | Alibaba | video |
-| Heygen | [`fal-ai/heygen/v2/translate/precision`](https://fal.ai/models/fal-ai/heygen/v2/translate/precision) | Heygen | video |
-| Heygen | [`fal-ai/heygen/v2/translate/speed`](https://fal.ai/models/fal-ai/heygen/v2/translate/speed) | Heygen | video |
-| Heygen Lipsync - Precision | [`fal-ai/heygen/v3/lipsync/precision`](https://fal.ai/models/fal-ai/heygen/v3/lipsync/precision) | Heygen | video |
-| Heygen Lipsync - Speed | [`fal-ai/heygen/v3/lipsync/speed`](https://fal.ai/models/fal-ai/heygen/v3/lipsync/speed) | Heygen | video |
-| Hunyuan Video (Video-to-Video) | [`fal-ai/hunyuan-video/video-to-video`](https://fal.ai/models/fal-ai/hunyuan-video/video-to-video) | Tencent | video |
-| Hunyuan Video Foley | [`fal-ai/hunyuan-video-foley`](https://fal.ai/models/fal-ai/hunyuan-video-foley) | Tencent | video |
-| Infinitalk | [`fal-ai/infinitalk`](https://fal.ai/models/fal-ai/infinitalk) | — | video |
-| Infinitalk | [`fal-ai/infinitalk/video-to-video`](https://fal.ai/models/fal-ai/infinitalk/video-to-video) | — | video |
-| Kling O1 Edit Video [Pro] | [`fal-ai/kling-video/o1/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o1/video-to-video/edit) | Kling | video |
-| Kling O1 Edit Video [Standard] | [`fal-ai/kling-video/o1/standard/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o1/standard/video-to-video/edit) | Kling | video |
-| Kling O1 Reference Video to Video [Pro] | [`fal-ai/kling-video/o1/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o1/video-to-video/reference) | Kling | video |
-| Kling O1 Reference Video to Video [Standard] | [`fal-ai/kling-video/o1/standard/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o1/standard/video-to-video/reference) | Kling | video |
-| Kling O3 Edit Video [Pro] | [`fal-ai/kling-video/o3/pro/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/edit) | Kling | video |
-| Kling O3 Edit Video [Standard] | [`fal-ai/kling-video/o3/standard/video-to-video/edit`](https://fal.ai/models/fal-ai/kling-video/o3/standard/video-to-video/edit) | Kling | video |
-| Kling O3 Reference Video to Video [Pro] | [`fal-ai/kling-video/o3/pro/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o3/pro/video-to-video/reference) | Kling | video |
-| Kling O3 Reference Video to Video [Standard] | [`fal-ai/kling-video/o3/standard/video-to-video/reference`](https://fal.ai/models/fal-ai/kling-video/o3/standard/video-to-video/reference) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/v3/pro/motion-control`](https://fal.ai/models/fal-ai/kling-video/v3/pro/motion-control) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/v3/standard/motion-control`](https://fal.ai/models/fal-ai/kling-video/v3/standard/motion-control) | Kling | video |
-| Kling Video v2.6 Motion Control [Pro] | [`fal-ai/kling-video/v2.6/pro/motion-control`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/motion-control) | Kling | video |
-| Kling Video v2.6 Motion Control [Standard] | [`fal-ai/kling-video/v2.6/standard/motion-control`](https://fal.ai/models/fal-ai/kling-video/v2.6/standard/motion-control) | Kling | video |
-| Krea Wan 14B | [`fal-ai/krea-wan-14b/video-to-video`](https://fal.ai/models/fal-ai/krea-wan-14b/video-to-video) | — | video |
-| LatentSync | [`fal-ai/latentsync`](https://fal.ai/models/fal-ai/latentsync) | — | video |
-| Lightx | [`fal-ai/lightx/recamera`](https://fal.ai/models/fal-ai/lightx/recamera) | — | video |
-| Lightx | [`fal-ai/lightx/relight`](https://fal.ai/models/fal-ai/lightx/relight) | — | video |
-| Lipsync | [`veed/lipsync`](https://fal.ai/models/veed/lipsync) | Veed | video |
-| LTX 2.3 22B | [`fal-ai/ltx-2.3-22b/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/reference-video-to-video/lora) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/colorization`](https://fal.ai/models/fal-ai/ltx-2.3-quality/colorization) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/cross-eyed`](https://fal.ai/models/fal-ai/ltx-2.3-quality/cross-eyed) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/day-to-night`](https://fal.ai/models/fal-ai/ltx-2.3-quality/day-to-night) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/deblur`](https://fal.ai/models/fal-ai/ltx-2.3-quality/deblur) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/decompression`](https://fal.ai/models/fal-ai/ltx-2.3-quality/decompression) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/hdr`](https://fal.ai/models/fal-ai/ltx-2.3-quality/hdr) | Lightricks | json |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/hdr/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/hdr/lora) | Lightricks | json |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/inpaint`](https://fal.ai/models/fal-ai/ltx-2.3-quality/inpaint) | — | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/inpaint/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/inpaint/lora) | — | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/instant-shave`](https://fal.ai/models/fal-ai/ltx-2.3-quality/instant-shave) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/outpaint`](https://fal.ai/models/fal-ai/ltx-2.3-quality/outpaint) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/outpaint/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/outpaint/lora) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/reference-video-to-video) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/reference-video-to-video/lora) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/render-to-real`](https://fal.ai/models/fal-ai/ltx-2.3-quality/render-to-real) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/water-simulation`](https://fal.ai/models/fal-ai/ltx-2.3-quality/water-simulation) | Lightricks | video |
-| LTX Video 2.0 Pro | [`fal-ai/ltx-2/extend-video`](https://fal.ai/models/fal-ai/ltx-2/extend-video) | Lightricks | video |
-| LTX Video 2.0 Retake | [`fal-ai/ltx-2/retake-video`](https://fal.ai/models/fal-ai/ltx-2/retake-video) | Lightricks | video |
-| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/extend-video`](https://fal.ai/models/fal-ai/ltx-2.3/extend-video) | Lightricks | video |
-| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/retake-video`](https://fal.ai/models/fal-ai/ltx-2.3/retake-video) | Lightricks | video |
-| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095/extend`](https://fal.ai/models/fal-ai/ltx-video-v095/extend) | Lightricks | video |
-| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095/multiconditioning`](https://fal.ai/models/fal-ai/ltx-video-v095/multiconditioning) | Lightricks | video |
-| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/extend`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/extend) | Lightricks | video |
-| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled/multiconditioning`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled/multiconditioning) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/extend-video`](https://fal.ai/models/fal-ai/ltx-2-19b/extend-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/extend-video/lora) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/video-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/video-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/video-to-video/lora) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/extend-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/extend-video) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/extend-video/lora) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/video-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/video-to-video) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/video-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/extend-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/extend-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/extend-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/extend-video/lora) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/reference-video-to-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/video-to-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/video-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/reference-video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/reference-video-to-video) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/reference-video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/reference-video-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/video-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/video-to-video) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/video-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/video-to-video/lora) | Lightricks | video |
-| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/extend`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/extend) | Lightricks | video |
-| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled/multiconditioning`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled/multiconditioning) | Lightricks | video |
-| Lucy 2.1 VTON Realtime | [`decart/lucy2-vton/realtime`](https://fal.ai/models/decart/lucy2-vton/realtime) | Decart | json |
-| Lucy Edit [Pro] | [`decart/lucy-edit/pro`](https://fal.ai/models/decart/lucy-edit/pro) | Decart | video |
-| Lucy Restyle | [`decart/lucy-restyle`](https://fal.ai/models/decart/lucy-restyle) | Decart | video |
-| Luma Ray 2 Flash Modify | [`fal-ai/luma-dream-machine/ray-2-flash/modify`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/modify) | Luma AI | video |
-| Luma Ray 2 Flash Reframe | [`fal-ai/luma-dream-machine/ray-2-flash/reframe`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash/reframe) | Luma AI | video |
-| Luma Ray 2 Modify | [`fal-ai/luma-dream-machine/ray-2/modify`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/modify) | Luma AI | video |
-| Luma Ray 2 Reframe | [`fal-ai/luma-dream-machine/ray-2/reframe`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2/reframe) | Luma AI | video |
-| Luma Ray 3.2 Reframe | [`luma/agent/ray/v3.2/reframe`](https://fal.ai/models/luma/agent/ray/v3.2/reframe) | Luma AI | video |
-| Luma Ray 3.2 Video to Video | [`luma/agent/ray/v3.2/video-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/video-to-video) | Luma AI | video |
-| MAGI-1 (Distilled) | [`fal-ai/magi-distilled/extend-video`](https://fal.ai/models/fal-ai/magi-distilled/extend-video) | — | video |
-| Marey Realism V1.5 | [`moonvalley/marey/motion-transfer`](https://fal.ai/models/moonvalley/marey/motion-transfer) | Moonvalley | video |
-| Marey Realism V1.5 | [`moonvalley/marey/pose-transfer`](https://fal.ai/models/moonvalley/marey/pose-transfer) | Moonvalley | video |
-| Mirelo SFX | [`mirelo-ai/sfx-v1/video-to-video`](https://fal.ai/models/mirelo-ai/sfx-v1/video-to-video) | Mirelo AI | video |
-| Mirelo SFX V1.5 | [`mirelo-ai/sfx-v1.5/video-to-video`](https://fal.ai/models/mirelo-ai/sfx-v1.5/video-to-video) | Mirelo AI | video |
-| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/video-to-video`](https://fal.ai/models/mirelo-ai/sfx1.6/video-to-video) | Mirelo AI | video |
-| MMAudio V2 | [`fal-ai/mmaudio-v2`](https://fal.ai/models/fal-ai/mmaudio-v2) | — | video |
-| One To All Animation | [`fal-ai/one-to-all-animation/1.3b`](https://fal.ai/models/fal-ai/one-to-all-animation/1.3b) | — | video |
-| One To All Animation | [`fal-ai/one-to-all-animation/14b`](https://fal.ai/models/fal-ai/one-to-all-animation/14b) | — | video |
-| Pikadditions (v2) | [`fal-ai/pika/v2/pikadditions`](https://fal.ai/models/fal-ai/pika/v2/pikadditions) | Pika | video |
-| Pixelcut Video Background Removal | [`pixelcut/video-background-removal`](https://fal.ai/models/pixelcut/video-background-removal) | Pixelcut | video |
-| PixVerse Extend | [`fal-ai/pixverse/extend`](https://fal.ai/models/fal-ai/pixverse/extend) | Pixverse | video |
-| PixVerse Extend Fast | [`fal-ai/pixverse/extend/fast`](https://fal.ai/models/fal-ai/pixverse/extend/fast) | Pixverse | video |
-| PixVerse Lipsync | [`fal-ai/pixverse/lipsync`](https://fal.ai/models/fal-ai/pixverse/lipsync) | Pixverse | video |
-| PixVerse Sound Effects | [`fal-ai/pixverse/sound-effects`](https://fal.ai/models/fal-ai/pixverse/sound-effects) | Pixverse | video |
-| PixVerse V6 Extend | [`fal-ai/pixverse/v6/extend`](https://fal.ai/models/fal-ai/pixverse/v6/extend) | Pixverse | video |
-| RIFE | [`fal-ai/rife/video`](https://fal.ai/models/fal-ai/rife/video) | — | video |
-| Sam 3 | [`fal-ai/sam-3/video`](https://fal.ai/models/fal-ai/sam-3/video) | — | video |
-| Sam 3 | [`fal-ai/sam-3/video-rle`](https://fal.ai/models/fal-ai/sam-3/video-rle) | — | video |
-| Sam 3 1 | [`fal-ai/sam-3-1/video`](https://fal.ai/models/fal-ai/sam-3-1/video) | — | video |
-| Sam 3 1 | [`fal-ai/sam-3-1/video-rle`](https://fal.ai/models/fal-ai/sam-3-1/video-rle) | — | video |
-| Scail 2 | [`fal-ai/scail-2`](https://fal.ai/models/fal-ai/scail-2) | z AI | video |
-| SeedVR2 | [`fal-ai/seedvr/upscale/video`](https://fal.ai/models/fal-ai/seedvr/upscale/video) | SeedVR | video |
-| Segment Anything Model 2 | [`fal-ai/sam2/video`](https://fal.ai/models/fal-ai/sam2/video) | — | video |
-| Sora 2 | [`fal-ai/sora-2/video-to-video/remix`](https://fal.ai/models/fal-ai/sora-2/video-to-video/remix) | OpenAI | video |
-| Subtitles | [`veed/subtitles`](https://fal.ai/models/veed/subtitles) | Veed | video |
-| Sync Lipsync | [`fal-ai/sync-lipsync/v2/pro`](https://fal.ai/models/fal-ai/sync-lipsync/v2/pro) | Syncso | video |
-| Sync Lipsync 2.0 | [`fal-ai/sync-lipsync/v2`](https://fal.ai/models/fal-ai/sync-lipsync/v2) | Syncso | video |
-| Sync React-1 | [`fal-ai/sync-lipsync/react-1`](https://fal.ai/models/fal-ai/sync-lipsync/react-1) | Syncso | video |
-| sync-3 Lipsync | [`fal-ai/sync-lipsync/v3`](https://fal.ai/models/fal-ai/sync-lipsync/v3) | Syncso | video |
-| sync.so -- lipsync 1.9.0-beta | [`fal-ai/sync-lipsync`](https://fal.ai/models/fal-ai/sync-lipsync) | Syncso | video |
-| ThinkSound | [`fal-ai/thinksound`](https://fal.ai/models/fal-ai/thinksound) | — | video |
-| ThinkSound | [`fal-ai/thinksound/audio`](https://fal.ai/models/fal-ai/thinksound/audio) | — | audio |
-| Topaz Video Upscale | [`fal-ai/topaz/upscale/video`](https://fal.ai/models/fal-ai/topaz/upscale/video) | Topaz Labs | video |
-| V2.6 | [`wan/v2.6/reference-to-video/flash`](https://fal.ai/models/wan/v2.6/reference-to-video/flash) | Alibaba | video |
-| Veo 3.1 | [`fal-ai/veo3.1/extend-video`](https://fal.ai/models/fal-ai/veo3.1/extend-video) | Google | video |
-| Veo 3.1 Fast | [`fal-ai/veo3.1/fast/extend-video`](https://fal.ai/models/fal-ai/veo3.1/fast/extend-video) | Google | video |
-| Video | [`bria/video/background-removal`](https://fal.ai/models/bria/video/background-removal) | Bria AI | video |
-| Video | [`bria/video/erase/keypoints`](https://fal.ai/models/bria/video/erase/keypoints) | Bria AI | json |
-| Video | [`bria/video/erase/mask`](https://fal.ai/models/bria/video/erase/mask) | Bria AI | json |
-| Video | [`bria/video/erase/prompt`](https://fal.ai/models/bria/video/erase/prompt) | Bria AI | json |
-| Video | [`bria/video/increase-resolution`](https://fal.ai/models/bria/video/increase-resolution) | Bria AI | video |
-| Video Background Removal | [`veed/video-background-removal`](https://fal.ai/models/veed/video-background-removal) | Veed | video |
-| Video Background Removal | [`veed/video-background-removal/fast`](https://fal.ai/models/veed/video-background-removal/fast) | Veed | video |
-| Video Background Removal | [`veed/video-background-removal/green-screen`](https://fal.ai/models/veed/video-background-removal/green-screen) | Veed | video |
-| Video Sound Effects Generator | [`cassetteai/video-sound-effects-generator`](https://fal.ai/models/cassetteai/video-sound-effects-generator) | Cassette AI | video |
-| Video Upscaler | [`fal-ai/video-upscaler`](https://fal.ai/models/fal-ai/video-upscaler) | — | video |
-| Vidu | [`fal-ai/vidu/q2/video-extension/pro`](https://fal.ai/models/fal-ai/vidu/q2/video-extension/pro) | Vidu | video |
-| Void Video Inpainting | [`fal-ai/void-video-inpainting`](https://fal.ai/models/fal-ai/void-video-inpainting) | — | video |
-| Wan | [`fal-ai/wan/v2.2-a14b/video-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/video-to-video) | Alibaba | video |
-| Wan | [`fal-ai/wan/v2.7/edit-video`](https://fal.ai/models/fal-ai/wan/v2.7/edit-video) | Alibaba | video |
-| Wan 2.1 VACE Long Reframe | [`fal-ai/wan-vace-apps/long-reframe`](https://fal.ai/models/fal-ai/wan-vace-apps/long-reframe) | Alibaba | video |
-| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/depth`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/depth) | Alibaba | video |
-| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/inpainting`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/inpainting) | Alibaba | video |
-| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/outpainting`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/outpainting) | Alibaba | video |
-| Wan 2.2 VACE Fun A14B | [`fal-ai/wan-22-vace-fun-a14b/reframe`](https://fal.ai/models/fal-ai/wan-22-vace-fun-a14b/reframe) | Alibaba | video |
-| Wan Motion | [`fal-ai/wan-motion`](https://fal.ai/models/fal-ai/wan-motion) | — | video |
-| Wan v2.6 Reference to Video | [`wan/v2.6/reference-to-video`](https://fal.ai/models/wan/v2.6/reference-to-video) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b`](https://fal.ai/models/fal-ai/wan-vace-14b) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b/depth`](https://fal.ai/models/fal-ai/wan-vace-14b/depth) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b/inpainting`](https://fal.ai/models/fal-ai/wan-vace-14b/inpainting) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b/outpainting`](https://fal.ai/models/fal-ai/wan-vace-14b/outpainting) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b/pose`](https://fal.ai/models/fal-ai/wan-vace-14b/pose) | Alibaba | video |
-| Wan VACE 14B | [`fal-ai/wan-vace-14b/reframe`](https://fal.ai/models/fal-ai/wan-vace-14b/reframe) | Alibaba | video |
-| Wan VACE Video Edit | [`fal-ai/wan-vace-apps/video-edit`](https://fal.ai/models/fal-ai/wan-vace-apps/video-edit) | Alibaba | video |
-| Wan-2.2 Animate Move | [`fal-ai/wan/v2.2-14b/animate/move`](https://fal.ai/models/fal-ai/wan/v2.2-14b/animate/move) | Alibaba | video |
-| Wan-2.2 Animate Replace | [`fal-ai/wan/v2.2-14b/animate/replace`](https://fal.ai/models/fal-ai/wan/v2.2-14b/animate/replace) | Alibaba | video |
-| Workflow Utilities Auto Subtitle | [`fal-ai/workflow-utilities/auto-subtitle`](https://fal.ai/models/fal-ai/workflow-utilities/auto-subtitle) | — | video |
-| Workflow Utilities Blend Video | [`fal-ai/workflow-utilities/blend-video`](https://fal.ai/models/fal-ai/workflow-utilities/blend-video) | — | video |
-| Workflow Utilities Reverse Video | [`fal-ai/workflow-utilities/reverse-video`](https://fal.ai/models/fal-ai/workflow-utilities/reverse-video) | — | video |
-| Workflow Utilities Scale Video | [`fal-ai/workflow-utilities/scale-video`](https://fal.ai/models/fal-ai/workflow-utilities/scale-video) | — | video |
-| Workflow Utilities Trim Video | [`fal-ai/workflow-utilities/trim-video`](https://fal.ai/models/fal-ai/workflow-utilities/trim-video) | — | video |
-
-
-
-
-text-to-video — 130 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| AnimateDiff | [`fal-ai/fast-animatediff/text-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/text-to-video) | — | video |
-| AnimateDiff Turbo | [`fal-ai/fast-animatediff/turbo/text-to-video`](https://fal.ai/models/fal-ai/fast-animatediff/turbo/text-to-video) | — | video |
-| Avatars | [`veed/avatars/text-to-video`](https://fal.ai/models/veed/avatars/text-to-video) | Veed | video |
-| Avatars Text to Video | [`argil/avatars/text-to-video`](https://fal.ai/models/argil/avatars/text-to-video) | Argil AI | video |
-| Bernini-R Text to Video | [`fal-ai/bernini-r/text-to-video`](https://fal.ai/models/fal-ai/bernini-r/text-to-video) | Bytedance | video |
-| Bytedance Seedance V1 Pro Fast Text To Video | [`fal-ai/bytedance/seedance/v1/pro/fast/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/fast/text-to-video) | Bytedance | video |
-| Bytedance Seedance V1.5 Pro Text To Video | [`fal-ai/bytedance/seedance/v1.5/pro/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1.5/pro/text-to-video) | Bytedance | video |
-| CogVideoX-5B | [`fal-ai/cogvideox-5b`](https://fal.ai/models/fal-ai/cogvideox-5b) | — | video |
-| Cosmos Predict 2.5 2B | [`fal-ai/cosmos-predict-2.5/text-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/text-to-video) | NVIDIA | video |
-| Cosmos Predict 2.5 2B Distilled | [`fal-ai/cosmos-predict-2.5/distilled/text-to-video`](https://fal.ai/models/fal-ai/cosmos-predict-2.5/distilled/text-to-video) | NVIDIA | video |
-| Fabric 1.0 | [`veed/fabric-1.0/text`](https://fal.ai/models/veed/fabric-1.0/text) | Veed | video |
-| Gemini Omni Flash | [`google/gemini-omni-flash`](https://fal.ai/models/google/gemini-omni-flash) | Google | video |
-| Grok Imagine Video | [`xai/grok-imagine-video/text-to-video`](https://fal.ai/models/xai/grok-imagine-video/text-to-video) | xAI | video |
-| Happy Horse | [`alibaba/happy-horse/text-to-video`](https://fal.ai/models/alibaba/happy-horse/text-to-video) | Alibaba | video |
-| Happy Horse 1.1 Text to Video | [`alibaba/happy-horse/v1.1/text-to-video`](https://fal.ai/models/alibaba/happy-horse/v1.1/text-to-video) | Alibaba | video |
-| Heygen | [`fal-ai/heygen/avatar3/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar3/digital-twin) | Heygen | video |
-| Heygen | [`fal-ai/heygen/avatar4/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar4/digital-twin) | Heygen | video |
-| Heygen | [`fal-ai/heygen/v2/video-agent`](https://fal.ai/models/fal-ai/heygen/v2/video-agent) | Heygen | video |
-| Heygen v5 Digital Twin | [`fal-ai/heygen/avatar5/digital-twin`](https://fal.ai/models/fal-ai/heygen/avatar5/digital-twin) | Heygen | video |
-| Heygen Video Agent | [`fal-ai/heygen/v3/video-agent`](https://fal.ai/models/fal-ai/heygen/v3/video-agent) | Heygen | video |
-| Hunyuan Video | [`fal-ai/hunyuan-video`](https://fal.ai/models/fal-ai/hunyuan-video) | Tencent | video |
-| Hunyuan Video V1.5 | [`fal-ai/hunyuan-video-v1.5/text-to-video`](https://fal.ai/models/fal-ai/hunyuan-video-v1.5/text-to-video) | Tencent | video |
-| Infinitalk | [`fal-ai/infinitalk/single-text`](https://fal.ai/models/fal-ai/infinitalk/single-text) | — | video |
-| Infinity Star | [`fal-ai/infinity-star/text-to-video`](https://fal.ai/models/fal-ai/infinity-star/text-to-video) | — | video |
-| Kandinsky5 | [`fal-ai/kandinsky5/text-to-video`](https://fal.ai/models/fal-ai/kandinsky5/text-to-video) | Kandinsky | video |
-| Kandinsky5 | [`fal-ai/kandinsky5/text-to-video/distill`](https://fal.ai/models/fal-ai/kandinsky5/text-to-video/distill) | Kandinsky | video |
-| Kandinsky5 Pro | [`fal-ai/kandinsky5-pro/text-to-video`](https://fal.ai/models/fal-ai/kandinsky5-pro/text-to-video) | Kandinsky | video |
-| Kling 1.0 | [`fal-ai/kling-video/v1/standard/effects`](https://fal.ai/models/fal-ai/kling-video/v1/standard/effects) | Kling | video |
-| Kling 1.0 | [`fal-ai/kling-video/v1/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1/standard/text-to-video) | Kling | video |
-| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/effects`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/effects) | Kling | video |
-| Kling 1.5 | [`fal-ai/kling-video/v1.5/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.5/pro/text-to-video) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/effects`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/effects) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/pro/text-to-video) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/effects`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/effects) | Kling | video |
-| Kling 1.6 | [`fal-ai/kling-video/v1.6/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v1.6/standard/text-to-video) | Kling | video |
-| Kling 2.0 Master | [`fal-ai/kling-video/v2/master/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2/master/text-to-video) | Kling | video |
-| Kling 2.1 Master | [`fal-ai/kling-video/v2.1/master/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.1/master/text-to-video) | Kling | video |
-| Kling LipSync Audio-to-Video | [`fal-ai/kling-video/lipsync/audio-to-video`](https://fal.ai/models/fal-ai/kling-video/lipsync/audio-to-video) | Kling | video |
-| Kling LipSync Text-to-Video | [`fal-ai/kling-video/lipsync/text-to-video`](https://fal.ai/models/fal-ai/kling-video/lipsync/text-to-video) | Kling | video |
-| Kling O3 Text to Video [Pro] | [`fal-ai/kling-video/o3/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/pro/text-to-video) | Kling | video |
-| Kling O3 Text to Video [Standard] | [`fal-ai/kling-video/o3/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/standard/text-to-video) | Kling | video |
-| Kling v2.5 Text to Video | [`fal-ai/kling-video/v2.5-turbo/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.5-turbo/pro/text-to-video) | Kling | video |
-| Kling Video | [`fal-ai/kling-video/o3/4k/text-to-video`](https://fal.ai/models/fal-ai/kling-video/o3/4k/text-to-video) | Kling | video |
-| Kling Video v2.6 Text to Video | [`fal-ai/kling-video/v2.6/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v2.6/pro/text-to-video) | Kling | video |
-| Kling Video V3 Standard Turbo Text to Video | [`fal-ai/kling-video/v3/turbo/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/standard/text-to-video) | Kling | video |
-| Kling Video V3 Text to Video 4K | [`fal-ai/kling-video/v3/4k/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/4k/text-to-video) | Kling | video |
-| Kling Video v3 Text to Video [Pro] | [`fal-ai/kling-video/v3/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/pro/text-to-video) | Kling | video |
-| Kling Video v3 Text to Video [Standard] | [`fal-ai/kling-video/v3/standard/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/standard/text-to-video) | Kling | video |
-| Kling Video V3 Turbo Pro Text to Video | [`fal-ai/kling-video/v3/turbo/pro/text-to-video`](https://fal.ai/models/fal-ai/kling-video/v3/turbo/pro/text-to-video) | Kling | video |
-| Krea Wan 14b- Text to Video | [`fal-ai/krea-wan-14b/text-to-video`](https://fal.ai/models/fal-ai/krea-wan-14b/text-to-video) | — | video |
-| LongCat Video | [`fal-ai/longcat-video/text-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/text-to-video/480p) | — | video |
-| LongCat Video | [`fal-ai/longcat-video/text-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/text-to-video/720p) | — | video |
-| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/text-to-video/480p`](https://fal.ai/models/fal-ai/longcat-video/distilled/text-to-video/480p) | — | video |
-| LongCat Video Distilled | [`fal-ai/longcat-video/distilled/text-to-video/720p`](https://fal.ai/models/fal-ai/longcat-video/distilled/text-to-video/720p) | — | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-video) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-video/lora) | Lightricks | video |
-| LTX 2.3 Video Fast | [`fal-ai/ltx-2.3/text-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2.3/text-to-video/fast) | Lightricks | video |
-| LTX Video (preview) | [`fal-ai/ltx-video`](https://fal.ai/models/fal-ai/ltx-video) | Lightricks | video |
-| LTX Video 2.0 Fast | [`fal-ai/ltx-2/text-to-video/fast`](https://fal.ai/models/fal-ai/ltx-2/text-to-video/fast) | Lightricks | video |
-| LTX Video 2.0 Pro | [`fal-ai/ltx-2/text-to-video`](https://fal.ai/models/fal-ai/ltx-2/text-to-video) | Lightricks | video |
-| LTX Video 2.3 Pro | [`fal-ai/ltx-2.3/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/text-to-video) | Lightricks | video |
-| LTX Video-0.9.5 | [`fal-ai/ltx-video-v095`](https://fal.ai/models/fal-ai/ltx-video-v095) | Lightricks | video |
-| LTX Video-0.9.7 13B Distilled | [`fal-ai/ltx-video-13b-distilled`](https://fal.ai/models/fal-ai/ltx-video-13b-distilled) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/text-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/text-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/text-to-video/lora) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/text-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/text-to-video) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/text-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/text-to-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/text-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/text-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/text-to-video) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/text-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/text-to-video/lora) | Lightricks | video |
-| LTX-Video 13B 0.9.8 Distilled | [`fal-ai/ltxv-13b-098-distilled`](https://fal.ai/models/fal-ai/ltxv-13b-098-distilled) | Lightricks | video |
-| Luma Ray 2 | [`fal-ai/luma-dream-machine/ray-2`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2) | Luma AI | video |
-| Luma Ray 2 Flash | [`fal-ai/luma-dream-machine/ray-2-flash`](https://fal.ai/models/fal-ai/luma-dream-machine/ray-2-flash) | Luma AI | video |
-| Luma Ray 3.2 Text to Video | [`luma/agent/ray/v3.2/text-to-video`](https://fal.ai/models/luma/agent/ray/v3.2/text-to-video) | Luma AI | video |
-| MAGI-1 (Distilled) | [`fal-ai/magi-distilled`](https://fal.ai/models/fal-ai/magi-distilled) | — | video |
-| Marey Realism V1.5 | [`moonvalley/marey/t2v`](https://fal.ai/models/moonvalley/marey/t2v) | Moonvalley | video |
-| MiniMax (Hailuo AI) Video 01 | [`fal-ai/minimax/video-01`](https://fal.ai/models/fal-ai/minimax/video-01) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 Director | [`fal-ai/minimax/video-01-director`](https://fal.ai/models/fal-ai/minimax/video-01-director) | Minimax | video |
-| MiniMax (Hailuo AI) Video 01 Live | [`fal-ai/minimax/video-01-live`](https://fal.ai/models/fal-ai/minimax/video-01-live) | Minimax | video |
-| MiniMax Hailuo 02 [Pro] (Text to Video) | [`fal-ai/minimax/hailuo-02/pro/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/pro/text-to-video) | Minimax | video |
-| MiniMax Hailuo 02 [Standard] (Text to Video) | [`fal-ai/minimax/hailuo-02/standard/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-02/standard/text-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 [Pro] (Text to Video) | [`fal-ai/minimax/hailuo-2.3/pro/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/pro/text-to-video) | Minimax | video |
-| MiniMax Hailuo 2.3 [Standard] (Text to Video) | [`fal-ai/minimax/hailuo-2.3/standard/text-to-video`](https://fal.ai/models/fal-ai/minimax/hailuo-2.3/standard/text-to-video) | Minimax | video |
-| Ovi Text to Video | [`fal-ai/ovi`](https://fal.ai/models/fal-ai/ovi) | — | video |
-| Pika Text to Video (v2.1) | [`fal-ai/pika/v2.1/text-to-video`](https://fal.ai/models/fal-ai/pika/v2.1/text-to-video) | Pika | video |
-| Pika Text to Video (v2.2) | [`fal-ai/pika/v2.2/text-to-video`](https://fal.ai/models/fal-ai/pika/v2.2/text-to-video) | Pika | video |
-| Pika Text to Video Turbo (v2) | [`fal-ai/pika/v2/turbo/text-to-video`](https://fal.ai/models/fal-ai/pika/v2/turbo/text-to-video) | Pika | video |
-| PixVerse C1 Text To Video | [`fal-ai/pixverse/c1/text-to-video`](https://fal.ai/models/fal-ai/pixverse/c1/text-to-video) | Pixverse | video |
-| PixVerse V3.5 Text To Video | [`fal-ai/pixverse/v3.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v3.5/text-to-video) | Pixverse | video |
-| PixVerse V3.5 Text To Video Fast | [`fal-ai/pixverse/v3.5/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v3.5/text-to-video/fast) | Pixverse | video |
-| PixVerse V4 Text To Video | [`fal-ai/pixverse/v4/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v4/text-to-video) | Pixverse | video |
-| PixVerse V4 Text To Video Fast | [`fal-ai/pixverse/v4/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4/text-to-video/fast) | Pixverse | video |
-| PixVerse V4.5 Text To Video | [`fal-ai/pixverse/v4.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v4.5/text-to-video) | Pixverse | video |
-| PixVerse V4.5 Text To Video Fast | [`fal-ai/pixverse/v4.5/text-to-video/fast`](https://fal.ai/models/fal-ai/pixverse/v4.5/text-to-video/fast) | Pixverse | video |
-| PixVerse V5 Text To Video | [`fal-ai/pixverse/v5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5/text-to-video) | Pixverse | video |
-| PixVerse V5.5 Text To Video | [`fal-ai/pixverse/v5.5/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.5/text-to-video) | Pixverse | video |
-| PixVerse V5.6 Text To Video | [`fal-ai/pixverse/v5.6/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v5.6/text-to-video) | Pixverse | video |
-| PixVerse V6 Text To Video | [`fal-ai/pixverse/v6/text-to-video`](https://fal.ai/models/fal-ai/pixverse/v6/text-to-video) | Pixverse | video |
-| Seedance 1.0 Pro | [`fal-ai/bytedance/seedance/v1/pro/text-to-video`](https://fal.ai/models/fal-ai/bytedance/seedance/v1/pro/text-to-video) | Bytedance | video |
-| Seedance 2.0 Fast Text to Video | [`bytedance/seedance-2.0/fast/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/fast/text-to-video) | Bytedance | video |
-| Seedance 2.0 Mini Text to Video | [`bytedance/seedance-2.0/mini/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/mini/text-to-video) | Bytedance | video |
-| Seedance 2.0 Text to Video API | [`bytedance/seedance-2.0/text-to-video`](https://fal.ai/models/bytedance/seedance-2.0/text-to-video) | Bytedance | video |
-| Sora 2 | [`fal-ai/sora-2/text-to-video`](https://fal.ai/models/fal-ai/sora-2/text-to-video) | OpenAI | video |
-| Sora 2 | [`fal-ai/sora-2/text-to-video/pro`](https://fal.ai/models/fal-ai/sora-2/text-to-video/pro) | OpenAI | video |
-| Stable Video Diffusion | [`fal-ai/fast-svd/text-to-video`](https://fal.ai/models/fal-ai/fast-svd/text-to-video) | — | video |
-| Stable Video Diffusion Turbo | [`fal-ai/fast-svd-lcm/text-to-video`](https://fal.ai/models/fal-ai/fast-svd-lcm/text-to-video) | — | video |
-| T2V Turbo - Video Crafter | [`fal-ai/t2v-turbo`](https://fal.ai/models/fal-ai/t2v-turbo) | — | video |
-| Veo 2 | [`fal-ai/veo2`](https://fal.ai/models/fal-ai/veo2) | Google | video |
-| Veo 3 | [`fal-ai/veo3`](https://fal.ai/models/fal-ai/veo3) | Google | video |
-| Veo 3 Fast | [`fal-ai/veo3/fast`](https://fal.ai/models/fal-ai/veo3/fast) | Google | video |
-| Veo 3.1 | [`fal-ai/veo3.1`](https://fal.ai/models/fal-ai/veo3.1) | Google | video |
-| Veo 3.1 Fast | [`fal-ai/veo3.1/fast`](https://fal.ai/models/fal-ai/veo3.1/fast) | Google | video |
-| Veo3.1 Lite Text to Video | [`fal-ai/veo3.1/lite`](https://fal.ai/models/fal-ai/veo3.1/lite) | Google | video |
-| Vidu | [`fal-ai/vidu/q2/text-to-video`](https://fal.ai/models/fal-ai/vidu/q2/text-to-video) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q3/text-to-video`](https://fal.ai/models/fal-ai/vidu/q3/text-to-video) | Vidu | video |
-| Vidu | [`fal-ai/vidu/q3/text-to-video/turbo`](https://fal.ai/models/fal-ai/vidu/q3/text-to-video/turbo) | Vidu | video |
-| Vidu Text to Video | [`fal-ai/vidu/q1/text-to-video`](https://fal.ai/models/fal-ai/vidu/q1/text-to-video) | Vidu | video |
-| Wan | [`fal-ai/wan/v2.2-5b/text-to-video/distill`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video/distill) | Alibaba | video |
-| Wan | [`fal-ai/wan/v2.2-5b/text-to-video/fast-wan`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video/fast-wan) | Alibaba | video |
-| Wan | [`fal-ai/wan/v2.2-a14b/text-to-video/turbo`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video/turbo) | Alibaba | video |
-| Wan 2.5 Text to Video | [`fal-ai/wan-25-preview/text-to-video`](https://fal.ai/models/fal-ai/wan-25-preview/text-to-video) | Alibaba | video |
-| Wan Text to Video | [`fal-ai/wan/v2.7/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.7/text-to-video) | Alibaba | video |
-| Wan v2.2 5B | [`fal-ai/wan/v2.2-5b/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-5b/text-to-video) | Alibaba | video |
-| Wan v2.6 Text to Video | [`wan/v2.6/text-to-video`](https://fal.ai/models/wan/v2.6/text-to-video) | Alibaba | video |
-| Wan-2.1 Pro Text-to-Video | [`fal-ai/wan-pro/text-to-video`](https://fal.ai/models/fal-ai/wan-pro/text-to-video) | Alibaba | video |
-| Wan-2.1 Text-to-Video | [`fal-ai/wan-t2v`](https://fal.ai/models/fal-ai/wan-t2v) | Alibaba | video |
-| Wan-2.1 Text-to-Video with LoRAs | [`fal-ai/wan-t2v-lora`](https://fal.ai/models/fal-ai/wan-t2v-lora) | Alibaba | video |
-| Wan-2.2 Text-to-Video A14B | [`fal-ai/wan/v2.2-a14b/text-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video) | Alibaba | video |
-| Wan-2.2 Text-to-Video A14B with LoRAs | [`fal-ai/wan/v2.2-a14b/text-to-video/lora`](https://fal.ai/models/fal-ai/wan/v2.2-a14b/text-to-video/lora) | Alibaba | video |
-
-
-
-
-training — 52 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| ERNIE-Image Trainer | [`fal-ai/ernie-image-trainer`](https://fal.ai/models/fal-ai/ernie-image-trainer) | Baidu | json |
-| FLUX 2 [klein] 9b Base Trainer | [`fal-ai/flux-2-klein-9b-base-trainer`](https://fal.ai/models/fal-ai/flux-2-klein-9b-base-trainer) | Black Forest Labs | json |
-| Flux 2 Klein 9B Base Trainer | [`fal-ai/flux-2-klein-9b-base-trainer/edit`](https://fal.ai/models/fal-ai/flux-2-klein-9b-base-trainer/edit) | Black Forest Labs | json |
-| FLUX 2 Trainer | [`fal-ai/flux-2-trainer`](https://fal.ai/models/fal-ai/flux-2-trainer) | Black Forest Labs | json |
-| FLUX 2 Trainer Edit | [`fal-ai/flux-2-trainer/edit`](https://fal.ai/models/fal-ai/flux-2-trainer/edit) | Black Forest Labs | json |
-| FLUX 2 Trainer V2 | [`fal-ai/flux-2-trainer-v2`](https://fal.ai/models/fal-ai/flux-2-trainer-v2) | Black Forest Labs | json |
-| FLUX 2 Trainer V2 Edit | [`fal-ai/flux-2-trainer-v2/edit`](https://fal.ai/models/fal-ai/flux-2-trainer-v2/edit) | Black Forest Labs | json |
-| Flux Kontext Trainer | [`fal-ai/flux-kontext-trainer`](https://fal.ai/models/fal-ai/flux-kontext-trainer) | Black Forest Labs | json |
-| Ideogram | [`fal-ai/ideogram/custom-models`](https://fal.ai/models/fal-ai/ideogram/custom-models) | Ideogram | text |
-| Ideogram V4.0q LoRA Trainer | [`ideogram/v4/trainer`](https://fal.ai/models/ideogram/v4/trainer) | Ideogram | json |
-| Krea 2 Trainer | [`fal-ai/krea-2-trainer`](https://fal.ai/models/fal-ai/krea-2-trainer) | Krea | json |
-| LTX 2.3 Trainer (V2) - Audio Inpainting | [`fal-ai/ltx23-trainer-v2/audio-inpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-inpaint) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Audio+Video Reference IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/av2av`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/av2av) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Audio+Video Reference Transformation | [`fal-ai/ltx23-trainer-v2/av2av`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/av2av) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Audio-to-Audio | [`fal-ai/ltx23-trainer-v2/a2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/a2a) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Audio-to-Audio IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/a2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/a2a) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Audio-to-Video | [`fal-ai/ltx23-trainer-v2/a2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/a2v) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Backward Audio Extension | [`fal-ai/ltx23-trainer-v2/audio-extend-suffix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-extend-suffix) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Backward Video Extension | [`fal-ai/ltx23-trainer-v2/extend-suffix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/extend-suffix) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Forward Audio Extension | [`fal-ai/ltx23-trainer-v2/audio-extend-prefix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/audio-extend-prefix) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Forward Video Extension | [`fal-ai/ltx23-trainer-v2/extend-prefix`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/extend-prefix) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Image-to-Video | [`fal-ai/ltx23-trainer-v2/i2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/i2v) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Keyframe Interpolation | [`fal-ai/ltx23-trainer-v2/interpolate`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/interpolate) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Masked Audio+Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/av2av-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/av2av-masked) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Masked Audio+Video Transformation | [`fal-ai/ltx23-trainer-v2/av2av-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/av2av-masked) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Masked Video-to-Video | [`fal-ai/ltx23-trainer-v2/v2v-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2v-masked) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Masked Video-to-Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/v2v-masked`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/v2v-masked) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Spatial Outpainting | [`fal-ai/ltx23-trainer-v2/outpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/outpaint) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Text-to-Audio | [`fal-ai/ltx23-trainer-v2/t2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/t2a) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Text-to-Video | [`fal-ai/ltx23-trainer-v2/t2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/t2v) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Video Inpainting | [`fal-ai/ltx23-trainer-v2/inpaint`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/inpaint) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Video-to-Audio | [`fal-ai/ltx23-trainer-v2/v2a`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2a) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Video-to-Video | [`fal-ai/ltx23-trainer-v2/v2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/v2v) | Lightricks | video |
-| LTX 2.3 Trainer (V2) - Video-to-Video IC-LoRA | [`fal-ai/ltx23-trainer-v2/ic-lora/v2v`](https://fal.ai/models/fal-ai/ltx23-trainer-v2/ic-lora/v2v) | Lightricks | video |
-| LTX-2.3 22B Video to Video Trainer | [`fal-ai/ltx23-v2v-trainer`](https://fal.ai/models/fal-ai/ltx23-v2v-trainer) | Lightricks | video |
-| LTX-2.3 22B Video Trainer | [`fal-ai/ltx23-video-trainer`](https://fal.ai/models/fal-ai/ltx23-video-trainer) | Lightricks | video |
-| Phota Create Profile | [`fal-ai/phota/create-profile`](https://fal.ai/models/fal-ai/phota/create-profile) | Phota | text |
-| Qwen Image 2512 Trainer | [`fal-ai/qwen-image-2512-trainer`](https://fal.ai/models/fal-ai/qwen-image-2512-trainer) | Alibaba | json |
-| Qwen Image Edit 2509 Trainer | [`fal-ai/qwen-image-edit-2509-trainer`](https://fal.ai/models/fal-ai/qwen-image-edit-2509-trainer) | Alibaba | json |
-| Recraft V3 Create Style | [`fal-ai/recraft/v3/create-style`](https://fal.ai/models/fal-ai/recraft/v3/create-style) | Recraft | text |
-| Stable Audio 3 Trainer | [`fal-ai/stable-audio-3-trainer`](https://fal.ai/models/fal-ai/stable-audio-3-trainer) | Stability AI | json |
-| Train Flux LoRA | [`fal-ai/flux-lora-fast-training`](https://fal.ai/models/fal-ai/flux-lora-fast-training) | Black Forest Labs | json |
-| Train Flux LoRAs For Portraits | [`fal-ai/flux-lora-portrait-trainer`](https://fal.ai/models/fal-ai/flux-lora-portrait-trainer) | Black Forest Labs | json |
-| Turbo Flux Trainer | [`fal-ai/turbo-flux-trainer`](https://fal.ai/models/fal-ai/turbo-flux-trainer) | Black Forest Labs | json |
-| Wan 2.2 14B Image Trainer | [`fal-ai/wan-22-image-trainer`](https://fal.ai/models/fal-ai/wan-22-image-trainer) | Alibaba | json |
-| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/i2v-720p`](https://fal.ai/models/fal-ai/wan-trainer/i2v-720p) | Alibaba | json |
-| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/t2v`](https://fal.ai/models/fal-ai/wan-trainer/t2v) | Alibaba | json |
-| Wan-2.1 LoRA Trainer | [`fal-ai/wan-trainer/t2v-14b`](https://fal.ai/models/fal-ai/wan-trainer/t2v-14b) | Alibaba | json |
-| Wan-2.2 LoRA Trainer | [`fal-ai/wan-22-trainer/i2v-a14b`](https://fal.ai/models/fal-ai/wan-22-trainer/i2v-a14b) | Alibaba | json |
-| Wan-2.2 LoRA Trainer | [`fal-ai/wan-22-trainer/t2v-a14b`](https://fal.ai/models/fal-ai/wan-22-trainer/t2v-a14b) | Alibaba | json |
-| Z Image Trainer | [`fal-ai/z-image-trainer`](https://fal.ai/models/fal-ai/z-image-trainer) | Alibaba | json |
-| Z Image Turbo Trainer V2 | [`fal-ai/z-image-turbo-trainer-v2`](https://fal.ai/models/fal-ai/z-image-turbo-trainer-v2) | Alibaba | json |
-
-
-
-
-text-to-audio — 45 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| ACE Step | [`fal-ai/ace-step`](https://fal.ai/models/fal-ai/ace-step) | — | audio |
-| ACE Step Prompt To Audio | [`fal-ai/ace-step/prompt-to-audio`](https://fal.ai/models/fal-ai/ace-step/prompt-to-audio) | — | audio |
-| CSM-1B | [`fal-ai/csm-1b`](https://fal.ai/models/fal-ai/csm-1b) | — | audio |
-| DiffRhythm: Lyrics to Song | [`fal-ai/diffrhythm`](https://fal.ai/models/fal-ai/diffrhythm) | — | audio |
-| Elevenlabs | [`fal-ai/elevenlabs/text-to-dialogue/eleven-v3`](https://fal.ai/models/fal-ai/elevenlabs/text-to-dialogue/eleven-v3) | ElevenLabs | audio |
-| Elevenlabs Music | [`fal-ai/elevenlabs/music`](https://fal.ai/models/fal-ai/elevenlabs/music) | ElevenLabs | audio |
-| Elevenlabs Sound Effects V2 | [`fal-ai/elevenlabs/sound-effects/v2`](https://fal.ai/models/fal-ai/elevenlabs/sound-effects/v2) | ElevenLabs | audio |
-| Elevenlabs Tts Eleven V3 | [`fal-ai/elevenlabs/tts/eleven-v3`](https://fal.ai/models/fal-ai/elevenlabs/tts/eleven-v3) | ElevenLabs | audio |
-| ElevenLabs TTS Multilingual v2 | [`fal-ai/elevenlabs/tts/multilingual-v2`](https://fal.ai/models/fal-ai/elevenlabs/tts/multilingual-v2) | ElevenLabs | audio |
-| F5 TTS | [`fal-ai/f5-tts`](https://fal.ai/models/fal-ai/f5-tts) | — | json |
-| Gemini TTS | [`fal-ai/gemini-tts`](https://fal.ai/models/fal-ai/gemini-tts) | Google | audio |
-| Kokoro TTS | [`fal-ai/kokoro/american-english`](https://fal.ai/models/fal-ai/kokoro/american-english) | — | audio |
-| Kokoro TTS (Brazilian Portuguese) | [`fal-ai/kokoro/brazilian-portuguese`](https://fal.ai/models/fal-ai/kokoro/brazilian-portuguese) | — | audio |
-| Kokoro TTS (British English) | [`fal-ai/kokoro/british-english`](https://fal.ai/models/fal-ai/kokoro/british-english) | — | audio |
-| Kokoro TTS (French) | [`fal-ai/kokoro/french`](https://fal.ai/models/fal-ai/kokoro/french) | — | audio |
-| Kokoro TTS (Hindi) | [`fal-ai/kokoro/hindi`](https://fal.ai/models/fal-ai/kokoro/hindi) | — | audio |
-| Kokoro TTS (Italian) | [`fal-ai/kokoro/italian`](https://fal.ai/models/fal-ai/kokoro/italian) | — | audio |
-| Kokoro TTS (Japanese) | [`fal-ai/kokoro/japanese`](https://fal.ai/models/fal-ai/kokoro/japanese) | — | audio |
-| Kokoro TTS (Mandarin Chinese) | [`fal-ai/kokoro/mandarin-chinese`](https://fal.ai/models/fal-ai/kokoro/mandarin-chinese) | — | audio |
-| Kokoro TTS (Spanish) | [`fal-ai/kokoro/spanish`](https://fal.ai/models/fal-ai/kokoro/spanish) | — | audio |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-audio`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-audio) | Lightricks | audio |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/text-to-audio/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/text-to-audio/lora) | Lightricks | audio |
-| Lyria 3 Pro | [`fal-ai/lyria3/pro`](https://fal.ai/models/fal-ai/lyria3/pro) | Google | audio |
-| Lyria2 | [`fal-ai/lyria2`](https://fal.ai/models/fal-ai/lyria2) | Google | audio |
-| Lyria3 | [`fal-ai/lyria3`](https://fal.ai/models/fal-ai/lyria3) | Google | audio |
-| MiniMax (Hailuo AI) Music | [`fal-ai/minimax-music`](https://fal.ai/models/fal-ai/minimax-music) | Minimax | audio |
-| MiniMax (Hailuo AI) Music v1.5 | [`fal-ai/minimax-music/v1.5`](https://fal.ai/models/fal-ai/minimax-music/v1.5) | Minimax | audio |
-| Minimax Music | [`fal-ai/minimax-music/v2`](https://fal.ai/models/fal-ai/minimax-music/v2) | Minimax | audio |
-| Minimax Music 2.5 | [`fal-ai/minimax-music/v2.5`](https://fal.ai/models/fal-ai/minimax-music/v2.5) | Minimax | audio |
-| Minimax Music 2.6 | [`fal-ai/minimax-music/v2.6`](https://fal.ai/models/fal-ai/minimax-music/v2.6) | Minimax | audio |
-| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/text-to-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/text-to-audio) | Mirelo AI | audio |
-| MMAudio V2 Text to Audio | [`fal-ai/mmaudio-v2/text-to-audio`](https://fal.ai/models/fal-ai/mmaudio-v2/text-to-audio) | — | audio |
-| music generator | [`cassetteai/music-generator`](https://fal.ai/models/cassetteai/music-generator) | Cassette AI | json |
-| Seed Audio 1.0 | [`bytedance/seed-audio-1.0`](https://fal.ai/models/bytedance/seed-audio-1.0) | Bytedance | audio |
-| Sonilo V1.1 Text to Music | [`sonilo/v1.1/text-to-music`](https://fal.ai/models/sonilo/v1.1/text-to-music) | Sonilo | audio |
-| Sound Effects Generator | [`cassetteai/sound-effects-generator`](https://fal.ai/models/cassetteai/sound-effects-generator) | Cassette AI | json |
-| Stable Audio 2.5 | [`fal-ai/stable-audio-25/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-25/text-to-audio) | Stability AI | audio |
-| Stable Audio 3 | [`fal-ai/stable-audio-3/medium/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/text-to-audio) | Stability AI | audio |
-| Stable Audio 3 | [`fal-ai/stable-audio-3/small/music/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/text-to-audio) | Stability AI | audio |
-| Stable Audio 3 Medium Base Text to Audio | [`fal-ai/stable-audio-3/medium/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/text-to-audio) | Stability AI | audio |
-| Stable Audio 3 Small Music Text to Audio | [`fal-ai/stable-audio-3/small/music/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/text-to-audio) | Stability AI | audio |
-| Stable Audio 3 Small SFX Base Text to Audio | [`fal-ai/stable-audio-3/small/sfx/base/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/text-to-audio) | — | audio |
-| Stable Audio 3 Small SFX Text to Audio | [`fal-ai/stable-audio-3/small/sfx/text-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/text-to-audio) | Stability AI | audio |
-| Stable Audio Open | [`fal-ai/stable-audio`](https://fal.ai/models/fal-ai/stable-audio) | Stability AI | json |
-| Zonos-Audio-Clone | [`fal-ai/zonos`](https://fal.ai/models/fal-ai/zonos) | — | audio |
-
-
-
-
-audio-to-audio — 43 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| ACE Step Audio Inpaint | [`fal-ai/ace-step/audio-inpaint`](https://fal.ai/models/fal-ai/ace-step/audio-inpaint) | — | audio |
-| ACE Step Audio Outpaint | [`fal-ai/ace-step/audio-outpaint`](https://fal.ai/models/fal-ai/ace-step/audio-outpaint) | — | audio |
-| ACE Step Audio To Audio | [`fal-ai/ace-step/audio-to-audio`](https://fal.ai/models/fal-ai/ace-step/audio-to-audio) | — | audio |
-| Audio Understanding | [`fal-ai/audio-understanding`](https://fal.ai/models/fal-ai/audio-understanding) | — | text |
-| DeepFilterNet 3 | [`fal-ai/deepfilternet3`](https://fal.ai/models/fal-ai/deepfilternet3) | — | json |
-| Demucs | [`fal-ai/demucs`](https://fal.ai/models/fal-ai/demucs) | — | json |
-| Dia Tts | [`fal-ai/dia-tts/voice-clone`](https://fal.ai/models/fal-ai/dia-tts/voice-clone) | — | audio |
-| ElevenLabs Audio Isolation | [`fal-ai/elevenlabs/audio-isolation`](https://fal.ai/models/fal-ai/elevenlabs/audio-isolation) | ElevenLabs | audio |
-| ElevenLabs Voice Changer | [`fal-ai/elevenlabs/voice-changer`](https://fal.ai/models/fal-ai/elevenlabs/voice-changer) | ElevenLabs | audio |
-| FFmpeg API [Merge Audios] | [`fal-ai/ffmpeg-api/merge-audios`](https://fal.ai/models/fal-ai/ffmpeg-api/merge-audios) | — | audio |
-| Kling Video Create Voice | [`fal-ai/kling-video/create-voice`](https://fal.ai/models/fal-ai/kling-video/create-voice) | Kling | text |
-| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/extend-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/extend-audio) | Mirelo AI | audio |
-| Mirelo SFX1.6 | [`mirelo-ai/sfx1.6/inpaint-audio`](https://fal.ai/models/mirelo-ai/sfx1.6/inpaint-audio) | Mirelo AI | audio |
-| Personaplex | [`fal-ai/personaplex`](https://fal.ai/models/fal-ai/personaplex) | — | audio |
-| Personaplex | [`fal-ai/personaplex/realtime`](https://fal.ai/models/fal-ai/personaplex/realtime) | — | audio |
-| Qwen 3 TTS - Clone Voice [0.6B] | [`fal-ai/qwen-3-tts/clone-voice/0.6b`](https://fal.ai/models/fal-ai/qwen-3-tts/clone-voice/0.6b) | Alibaba | json |
-| Qwen 3 TTS - Clone Voice [1.7B] | [`fal-ai/qwen-3-tts/clone-voice/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/clone-voice/1.7b) | Alibaba | json |
-| Sam Audio | [`fal-ai/sam-audio/separate`](https://fal.ai/models/fal-ai/sam-audio/separate) | — | json |
-| Sam Audio | [`fal-ai/sam-audio/span-separate`](https://fal.ai/models/fal-ai/sam-audio/span-separate) | — | json |
-| Stable Audio 2.5 | [`fal-ai/stable-audio-25/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-25/audio-to-audio) | Stability AI | audio |
-| Stable Audio 25 | [`fal-ai/stable-audio-25/inpaint`](https://fal.ai/models/fal-ai/stable-audio-25/inpaint) | Stability AI | audio |
-| Stable Audio 3 | [`fal-ai/stable-audio-3/small/music/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-to-audio) | Stability AI | audio |
-| Stable Audio 3 | [`fal-ai/stable-audio-3/small/sfx/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-to-audio) | Stability AI | audio |
-| Stable Audio 3 Medium Audio Inpainting | [`fal-ai/stable-audio-3/medium/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Medium Audio Outpainting | [`fal-ai/stable-audio-3/medium/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Medium Audio to Audio | [`fal-ai/stable-audio-3/medium/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/audio-to-audio) | Stability AI | audio |
-| Stable Audio 3 Medium Base Audio Inpainting | [`fal-ai/stable-audio-3/medium/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Medium Base Audio Outpainting | [`fal-ai/stable-audio-3/medium/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Medium Base Audio to Audio | [`fal-ai/stable-audio-3/medium/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/medium/base/audio-to-audio) | Stability AI | audio |
-| Stable Audio 3 Small Music Audio Inpainting | [`fal-ai/stable-audio-3/small/music/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Small Music Audio Outpainting | [`fal-ai/stable-audio-3/small/music/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Small Music Base Audio Inpainting | [`fal-ai/stable-audio-3/small/music/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Small Music Base Audio Outpainting | [`fal-ai/stable-audio-3/small/music/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Small Music Base Audio to Audio | [`fal-ai/stable-audio-3/small/music/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/music/base/audio-to-audio) | Stability AI | audio |
-| Stable Audio 3 Small SFX Audio Inpainting | [`fal-ai/stable-audio-3/small/sfx/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Small SFX Audio Outpainting | [`fal-ai/stable-audio-3/small/sfx/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Small SFX Base Audio Inpainting | [`fal-ai/stable-audio-3/small/sfx/base/audio-inpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-inpainting) | Stability AI | audio |
-| Stable Audio 3 Small SFX Base Audio Outpainting | [`fal-ai/stable-audio-3/small/sfx/base/audio-outpainting`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-outpainting) | Stability AI | audio |
-| Stable Audio 3 Small SFX Base Audio to Audio | [`fal-ai/stable-audio-3/small/sfx/base/audio-to-audio`](https://fal.ai/models/fal-ai/stable-audio-3/small/sfx/base/audio-to-audio) | Stability AI | audio |
-| Tada | [`fal-ai/tada/3b/text-to-speech`](https://fal.ai/models/fal-ai/tada/3b/text-to-speech) | — | audio |
-| Tada TTS 1B | [`fal-ai/tada/1b/text-to-speech`](https://fal.ai/models/fal-ai/tada/1b/text-to-speech) | Hume AI | audio |
-| Workflow Utilities Audio Compressor | [`fal-ai/workflow-utilities/audio-compressor`](https://fal.ai/models/fal-ai/workflow-utilities/audio-compressor) | — | audio |
-| Workflow Utilities Impulse Response | [`fal-ai/workflow-utilities/impulse-response`](https://fal.ai/models/fal-ai/workflow-utilities/impulse-response) | — | audio |
-
-
-
-
-image-to-3d — 36 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Hunyuan 3D Pro Image to 3D | [`fal-ai/hunyuan-3d/v3.1/pro/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/pro/image-to-3d) | Tencent | file |
-| Hunyuan 3D Rapid Image to 3D | [`fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d) | Tencent | file |
-| Hunyuan World | [`fal-ai/hunyuan_world/image-to-world`](https://fal.ai/models/fal-ai/hunyuan_world/image-to-world) | Tencent | json |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2`](https://fal.ai/models/fal-ai/hunyuan3d/v2) | Tencent | file |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2/mini`](https://fal.ai/models/fal-ai/hunyuan3d/v2/mini) | Tencent | file |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2/mini/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/mini/turbo) | Tencent | file |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2/multi-view`](https://fal.ai/models/fal-ai/hunyuan3d/v2/multi-view) | Tencent | file |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2/multi-view/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/multi-view/turbo) | Tencent | file |
-| Hunyuan3D | [`fal-ai/hunyuan3d/v2/turbo`](https://fal.ai/models/fal-ai/hunyuan3d/v2/turbo) | Tencent | file |
-| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/image-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/image-to-3d) | Tencent | file |
-| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/sketch-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/sketch-to-3d) | Tencent | file |
-| Hyper3d | [`fal-ai/hyper3d/rodin/v2`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2) | Hyper3D | file |
-| Hyper3D - Rodin V2.5 - Image to 3D | [`fal-ai/hyper3d/rodin/v2.5`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5) | Hyper3D | file |
-| Hyper3D - Rodin V2.5 - Image to 3D - Fast | [`fal-ai/hyper3d/rodin/v2.5/fast`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/fast) | Hyper3D | file |
-| Hyper3D Rodin | [`fal-ai/hyper3d/rodin`](https://fal.ai/models/fal-ai/hyper3d/rodin) | Hyper3D | file |
-| Meshy 5 Multi | [`fal-ai/meshy/v5/multi-image-to-3d`](https://fal.ai/models/fal-ai/meshy/v5/multi-image-to-3d) | Meshy | file |
-| Meshy 6 | [`fal-ai/meshy/v6/image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/image-to-3d) | Meshy | file |
-| Meshy 6 - Multi Image To 3D | [`fal-ai/meshy/v6/multi-image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/multi-image-to-3d) | Meshy | file |
-| Meshy 6 Preview | [`fal-ai/meshy/v6-preview/image-to-3d`](https://fal.ai/models/fal-ai/meshy/v6-preview/image-to-3d) | Meshy | file |
-| Pixal3d | [`fal-ai/pixal3d`](https://fal.ai/models/fal-ai/pixal3d) | — | file |
-| ReconViaGen 0.5 | [`fal-ai/reconviagen-0.5`](https://fal.ai/models/fal-ai/reconviagen-0.5) | — | file |
-| Sam 3 | [`fal-ai/sam-3/3d-body`](https://fal.ai/models/fal-ai/sam-3/3d-body) | — | file |
-| Sam 3 | [`fal-ai/sam-3/3d-objects`](https://fal.ai/models/fal-ai/sam-3/3d-objects) | — | file |
-| Trellis | [`fal-ai/trellis`](https://fal.ai/models/fal-ai/trellis) | Trellis | file |
-| Trellis | [`fal-ai/trellis/multi`](https://fal.ai/models/fal-ai/trellis/multi) | Trellis | file |
-| Trellis 2 | [`fal-ai/trellis-2`](https://fal.ai/models/fal-ai/trellis-2) | Trellis | file |
-| Trellis 2 | [`fal-ai/trellis-2/retexture`](https://fal.ai/models/fal-ai/trellis-2/retexture) | Trellis | file |
-| TRELLIS.2 LoRA Inference | [`fal-ai/trellis-2-lora`](https://fal.ai/models/fal-ai/trellis-2-lora) | Trellis | file |
-| TRELLIS.2 Trainer | [`fal-ai/trellis-2-lora-trainer`](https://fal.ai/models/fal-ai/trellis-2-lora-trainer) | Trellis | json |
-| Tripo H3.1 Image to 3D | [`tripo3d/h3.1/image-to-3d`](https://fal.ai/models/tripo3d/h3.1/image-to-3d) | Tripo3D | file |
-| Tripo H3.1 Multiview to 3D | [`tripo3d/h3.1/multiview-to-3d`](https://fal.ai/models/tripo3d/h3.1/multiview-to-3d) | Tripo3D | file |
-| Tripo P1 Image to 3D | [`tripo3d/p1/image-to-3d`](https://fal.ai/models/tripo3d/p1/image-to-3d) | Tripo3D | file |
-| Tripo3D | [`tripo3d/tripo/v2.5/image-to-3d`](https://fal.ai/models/tripo3d/tripo/v2.5/image-to-3d) | Tripo3D | file |
-| Tripo3D | [`tripo3d/tripo/v2.5/multiview-to-3d`](https://fal.ai/models/tripo3d/tripo/v2.5/multiview-to-3d) | Tripo3D | file |
-| Triposplat | [`tripo3d/triposplat`](https://fal.ai/models/tripo3d/triposplat) | Tripo3D | file |
-| TripoSR | [`fal-ai/triposr`](https://fal.ai/models/fal-ai/triposr) | — | file |
-
-
-
-
-text-to-speech — 33 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Async Text to Speech Pro V1.0 | [`async/tts-pro/v1.0`](https://fal.ai/models/async/tts-pro/v1.0) | Async | audio |
-| Bytedance Seed Speech Text to Speech | [`fal-ai/bytedance/seed-speech/tts/v2`](https://fal.ai/models/fal-ai/bytedance/seed-speech/tts/v2) | Bytedance | audio |
-| Chatterbox | [`fal-ai/chatterbox/text-to-speech`](https://fal.ai/models/fal-ai/chatterbox/text-to-speech) | Resemble AI | audio |
-| Chatterbox | [`fal-ai/chatterbox/text-to-speech/multilingual`](https://fal.ai/models/fal-ai/chatterbox/text-to-speech/multilingual) | Resemble AI | audio |
-| Chatterboxhd | [`resemble-ai/chatterboxhd/text-to-speech`](https://fal.ai/models/resemble-ai/chatterboxhd/text-to-speech) | Resemble AI | audio |
-| Dia | [`fal-ai/dia-tts`](https://fal.ai/models/fal-ai/dia-tts) | — | audio |
-| ElevenLabs TTS Turbo v2.5 | [`fal-ai/elevenlabs/tts/turbo-v2.5`](https://fal.ai/models/fal-ai/elevenlabs/tts/turbo-v2.5) | ElevenLabs | audio |
-| Gemini 3.1 Flash Tts | [`fal-ai/gemini-3.1-flash-tts`](https://fal.ai/models/fal-ai/gemini-3.1-flash-tts) | Google | audio |
-| Index TTS 2.0 | [`fal-ai/index-tts-2/text-to-speech`](https://fal.ai/models/fal-ai/index-tts-2/text-to-speech) | — | audio |
-| Inworld TTS-1.5 Max | [`fal-ai/inworld-tts`](https://fal.ai/models/fal-ai/inworld-tts) | Inworld | audio |
-| Kling TTS | [`fal-ai/kling-video/v1/tts`](https://fal.ai/models/fal-ai/kling-video/v1/tts) | Kling | audio |
-| Maya | [`fal-ai/maya/batch`](https://fal.ai/models/fal-ai/maya/batch) | — | audio |
-| Maya | [`fal-ai/maya/stream`](https://fal.ai/models/fal-ai/maya/stream) | — | json |
-| Maya1 | [`fal-ai/maya`](https://fal.ai/models/fal-ai/maya) | — | audio |
-| Minimax | [`fal-ai/minimax/preview/speech-2.5-hd`](https://fal.ai/models/fal-ai/minimax/preview/speech-2.5-hd) | Minimax | audio |
-| Minimax | [`fal-ai/minimax/preview/speech-2.5-turbo`](https://fal.ai/models/fal-ai/minimax/preview/speech-2.5-turbo) | Minimax | audio |
-| MiniMax Speech 2.6 [HD] | [`fal-ai/minimax/speech-2.6-hd`](https://fal.ai/models/fal-ai/minimax/speech-2.6-hd) | Minimax | audio |
-| MiniMax Speech 2.6 [Turbo] | [`fal-ai/minimax/speech-2.6-turbo`](https://fal.ai/models/fal-ai/minimax/speech-2.6-turbo) | Minimax | audio |
-| MiniMax Speech 2.8 [HD] | [`fal-ai/minimax/speech-2.8-hd`](https://fal.ai/models/fal-ai/minimax/speech-2.8-hd) | Minimax | audio |
-| MiniMax Speech 2.8 [Turbo] | [`fal-ai/minimax/speech-2.8-turbo`](https://fal.ai/models/fal-ai/minimax/speech-2.8-turbo) | Minimax | audio |
-| MiniMax Speech-02 HD | [`fal-ai/minimax/speech-02-hd`](https://fal.ai/models/fal-ai/minimax/speech-02-hd) | Minimax | audio |
-| MiniMax Speech-02 Turbo | [`fal-ai/minimax/speech-02-turbo`](https://fal.ai/models/fal-ai/minimax/speech-02-turbo) | Minimax | audio |
-| MiniMax Voice Cloning | [`fal-ai/minimax/voice-clone`](https://fal.ai/models/fal-ai/minimax/voice-clone) | Minimax | audio |
-| MiniMax Voice Design | [`fal-ai/minimax/voice-design`](https://fal.ai/models/fal-ai/minimax/voice-design) | Minimax | audio |
-| Orpheus TTS | [`fal-ai/orpheus-tts`](https://fal.ai/models/fal-ai/orpheus-tts) | — | audio |
-| Qwen 3 TTS - Text to Speech [0.6B] | [`fal-ai/qwen-3-tts/text-to-speech/0.6b`](https://fal.ai/models/fal-ai/qwen-3-tts/text-to-speech/0.6b) | Alibaba | audio |
-| Qwen 3 TTS - Text to Speech [1.7B] | [`fal-ai/qwen-3-tts/text-to-speech/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/text-to-speech/1.7b) | Alibaba | audio |
-| Qwen 3 TTS - Voice Design [1.7B] | [`fal-ai/qwen-3-tts/voice-design/1.7b`](https://fal.ai/models/fal-ai/qwen-3-tts/voice-design/1.7b) | Alibaba | audio |
-| Vibevoice | [`fal-ai/vibevoice/0.5b`](https://fal.ai/models/fal-ai/vibevoice/0.5b) | — | audio |
-| VibeVoice 1.5B | [`fal-ai/vibevoice`](https://fal.ai/models/fal-ai/vibevoice) | — | audio |
-| VibeVoice 7B | [`fal-ai/vibevoice/7b`](https://fal.ai/models/fal-ai/vibevoice/7b) | — | audio |
-| xAI Text to Speech | [`xai/tts/v1`](https://fal.ai/models/xai/tts/v1) | xAI | audio |
-| Zonos2 Text to Speech | [`fal-ai/zonos2`](https://fal.ai/models/fal-ai/zonos2) | Zyphra | audio |
-
-
-
-
-vision — 33 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Florence 2 Large Caption | [`fal-ai/florence-2-large/caption`](https://fal.ai/models/fal-ai/florence-2-large/caption) | — | text |
-| Florence 2 Large Detailed Caption | [`fal-ai/florence-2-large/detailed-caption`](https://fal.ai/models/fal-ai/florence-2-large/detailed-caption) | — | text |
-| Florence 2 Large OCR | [`fal-ai/florence-2-large/ocr`](https://fal.ai/models/fal-ai/florence-2-large/ocr) | — | text |
-| Florence 2 Large Region To Category | [`fal-ai/florence-2-large/region-to-category`](https://fal.ai/models/fal-ai/florence-2-large/region-to-category) | — | text |
-| Florence-2 Large | [`fal-ai/florence-2-large/more-detailed-caption`](https://fal.ai/models/fal-ai/florence-2-large/more-detailed-caption) | — | text |
-| Florence-2 Large | [`fal-ai/florence-2-large/region-to-description`](https://fal.ai/models/fal-ai/florence-2-large/region-to-description) | — | text |
-| GOT OCR 2.0 | [`fal-ai/got-ocr/v2`](https://fal.ai/models/fal-ai/got-ocr/v2) | — | json |
-| Isaac 0.1 | [`perceptron/isaac-01`](https://fal.ai/models/perceptron/isaac-01) | Perceptron | json |
-| LLaVA v1.6 34B | [`fal-ai/llava-next`](https://fal.ai/models/fal-ai/llava-next) | — | json |
-| Marlin | [`fal-ai/marlin`](https://fal.ai/models/fal-ai/marlin) | — | json |
-| Marlin Find | [`fal-ai/marlin/find`](https://fal.ai/models/fal-ai/marlin/find) | — | json |
-| Moondream | [`fal-ai/moondream/batched`](https://fal.ai/models/fal-ai/moondream/batched) | — | json |
-| Moondream 3 Preview [Query] | [`fal-ai/moondream3-preview/query`](https://fal.ai/models/fal-ai/moondream3-preview/query) | Moondream | json |
-| Moondream2 | [`fal-ai/moondream2`](https://fal.ai/models/fal-ai/moondream2) | Moondream | text |
-| Moondream2 | [`fal-ai/moondream2/object-detection`](https://fal.ai/models/fal-ai/moondream2/object-detection) | Moondream | image |
-| Moondream2 | [`fal-ai/moondream2/point-object-detection`](https://fal.ai/models/fal-ai/moondream2/point-object-detection) | Moondream | image |
-| Moondream2 | [`fal-ai/moondream2/visual-query`](https://fal.ai/models/fal-ai/moondream2/visual-query) | Moondream | text |
-| Moondream3 Preview [Caption] | [`fal-ai/moondream3-preview/caption`](https://fal.ai/models/fal-ai/moondream3-preview/caption) | Moondream | json |
-| Moondream3 Preview [Detect] | [`fal-ai/moondream3-preview/detect`](https://fal.ai/models/fal-ai/moondream3-preview/detect) | Moondream | image |
-| Moondream3 Preview [Point] | [`fal-ai/moondream3-preview/point`](https://fal.ai/models/fal-ai/moondream3-preview/point) | Moondream | image |
-| MoonDreamNext | [`fal-ai/moondream-next`](https://fal.ai/models/fal-ai/moondream-next) | Moondream | text |
-| MoonDreamNext Batch | [`fal-ai/moondream-next/batch`](https://fal.ai/models/fal-ai/moondream-next/batch) | Moondream | json |
-| Nemotron Diffusion Vlm | [`fal-ai/nemotron-diffusion-vlm`](https://fal.ai/models/fal-ai/nemotron-diffusion-vlm) | NVIDIA | json |
-| NSFW Checker | [`fal-ai/x-ailab/nsfw`](https://fal.ai/models/fal-ai/x-ailab/nsfw) | — | json |
-| NSFW Filter | [`fal-ai/imageutils/nsfw`](https://fal.ai/models/fal-ai/imageutils/nsfw) | — | json |
-| OpenRouter [Vision] | [`openrouter/router/vision`](https://fal.ai/models/openrouter/router/vision) | Openrouter | json |
-| Sa2VA 4B Image | [`fal-ai/sa2va/4b/image`](https://fal.ai/models/fal-ai/sa2va/4b/image) | — | json |
-| Sa2VA 4B Video | [`fal-ai/sa2va/4b/video`](https://fal.ai/models/fal-ai/sa2va/4b/video) | — | json |
-| Sa2VA 8B Image | [`fal-ai/sa2va/8b/image`](https://fal.ai/models/fal-ai/sa2va/8b/image) | — | json |
-| Sa2VA 8B Video | [`fal-ai/sa2va/8b/video`](https://fal.ai/models/fal-ai/sa2va/8b/video) | — | json |
-| Sam 3 | [`fal-ai/sam-3/image/embed`](https://fal.ai/models/fal-ai/sam-3/image/embed) | — | text |
-| Scene Finder | [`fal-ai/scene-finder`](https://fal.ai/models/fal-ai/scene-finder) | Fal | images |
-| Video Understanding | [`fal-ai/video-understanding`](https://fal.ai/models/fal-ai/video-understanding) | — | text |
-
-
-
-
-audio-to-video — 20 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Avatars | [`veed/avatars/audio-to-video`](https://fal.ai/models/veed/avatars/audio-to-video) | Veed | video |
-| Avatars Audio to Video | [`argil/avatars/audio-to-video`](https://fal.ai/models/argil/avatars/audio-to-video) | Argil AI | video |
-| EchoMimic V3 | [`fal-ai/echomimic-v3`](https://fal.ai/models/fal-ai/echomimic-v3) | — | video |
-| ElevenLabs Dubbing | [`fal-ai/elevenlabs/dubbing`](https://fal.ai/models/fal-ai/elevenlabs/dubbing) | ElevenLabs | video |
-| Flashtalk | [`fal-ai/flashtalk`](https://fal.ai/models/fal-ai/flashtalk) | Soul AI Lab | video |
-| Longcat Single Avatar | [`fal-ai/longcat-single-avatar/audio-to-video`](https://fal.ai/models/fal-ai/longcat-single-avatar/audio-to-video) | — | video |
-| Longcat Single Avatar | [`fal-ai/longcat-single-avatar/image-audio-to-video`](https://fal.ai/models/fal-ai/longcat-single-avatar/image-audio-to-video) | — | video |
-| LTX 2.0 Video Pro | [`fal-ai/ltx-2/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2/audio-to-video) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-quality/audio-to-video) | Lightricks | video |
-| Ltx 2.3 Quality | [`fal-ai/ltx-2.3-quality/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-quality/audio-to-video/lora) | Lightricks | video |
-| LTX 2.3 Video Pro | [`fal-ai/ltx-2.3/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3/audio-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/audio-to-video) | Lightricks | video |
-| LTX-2 19B | [`fal-ai/ltx-2-19b/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/audio-to-video/lora) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/audio-to-video) | Lightricks | video |
-| LTX-2 19B Distilled | [`fal-ai/ltx-2-19b/distilled/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2-19b/distilled/audio-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/audio-to-video) | Lightricks | video |
-| LTX-2.3 22B | [`fal-ai/ltx-2.3-22b/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/audio-to-video/lora) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/audio-to-video`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/audio-to-video) | Lightricks | video |
-| LTX-2.3 22B Distilled | [`fal-ai/ltx-2.3-22b/distilled/audio-to-video/lora`](https://fal.ai/models/fal-ai/ltx-2.3-22b/distilled/audio-to-video/lora) | Lightricks | video |
-| Wan-2.2 Speech-to-Video 14B | [`fal-ai/wan/v2.2-14b/speech-to-video`](https://fal.ai/models/fal-ai/wan/v2.2-14b/speech-to-video) | Alibaba | video |
-
-
-
-
-text-to-3d — 11 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Hunyuan 3d | [`fal-ai/hunyuan-3d/v3.1/rapid/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/rapid/text-to-3d) | Tencent | file |
-| Hunyuan 3D Pro Text to 3D | [`fal-ai/hunyuan-3d/v3.1/pro/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/pro/text-to-3d) | Tencent | file |
-| Hunyuan Motion [0.46B] | [`fal-ai/hunyuan-motion/fast`](https://fal.ai/models/fal-ai/hunyuan-motion/fast) | Tencent | json |
-| Hunyuan Motion [1B] | [`fal-ai/hunyuan-motion`](https://fal.ai/models/fal-ai/hunyuan-motion) | Tencent | json |
-| Hunyuan3d V3 | [`fal-ai/hunyuan3d-v3/text-to-3d`](https://fal.ai/models/fal-ai/hunyuan3d-v3/text-to-3d) | Tencent | file |
-| Hyper3D - Rodin V2.5 - Text to 3D | [`fal-ai/hyper3d/rodin/v2.5/text-to-3d`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/text-to-3d) | Hyper3D | file |
-| Hyper3D - Rodin V2.5 - Text to 3D - Fast | [`fal-ai/hyper3d/rodin/v2.5/text-to-3d/fast`](https://fal.ai/models/fal-ai/hyper3d/rodin/v2.5/text-to-3d/fast) | Hyper3D | file |
-| Meshy 6 | [`fal-ai/meshy/v6/text-to-3d`](https://fal.ai/models/fal-ai/meshy/v6/text-to-3d) | Meshy | file |
-| Meshy 6 Preview | [`fal-ai/meshy/v6-preview/text-to-3d`](https://fal.ai/models/fal-ai/meshy/v6-preview/text-to-3d) | Meshy | file |
-| Tripo H3.1 Text to 3D | [`tripo3d/h3.1/text-to-3d`](https://fal.ai/models/tripo3d/h3.1/text-to-3d) | Tripo3D | file |
-| Tripo P1 Text to 3D | [`tripo3d/p1/text-to-3d`](https://fal.ai/models/tripo3d/p1/text-to-3d) | Tripo3D | file |
-
-
-
-
-speech-to-text — 10 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Cohere Transcribe | [`fal-ai/cohere-transcribe`](https://fal.ai/models/fal-ai/cohere-transcribe) | Cohere | json |
-| ElevenLabs Speech to Text | [`fal-ai/elevenlabs/speech-to-text`](https://fal.ai/models/fal-ai/elevenlabs/speech-to-text) | ElevenLabs | json |
-| ElevenLabs Speech to Text - Scribe V2 | [`fal-ai/elevenlabs/speech-to-text/scribe-v2`](https://fal.ai/models/fal-ai/elevenlabs/speech-to-text/scribe-v2) | ElevenLabs | json |
-| Nemotron Asr Multilingual | [`nvidia/nemotron-asr-multilingual/asr`](https://fal.ai/models/nvidia/nemotron-asr-multilingual/asr) | NVIDIA | json |
-| Pipecat's Smart Turn model | [`fal-ai/smart-turn`](https://fal.ai/models/fal-ai/smart-turn) | — | json |
-| Speech-to-Text | [`fal-ai/speech-to-text`](https://fal.ai/models/fal-ai/speech-to-text) | — | json |
-| Speech-To-text | [`fal-ai/speech-to-text/stream`](https://fal.ai/models/fal-ai/speech-to-text/stream) | — | json |
-| Speech-to-Text | [`fal-ai/speech-to-text/turbo`](https://fal.ai/models/fal-ai/speech-to-text/turbo) | — | json |
-| Speech-to-Text | [`fal-ai/speech-to-text/turbo/stream`](https://fal.ai/models/fal-ai/speech-to-text/turbo/stream) | — | json |
-| Wizper (Whisper v3 -- fal.ai edition) | [`fal-ai/wizper`](https://fal.ai/models/fal-ai/wizper) | — | json |
-
-
-
-
-3d-to-3d — 7 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Hunyuan 3D Part Splitter | [`fal-ai/hunyuan-3d/v3.1/part`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/part) | Tencent | json |
-| Hunyuan 3D Smart Topology | [`fal-ai/hunyuan-3d/v3.1/smart-topology`](https://fal.ai/models/fal-ai/hunyuan-3d/v3.1/smart-topology) | Tencent | file |
-| Meshy 5 Remesh | [`fal-ai/meshy/v5/remesh`](https://fal.ai/models/fal-ai/meshy/v5/remesh) | Meshy | file |
-| Meshy 5 Retexture | [`fal-ai/meshy/v5/retexture`](https://fal.ai/models/fal-ai/meshy/v5/retexture) | Meshy | file |
-| Meshy Rigging | [`fal-ai/meshy/rigging`](https://fal.ai/models/fal-ai/meshy/rigging) | Meshy | json |
-| Meshy Rigging Multi Animation | [`fal-ai/meshy/rigging/multi-animation`](https://fal.ai/models/fal-ai/meshy/rigging/multi-animation) | Meshy | json |
-| Sam 3 | [`fal-ai/sam-3/3d-align`](https://fal.ai/models/fal-ai/sam-3/3d-align) | — | file |
-
-
-
-
-json — 6 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Ffmpeg Api | [`fal-ai/ffmpeg-api/loudnorm`](https://fal.ai/models/fal-ai/ffmpeg-api/loudnorm) | — | audio |
-| FFmpeg API Metadata | [`fal-ai/ffmpeg-api/metadata`](https://fal.ai/models/fal-ai/ffmpeg-api/metadata) | — | json |
-| FFmpeg API Waveform | [`fal-ai/ffmpeg-api/waveform`](https://fal.ai/models/fal-ai/ffmpeg-api/waveform) | — | json |
-| Omnilottie | [`fal-ai/omnilottie`](https://fal.ai/models/fal-ai/omnilottie) | — | json |
-| Omnilottie | [`fal-ai/omnilottie/image-to-lottie`](https://fal.ai/models/fal-ai/omnilottie/image-to-lottie) | — | json |
-| Omnilottie | [`fal-ai/omnilottie/video-to-lottie`](https://fal.ai/models/fal-ai/omnilottie/video-to-lottie) | — | json |
-
-
-
-
-llm — 5 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Bytedance Seed V2 Mini | [`fal-ai/bytedance/seed/v2/mini`](https://fal.ai/models/fal-ai/bytedance/seed/v2/mini) | Bytedance | json |
-| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni`](https://fal.ai/models/nvidia/nemotron-3-nano-omni) | NVIDIA | json |
-| OpenRouter | [`openrouter/router`](https://fal.ai/models/openrouter/router) | Openrouter | json |
-| OpenRouter [Enterprise] | [`openrouter/router/enterprise`](https://fal.ai/models/openrouter/router/enterprise) | Openrouter | json |
-| Video Prompt Generator | [`fal-ai/video-prompt-generator`](https://fal.ai/models/fal-ai/video-prompt-generator) | — | text |
-
-
-
-
-video-to-audio — 5 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Kling Video | [`fal-ai/kling-video/video-to-audio`](https://fal.ai/models/fal-ai/kling-video/video-to-audio) | Kling | video |
-| Mirelo SFX | [`mirelo-ai/sfx-v1/video-to-audio`](https://fal.ai/models/mirelo-ai/sfx-v1/video-to-audio) | Mirelo AI | audio |
-| Mirelo SFX V1.5 | [`mirelo-ai/sfx-v1.5/video-to-audio`](https://fal.ai/models/mirelo-ai/sfx-v1.5/video-to-audio) | Mirelo AI | audio |
-| Sam Audio | [`fal-ai/sam-audio/visual-separate`](https://fal.ai/models/fal-ai/sam-audio/visual-separate) | — | json |
-| V1.1 | [`sonilo/v1.1/video-to-music`](https://fal.ai/models/sonilo/v1.1/video-to-music) | Sonilo | audio |
-
-
-
-
-text-to-json — 4 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Fibo | [`bria/fibo/generate/structured_prompt`](https://fal.ai/models/bria/fibo/generate/structured_prompt) | Bria AI | json |
-| Fibo Edit [Structured Instruction] | [`bria/fibo-edit/edit/structured_instruction`](https://fal.ai/models/bria/fibo-edit/edit/structured_instruction) | Bria AI | json |
-| Fibo Lite | [`bria/fibo-lite/generate/structured_prompt`](https://fal.ai/models/bria/fibo-lite/generate/structured_prompt) | Bria AI | json |
-| Fibo Lite | [`bria/fibo-lite/generate/structured_prompt/lite`](https://fal.ai/models/bria/fibo-lite/generate/structured_prompt/lite) | Bria AI | json |
-
-
-
-
-video-to-text — 3 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/video`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/video) | NVIDIA | json |
-| OpenRouter [Video] | [`openrouter/router/video`](https://fal.ai/models/openrouter/router/video) | Openrouter | json |
-| OpenRouter [Video][Enterprise] | [`openrouter/router/video/enterprise`](https://fal.ai/models/openrouter/router/video/enterprise) | Openrouter | json |
-
-
-
-
-audio-to-text — 2 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/audio`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/audio) | NVIDIA | json |
-| Silero VAD | [`fal-ai/silero-vad`](https://fal.ai/models/fal-ai/silero-vad) | — | json |
-
-
-
-
-speech-to-speech — 2 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Chatterbox | [`fal-ai/chatterbox/speech-to-speech`](https://fal.ai/models/fal-ai/chatterbox/speech-to-speech) | Resemble AI | audio |
-| Chatterboxhd | [`resemble-ai/chatterboxhd/speech-to-speech`](https://fal.ai/models/resemble-ai/chatterboxhd/speech-to-speech) | Resemble AI | audio |
-
-
-
-
-unknown — 2 models
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| OpenRouter [Audio] | [`openrouter/router/audio`](https://fal.ai/models/openrouter/router/audio) | Openrouter | json |
-| Workflow Utilities Interleave Video | [`fal-ai/workflow-utilities/interleave-video`](https://fal.ai/models/fal-ai/workflow-utilities/interleave-video) | — | video |
-
-
-
-
-image-to-json — 1 model
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Bagel | [`fal-ai/bagel/understand`](https://fal.ai/models/fal-ai/bagel/understand) | — | json |
-
-
-
-
-image-to-text — 1 model
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Nemotron 3 Nano Omni | [`nvidia/nemotron-3-nano-omni/vision`](https://fal.ai/models/nvidia/nemotron-3-nano-omni/vision) | NVIDIA | json |
-
-
-
-
-workflow — 1 model
-
-| Model | Endpoint | Lab | Output |
-| --- | --- | --- | --- |
-| Workflow Utilities Pick Image By Index | [`fal-ai/workflow-utilities/pick-image-by-index`](https://fal.ai/models/fal-ai/workflow-utilities/pick-image-by-index) | — | images |
-
-
-
-
-
-## Registry Maintenance
-
-The auto-generated nodes come from the committed snapshot at `data/fal_registry.json`. To refresh it from fal's platform API:
-
-```bash
-python scripts/build_registry.py --out data/fal_registry.json --since-days 0
-```
-
-Then regenerate the model list in this README:
-
-```bash
-python scripts/build_readme.py
-```
-
-A weekly GitHub Action runs the refresh automatically and opens a PR with the updated registry, so the catalog stays current without manual work.
+| Category | Nodes |
+| --- | --- |
+| `FAL/Utils/Dataset` | *Images → Training ZIP URL* (standard LoRA caption layout), *Folder → ZIP URL*, *Video → Frame Dataset ZIP URL*, *Batch Caption Images* (parallel VLM captioning) |
+| `FAL/Utils/Load` | *Load Image from URL* (multi-URL batching), *Load Audio from URL*, *Load Image Folder*, *Upload Folder as ZIP URL* |
+| `FAL/Utils/Video` | *Extract Frames* (efficient last-frame seek — chain into image-to-video for endless extension), *Trim* (keyframe remux, no re-encode), *Concat* (auto resolution/fps normalize), *Mux Audio + Video*, *Video → Audio* |
+| `FAL/Utils/Image` | *Image Grid with Labels*, *Resize to fal Preset* (cover/contain/stretch to standard image_size dims), *Image ↔ Base64* |
+| `FAL/Utils/Data` | *JSON Extract* (dot/bracket path queries against any `result_json`), *Prompt Lines* (cycling line picker), *Text Template* |
+
+The full LoRA-training pipeline needs nothing else: Load Image Folder → Batch Caption → Images→ZIP → any trainer node.
## Troubleshooting
-If you encounter any errors during installation or usage, try the following:
-
1. Ensure you have the latest version of ComfyUI installed
2. Update this custom node package:
```
@@ -1931,16 +176,14 @@ If you encounter any errors during installation or usage, try the following:
```
4. **Dynamic nodes not appearing?** Check the ComfyUI console for a line like `Registered N dynamic fal nodes` at startup. If it says the nodes are disabled, remove `enabled = false` from the `[dynamic_nodes]` section of your `config.ini` (and check the `categories` filter isn't excluding what you're looking for). Any registry loading error is also printed there.
5. **`VIDEO` output is `None` or video sockets are missing?** Update ComfyUI — native `VIDEO`/`AUDIO` types require a recent ComfyUI version.
-6. **API calls failing?** As of 2.0, failed fal requests raise visible errors that include fal's actual error message (validation issues, content policy, quota). Read the error text in ComfyUI — it usually tells you exactly which parameter to fix.
+6. **API calls failing?** Failed fal requests raise visible errors that include fal's actual error message (validation issues, content policy, quota). Read the error text in ComfyUI — it usually tells you exactly which parameter to fix.
## Contributing
-Contributions are welcome! Please feel free to submit a Pull Request.
+Contributions are welcome — but note that **a new fal model usually needs no code at all**: it appears automatically via the registry. Read [CONTRIBUTING.md](CONTRIBUTING.md) before opening a PR; it covers when a hand-written node is (and isn't) justified, the compatibility rules, and dev setup.
## License
This project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE) file for details.
-## Support
-
If you encounter any issues or have questions, please open an issue on the [GitHub repository](https://github.com/gokayfem/ComfyUI-fal-API/issues).
diff --git a/__init__.py b/__init__.py
index a36f5d2..3ea88ae 100644
--- a/__init__.py
+++ b/__init__.py
@@ -16,6 +16,7 @@ node_list = [
"util_video_node",
"util_image_node",
"util_data_node",
+ "builder_node",
]
NODE_CLASS_MAPPINGS = {}
diff --git a/data/featured_models.json b/data/featured_models.json
new file mode 100644
index 0000000..c481b6f
--- /dev/null
+++ b/data/featured_models.json
@@ -0,0 +1,31 @@
+{
+ "version": 1,
+ "featured": [
+ {"endpoint_id": "fal-ai/kling-video/o3/pro/text-to-video", "display_name": null},
+ {"endpoint_id": "fal-ai/kling-video/o3/pro/image-to-video", "display_name": null},
+ {"endpoint_id": "fal-ai/veo3.1", "display_name": "Veo 3.1 Text to Video (fal)"},
+ {"endpoint_id": "fal-ai/veo3.1/image-to-video", "display_name": "Veo 3.1 Image to Video (fal)"},
+ {"endpoint_id": "fal-ai/wan/v2.7/text-to-video", "display_name": "Wan 2.7 Text to Video (fal)"},
+ {"endpoint_id": "fal-ai/wan/v2.7/image-to-video", "display_name": "Wan 2.7 Image to Video (fal)"},
+ {"endpoint_id": "bytedance/seedance-2.0/text-to-video", "display_name": "Seedance 2.0 Text to Video (fal)"},
+ {"endpoint_id": "bytedance/seedance-2.0/image-to-video", "display_name": "Seedance 2.0 Image to Video (fal)"},
+ {"endpoint_id": "fal-ai/sora-2/text-to-video/pro", "display_name": "Sora 2 Pro Text to Video (fal)"},
+ {"endpoint_id": "fal-ai/sora-2/image-to-video/pro", "display_name": "Sora 2 Pro Image to Video (fal)"},
+ {"endpoint_id": "fal-ai/minimax/hailuo-2.3/pro/image-to-video", "display_name": null},
+ {"endpoint_id": "fal-ai/flux-2-max", "display_name": null},
+ {"endpoint_id": "fal-ai/flux-2-max/edit", "display_name": "Flux 2 Max Edit (fal)"},
+ {"endpoint_id": "fal-ai/nano-banana-2", "display_name": null},
+ {"endpoint_id": "fal-ai/nano-banana-2/edit", "display_name": "Nano Banana 2 Edit (fal)"},
+ {"endpoint_id": "openai/gpt-image-2", "display_name": "GPT Image 2 (fal)"},
+ {"endpoint_id": "openai/gpt-image-2/edit", "display_name": "GPT Image 2 Edit (fal)"},
+ {"endpoint_id": "fal-ai/bytedance/seedream/v4.5/text-to-image", "display_name": "Seedream 4.5 Text to Image (fal)"},
+ {"endpoint_id": "fal-ai/bytedance/seedream/v4.5/edit", "display_name": "Seedream 4.5 Edit (fal)"},
+ {"endpoint_id": "fal-ai/recraft/v4.1/pro/text-to-image", "display_name": null},
+ {"endpoint_id": "ideogram/v4", "display_name": null},
+ {"endpoint_id": "fal-ai/elevenlabs/tts/eleven-v3", "display_name": "ElevenLabs TTS Eleven v3 (fal)"},
+ {"endpoint_id": "fal-ai/elevenlabs/speech-to-text/scribe-v2", "display_name": "ElevenLabs Scribe v2 (fal)"},
+ {"endpoint_id": "fal-ai/hunyuan-3d/v3.1/pro/image-to-3d", "display_name": null},
+ {"endpoint_id": "fal-ai/topaz/upscale/image", "display_name": "Topaz Image Upscale (fal)"},
+ {"endpoint_id": "fal-ai/topaz/upscale/video", "display_name": null}
+ ]
+}
diff --git a/nodes/builder_node.py b/nodes/builder_node.py
new file mode 100644
index 0000000..3cb934c
--- /dev/null
+++ b/nodes/builder_node.py
@@ -0,0 +1,743 @@
+"""Chainable typed builder nodes for JSON inputs on auto-generated fal nodes.
+
+Auto-generated endpoint nodes render complex object/array inputs (registry
+type "json") as raw JSON string widgets. The builders here emit exactly the
+JSON those fields expect, and each accepts an optional ``chain`` input so N
+builders can be daisy-chained to produce an N-element array (or a merged
+object for ``FalKeyValue``).
+
+Shapes were validated against the live OpenAPI schemas
+(https://fal.ai/api/openapi/queue/openapi.json?endpoint_id=):
+
+- ``LoraWeight`` {path, scale[, weight_name]} fal-ai/flux-lora,
+ fal-ai/wan/v2.2-a14b/text-to-video/lora (126 "loras" inputs in registry)
+- ``Embedding`` {path, tokens[]} fal-ai/fast-lightning-sdxl
+- ``ControlNet`` {path, control_image_url, conditioning_scale,
+ start_percentage, end_percentage[, variant]} fal-ai/flux-general
+- ``IPAdapter`` {path, image_encoder_path, image_url, scale
+ [, weight_name]} fal-ai/flux-general
+- ``ElementInput`` {frontal_image_url, reference_image_urls[]}
+ fal-ai/kling-image/o1, fal-ai/kling-image/o3/*
+- ``KlingV3MultiPromptElement`` {prompt, duration("1".."15")}
+ fal-ai/kling-video/o3/*/image-to-video
+"""
+
+from __future__ import annotations
+
+import json
+import math
+from typing import Any
+
+from .fal_utils import FalApiError, ImageUtils, logger
+
+_CATEGORY = "FAL/Utils/Builders"
+
+_CHAIN_TOOLTIP = (
+ "Optional: wire the json output of another builder of the same kind here "
+ "to append this entry after its entries (chain N builders for N items)."
+)
+
+
+def _parse_chain(node_name: str, chain: str, container: type) -> Any:
+ """Parse a prior chain string into ``container`` (list or dict).
+
+ An empty/blank chain yields a fresh empty container. Anything that is not
+ valid JSON of the right container type raises a clear FalApiError.
+ """
+ text = (chain or "").strip()
+ if not text:
+ return container()
+ try:
+ parsed = json.loads(text)
+ except ValueError as err:
+ logger.error("%s: invalid chain JSON: %s", node_name, err)
+ raise FalApiError(node_name, f"'chain' is not valid JSON: {err}") from err
+ if not isinstance(parsed, container):
+ wanted = "array" if container is list else "object"
+ if isinstance(parsed, dict):
+ got = "object"
+ elif isinstance(parsed, list):
+ got = "array"
+ else:
+ got = type(parsed).__name__
+ raise FalApiError(
+ node_name,
+ f"'chain' must be a JSON {wanted} (got {got}). "
+ f"Only chain {node_name}-compatible builders together.",
+ )
+ return parsed
+
+
+def _append_entry(node_name: str, chain: str, entry: dict[str, Any]) -> str:
+ """New JSON array string: entries from ``chain`` plus ``entry`` (no mutation)."""
+ prior = _parse_chain(node_name, chain, list)
+ return json.dumps([*prior, entry])
+
+
+def _require(node_name: str, field: str, value: str) -> str:
+ """Strip a required string field, raising when it is blank."""
+ text = (value or "").strip()
+ if not text:
+ raise FalApiError(node_name, f"'{field}' is required and cannot be empty")
+ return text
+
+
+def _resolve_image_url(node_name: str, field: str, image: Any, url: str, required: bool) -> str:
+ """A connected IMAGE wins (uploaded via fal storage); else the URL string."""
+ if image is not None:
+ return ImageUtils.upload_image(image)
+ text = (url or "").strip()
+ if not text and required:
+ raise FalApiError(
+ node_name,
+ f"Connect an image or fill '{field}': the schema requires an image URL",
+ )
+ return text
+
+
+class FalLoRAConfig:
+ """Append one LoraWeight ({path, scale}) entry to a JSON array."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build a `loras` JSON array entry ({path, scale}) without hand-writing "
+ "JSON. Chain several to stack LoRAs. Wire the json output into the "
+ "`loras` field of 126+ fal nodes (fal-ai/flux-lora, "
+ "fal-ai/wan/v2.2-a14b/text-to-video/lora, fal-ai/qwen-image, ...)."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "path": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "URL or Hugging Face id of the LoRA weights, e.g. "
+ "https://.../lora.safetensors. Feeds the `loras` field of "
+ "fal-ai/flux-lora, fal-ai/wan/v2.2-a14b/text-to-video/lora, "
+ "fal-ai/chrono-edit-lora and 120+ more."
+ ),
+ },
+ ),
+ "scale": (
+ "FLOAT",
+ {
+ "default": 1.0,
+ "min": 0.0,
+ "max": 4.0,
+ "step": 0.01,
+ "tooltip": "LoRA strength merged into the base model (LoraWeight.scale, 0-4).",
+ },
+ ),
+ },
+ "optional": {
+ "weight_name": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Optional safetensors file name when `path` is a Hugging Face "
+ "repo with several files (e.g. Wan/Qwen LoRA endpoints). "
+ "Leave empty otherwise."
+ ),
+ },
+ ),
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(self, path: str, scale: float, weight_name: str = "", chain: str = "") -> tuple[str]:
+ entry: dict[str, Any] = {
+ "path": _require("FalLoRAConfig", "path", path),
+ "scale": float(scale),
+ }
+ if (weight_name or "").strip():
+ entry = {**entry, "weight_name": weight_name.strip()}
+ return (_append_entry("FalLoRAConfig", chain, entry),)
+
+
+class FalEmbeddingConfig:
+ """Append one Embedding ({path, tokens}) entry to a JSON array."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build an `embeddings` JSON array entry ({path, tokens}) for SD/SDXL "
+ "endpoints such as fal-ai/fast-lightning-sdxl, fal-ai/dreamshaper and "
+ "fal-ai/fast-fooocus-sdxl. Chain several to load multiple embeddings."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "path": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "URL or path to the textual-inversion embedding weights, e.g. "
+ "https://civitai.com/api/download/models/135931. Feeds the "
+ "`embeddings` field of fal-ai/fast-lightning-sdxl, "
+ "fal-ai/dreamshaper, fal-ai/fast-fooocus-sdxl."
+ ),
+ },
+ ),
+ },
+ "optional": {
+ "tokens": (
+ "STRING",
+ {
+ "default": ", ",
+ "tooltip": (
+ "Comma-separated trigger tokens for the embedding "
+ "(Embedding.tokens). Leave empty to use the endpoint default."
+ ),
+ },
+ ),
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(self, path: str, tokens: str = ", ", chain: str = "") -> tuple[str]:
+ entry: dict[str, Any] = {"path": _require("FalEmbeddingConfig", "path", path)}
+ token_list = [part.strip() for part in (tokens or "").split(",") if part.strip()]
+ if token_list:
+ entry = {**entry, "tokens": token_list}
+ return (_append_entry("FalEmbeddingConfig", chain, entry),)
+
+
+class FalControlNetConfig:
+ """Append one ControlNet conditioning entry to a JSON array."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build a `controlnets` JSON array entry ({path, control_image_url, "
+ "conditioning_scale, start/end_percentage}) for fal-ai/flux-general and "
+ "its variants (image-to-image, inpainting, differential-diffusion). "
+ "Connect an IMAGE (auto-uploaded) or paste a control image URL."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "path": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "URL or Hugging Face path to the ControlNet weights. Feeds the "
+ "`controlnets` field of fal-ai/flux-general, "
+ "fal-ai/flux-general/image-to-image, fal-ai/flux-general/inpainting."
+ ),
+ },
+ ),
+ "conditioning_scale": (
+ "FLOAT",
+ {
+ "default": 1.0,
+ "min": 0.0,
+ "max": 2.0,
+ "step": 0.01,
+ "tooltip": "Strength of the ControlNet guidance (ControlNet.conditioning_scale).",
+ },
+ ),
+ "start_percentage": (
+ "FLOAT",
+ {
+ "default": 0.0,
+ "min": 0.0,
+ "max": 1.0,
+ "step": 0.01,
+ "tooltip": "Fraction of total timesteps at which the ControlNet starts applying (0-1).",
+ },
+ ),
+ "end_percentage": (
+ "FLOAT",
+ {
+ "default": 1.0,
+ "min": 0.0,
+ "max": 1.0,
+ "step": 0.01,
+ "tooltip": "Fraction of total timesteps at which the ControlNet stops applying (0-1).",
+ },
+ ),
+ },
+ "optional": {
+ "control_image": (
+ "IMAGE",
+ {
+ "tooltip": (
+ "Control image (canny/depth/pose map, ...). Uploaded to fal "
+ "storage and sent as `control_image_url`. Overrides the URL widget."
+ ),
+ },
+ ),
+ "control_image_url": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Direct URL for the control image; used when no IMAGE is connected. "
+ "The schema requires one of the two."
+ ),
+ },
+ ),
+ "variant": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": "Optional variant when `path` is a Hugging Face repo key. Leave empty otherwise.",
+ },
+ ),
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(
+ self,
+ path: str,
+ conditioning_scale: float,
+ start_percentage: float,
+ end_percentage: float,
+ control_image: Any = None,
+ control_image_url: str = "",
+ variant: str = "",
+ chain: str = "",
+ ) -> tuple[str]:
+ node = "FalControlNetConfig"
+ entry: dict[str, Any] = {
+ "path": _require(node, "path", path),
+ "control_image_url": _resolve_image_url(
+ node, "control_image_url", control_image, control_image_url, required=True
+ ),
+ "conditioning_scale": float(conditioning_scale),
+ "start_percentage": float(start_percentage),
+ "end_percentage": float(end_percentage),
+ }
+ if (variant or "").strip():
+ entry = {**entry, "variant": variant.strip()}
+ return (_append_entry(node, chain, entry),)
+
+
+class FalIPAdapterConfig:
+ """Append one IP-Adapter entry to a JSON array."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build an `ip_adapters` JSON array entry ({path, image_encoder_path, "
+ "image_url, scale}) for fal-ai/flux-general and its variants. Connect "
+ "an IMAGE (auto-uploaded) or paste a reference image URL. For the older "
+ "fal-ai/lora `ip_adapter` field (different keys) use FalKeyValue."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "path": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Hugging Face path to the IP-Adapter weights. Feeds the "
+ "`ip_adapters` field of fal-ai/flux-general, "
+ "fal-ai/flux-general/image-to-image, fal-ai/flux-general/rf-inversion."
+ ),
+ },
+ ),
+ "image_encoder_path": (
+ "STRING",
+ {
+ "default": "openai/clip-vit-large-patch14",
+ "tooltip": "Path to the image encoder for the IP-Adapter (IPAdapter.image_encoder_path).",
+ },
+ ),
+ "scale": (
+ "FLOAT",
+ {
+ "default": 1.0,
+ "min": 0.0,
+ "max": 4.0,
+ "step": 0.01,
+ "tooltip": "Strength of the IP-Adapter conditioning (IPAdapter.scale).",
+ },
+ ),
+ },
+ "optional": {
+ "image": (
+ "IMAGE",
+ {
+ "tooltip": (
+ "Reference image for the IP-Adapter conditioning. Uploaded to fal "
+ "storage and sent as `image_url`. Overrides the URL widget."
+ ),
+ },
+ ),
+ "image_url": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Direct URL for the reference image; used when no IMAGE is connected. "
+ "The schema requires one of the two."
+ ),
+ },
+ ),
+ "weight_name": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Optional safetensors file name containing the IP-Adapter weights "
+ "(IPAdapter.weight_name). Leave empty otherwise."
+ ),
+ },
+ ),
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(
+ self,
+ path: str,
+ image_encoder_path: str,
+ scale: float,
+ image: Any = None,
+ image_url: str = "",
+ weight_name: str = "",
+ chain: str = "",
+ ) -> tuple[str]:
+ node = "FalIPAdapterConfig"
+ entry: dict[str, Any] = {
+ "path": _require(node, "path", path),
+ "image_encoder_path": _require(node, "image_encoder_path", image_encoder_path),
+ "image_url": _resolve_image_url(node, "image_url", image, image_url, required=True),
+ "scale": float(scale),
+ }
+ if (weight_name or "").strip():
+ entry = {**entry, "weight_name": weight_name.strip()}
+ return (_append_entry(node, chain, entry),)
+
+
+class FalReferenceImage:
+ """Append one Kling ElementInput (reference character/object) to a JSON array."""
+
+ _MAX_REFERENCE_IMAGES = 3
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build an `elements` JSON array entry ({frontal_image_url, "
+ "reference_image_urls}) for Kling Omni image endpoints "
+ "(fal-ai/kling-image/o1, fal-ai/kling-image/o3/text-to-image, "
+ "fal-ai/kling-image/o3/image-to-image). Images are auto-uploaded. "
+ "Chain one builder per character/object element."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "frontal_image": (
+ "IMAGE",
+ {
+ "tooltip": (
+ "Frontal view of the character/object. Uploaded to fal storage and "
+ "sent as `frontal_image_url` inside the `elements` field of "
+ "fal-ai/kling-image/o1 and fal-ai/kling-image/o3 endpoints."
+ ),
+ },
+ ),
+ },
+ "optional": {
+ "reference_images": (
+ "IMAGE",
+ {
+ "tooltip": (
+ "Optional batch of up to 3 additional views from different angles "
+ "(sent as `reference_image_urls`)."
+ ),
+ },
+ ),
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(self, frontal_image: Any, reference_images: Any = None, chain: str = "") -> tuple[str]:
+ node = "FalReferenceImage"
+ entry: dict[str, Any] = {"frontal_image_url": ImageUtils.upload_image(frontal_image)}
+ if reference_images is not None:
+ urls = ImageUtils.prepare_images(reference_images)
+ if len(urls) > self._MAX_REFERENCE_IMAGES:
+ raise FalApiError(
+ node,
+ f"'reference_images' supports at most {self._MAX_REFERENCE_IMAGES} "
+ f"images per element (got {len(urls)})",
+ )
+ if urls:
+ entry = {**entry, "reference_image_urls": urls}
+ return (_append_entry(node, chain, entry),)
+
+
+class FalMultiPromptShot:
+ """Append one Kling multi-prompt shot ({prompt, duration}) to a JSON array."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Build a `multi_prompt` JSON array entry ({prompt, duration}) for Kling "
+ "O3 video endpoints (fal-ai/kling-video/o3/standard/image-to-video, "
+ "fal-ai/kling-video/o3/pro/text-to-video, .../4k variants). Chain one "
+ "builder per shot to script a multi-shot video."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "prompt": (
+ "STRING",
+ {
+ "default": "",
+ "multiline": True,
+ "tooltip": (
+ "The prompt for this shot. Feeds the `multi_prompt` field of "
+ "fal-ai/kling-video/o3 image-to-video / text-to-video / "
+ "reference-to-video endpoints."
+ ),
+ },
+ ),
+ "duration": (
+ "INT",
+ {
+ "default": 5,
+ "min": 1,
+ "max": 15,
+ "tooltip": "Duration of this shot in seconds (1-15, sent as a string per the schema).",
+ },
+ ),
+ },
+ "optional": {
+ "chain": ("STRING", {"forceInput": True, "tooltip": _CHAIN_TOOLTIP}),
+ },
+ }
+
+ def build(self, prompt: str, duration: int, chain: str = "") -> tuple[str]:
+ node = "FalMultiPromptShot"
+ entry = {
+ "prompt": _require(node, "prompt", prompt),
+ "duration": str(int(duration)),
+ }
+ return (_append_entry(node, chain, entry),)
+
+
+def _typed_value(node: str, value: str, value_type: str) -> Any:
+ """Coerce the FalKeyValue string widget into the selected JSON type."""
+ if value_type == "string":
+ return value
+ text = value.strip()
+ if value_type == "number":
+ try:
+ number = float(text)
+ except ValueError as err:
+ raise FalApiError(node, f"'value' is not a number: {text!r}") from err
+ if not math.isfinite(number):
+ raise FalApiError(node, f"'value' must be a finite number, got: {text!r}")
+ return int(number) if number.is_integer() else number
+ if value_type == "boolean":
+ lowered = text.lower()
+ if lowered in ("true", "1", "yes"):
+ return True
+ if lowered in ("false", "0", "no"):
+ return False
+ raise FalApiError(node, f"'value' is not a boolean (use true/false): {text!r}")
+ # value_type == "json": nested arrays/objects/null, e.g. from another builder
+ try:
+ return json.loads(text)
+ except ValueError as err:
+ raise FalApiError(node, f"'value' is not valid JSON: {err}") from err
+
+
+class FalKeyValue:
+ """Merge one typed key/value pair into a JSON object (chainable)."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "build"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Generic escape hatch: build a JSON OBJECT one typed key at a time. "
+ "Chain several to fill object fields like `audio_setting` / "
+ "`voice_setting` (fal-ai/minimax-music/v2, fal-ai/minimax/speech-02-hd) "
+ "or `validation` (fal-ai/ltx23-trainer-v2). Set value_type to `json` to "
+ "nest arrays/objects, including outputs of the array builders."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "key": (
+ "STRING",
+ {
+ "default": "",
+ "tooltip": (
+ "Object key to set, e.g. sample_rate for `audio_setting` on "
+ "fal-ai/minimax-music/v2 or speed for `voice_setting` on "
+ "fal-ai/minimax/speech-02-hd."
+ ),
+ },
+ ),
+ "value": (
+ "STRING",
+ {
+ "default": "",
+ "multiline": True,
+ "tooltip": "Value for the key, interpreted according to value_type.",
+ },
+ ),
+ "value_type": (
+ ["string", "number", "boolean", "json"],
+ {
+ "default": "string",
+ "tooltip": (
+ "How to encode the value: string as-is, number/boolean parsed, "
+ "json for nested objects/arrays (e.g. a builder output)."
+ ),
+ },
+ ),
+ },
+ "optional": {
+ "chain": (
+ "STRING",
+ {
+ "forceInput": True,
+ "tooltip": (
+ "Optional: wire another FalKeyValue json output here to merge this "
+ "key into that object (later keys win)."
+ ),
+ },
+ ),
+ },
+ }
+
+ def build(self, key: str, value: str, value_type: str, chain: str = "") -> tuple[str]:
+ node = "FalKeyValue"
+ prior = _parse_chain(node, chain, dict)
+ merged = {**prior, _require(node, "key", key): _typed_value(node, value, value_type)}
+ return (json.dumps(merged),)
+
+
+class FalJSONMerge:
+ """Merge two builder outputs: arrays concatenate, objects merge (b wins)."""
+
+ RETURN_TYPES = ("STRING",)
+ RETURN_NAMES = ("json",)
+ FUNCTION = "merge"
+ CATEGORY = _CATEGORY
+ DESCRIPTION = (
+ "Merge two JSON strings: two arrays concatenate (a then b), two objects "
+ "merge with b overriding a. Useful to combine separately built chains "
+ "before wiring them into one json field (e.g. two `loras` chains, or "
+ "FalKeyValue objects for `audio_setting` / `validation`)."
+ )
+
+ @classmethod
+ def INPUT_TYPES(cls) -> dict[str, Any]:
+ return {
+ "required": {
+ "a": (
+ "STRING",
+ {
+ "forceInput": True,
+ "tooltip": "First JSON array or object (a builder json output). Empty is allowed.",
+ },
+ ),
+ "b": (
+ "STRING",
+ {
+ "forceInput": True,
+ "tooltip": (
+ "Second JSON array or object. Must be the same container type as "
+ "'a'; object keys in 'b' override 'a'."
+ ),
+ },
+ ),
+ },
+ }
+
+ @staticmethod
+ def _parse(side: str, text: str) -> Any:
+ stripped = (text or "").strip()
+ if not stripped:
+ return None
+ try:
+ parsed = json.loads(stripped)
+ except ValueError as err:
+ raise FalApiError("FalJSONMerge", f"'{side}' is not valid JSON: {err}") from err
+ if not isinstance(parsed, (list, dict)):
+ raise FalApiError(
+ "FalJSONMerge",
+ f"'{side}' must be a JSON array or object, got {type(parsed).__name__}",
+ )
+ return parsed
+
+ def merge(self, a: str, b: str) -> tuple[str]:
+ parsed_a = self._parse("a", a)
+ parsed_b = self._parse("b", b)
+ if parsed_a is None and parsed_b is None:
+ raise FalApiError("FalJSONMerge", "Both 'a' and 'b' are empty; nothing to merge")
+ if parsed_a is None or parsed_b is None:
+ return (json.dumps(parsed_b if parsed_a is None else parsed_a),)
+ if isinstance(parsed_a, list) and isinstance(parsed_b, list):
+ return (json.dumps([*parsed_a, *parsed_b]),)
+ if isinstance(parsed_a, dict) and isinstance(parsed_b, dict):
+ return (json.dumps({**parsed_a, **parsed_b}),)
+ raise FalApiError(
+ "FalJSONMerge",
+ "'a' and 'b' must both be arrays or both be objects "
+ f"(got {type(parsed_a).__name__} and {type(parsed_b).__name__})",
+ )
+
+
+NODE_CLASS_MAPPINGS = {
+ "FalLoRAConfig_fal": FalLoRAConfig,
+ "FalEmbeddingConfig_fal": FalEmbeddingConfig,
+ "FalControlNetConfig_fal": FalControlNetConfig,
+ "FalIPAdapterConfig_fal": FalIPAdapterConfig,
+ "FalReferenceImage_fal": FalReferenceImage,
+ "FalMultiPromptShot_fal": FalMultiPromptShot,
+ "FalKeyValue_fal": FalKeyValue,
+ "FalJSONMerge_fal": FalJSONMerge,
+}
+
+NODE_DISPLAY_NAME_MAPPINGS = {
+ "FalLoRAConfig_fal": "LoRA Config (fal)",
+ "FalEmbeddingConfig_fal": "Embedding Config (fal)",
+ "FalControlNetConfig_fal": "ControlNet Config (fal)",
+ "FalIPAdapterConfig_fal": "IP-Adapter Config (fal)",
+ "FalReferenceImage_fal": "Reference Image Element (fal)",
+ "FalMultiPromptShot_fal": "Multi-Prompt Shot (fal)",
+ "FalKeyValue_fal": "Key/Value JSON (fal)",
+ "FalJSONMerge_fal": "JSON Merge (fal)",
+}
diff --git a/nodes/dynamic/any_endpoint.py b/nodes/dynamic/any_endpoint.py
index 46e641a..fe36903 100644
--- a/nodes/dynamic/any_endpoint.py
+++ b/nodes/dynamic/any_endpoint.py
@@ -2,6 +2,7 @@
from __future__ import annotations
+import asyncio
import json
from typing import Any
@@ -13,13 +14,20 @@ from ..fal_utils import (
ResultProcessor,
logger,
)
-from .factory import stable_hash
+from .factory import _ASYNC_CAPABLE, stable_hash
from .outputs import find_url
ANY_ENDPOINT_KEY = "FalAnyEndpoint_fal"
ANY_ENDPOINT_DISPLAY_NAME = "Fal Any Endpoint (fal)"
+def _validated_endpoint(endpoint_id: str) -> str:
+ endpoint = (endpoint_id or "").strip()
+ if not endpoint:
+ raise FalApiError("(any endpoint)", "endpoint_id is required")
+ return endpoint
+
+
def _parse_arguments_json(endpoint_id: str, arguments_json: str) -> dict[str, Any]:
text = (arguments_json or "").strip()
if not text:
@@ -194,7 +202,7 @@ class FalAnyEndpoint:
return float("nan")
return stable_hash(kwargs)
- def run(
+ def _run_sync(
self,
endpoint_id: str,
arguments_json: str = "{}",
@@ -205,9 +213,7 @@ class FalAnyEndpoint:
seed: int = -1,
force_rerun: bool = False,
) -> tuple[Any, Any, Any, str]:
- endpoint = (endpoint_id or "").strip()
- if not endpoint:
- raise FalApiError("(any endpoint)", "endpoint_id is required")
+ endpoint = _validated_endpoint(endpoint_id)
arguments = build_overlay_arguments(
endpoint, arguments_json, image, image_2, video, audio, seed
@@ -218,3 +224,40 @@ class FalAnyEndpoint:
)
return extract_flexible_outputs(result)
+
+ async def _run_async(
+ self,
+ endpoint_id: str,
+ arguments_json: str = "{}",
+ image: Any = None,
+ image_2: Any = None,
+ video: Any = None,
+ audio: Any = None,
+ seed: int = -1,
+ force_rerun: bool = False,
+ ) -> tuple[Any, Any, Any, str]:
+ endpoint = _validated_endpoint(endpoint_id)
+
+ # Media uploads (build_overlay_arguments) and result downloads
+ # (extract_flexible_outputs) are blocking HTTP, so both run in worker
+ # threads; the fal call awaits on the loop so other branches proceed.
+ arguments = await asyncio.to_thread(
+ build_overlay_arguments,
+ endpoint,
+ arguments_json,
+ image,
+ image_2,
+ video,
+ audio,
+ seed,
+ )
+
+ result = await ApiHandler.submit_and_get_result_async(
+ endpoint, arguments, skip_cache=bool(force_rerun)
+ )
+
+ return await asyncio.to_thread(extract_flexible_outputs, result)
+
+ # On async-capable ComfyUI the executor awaits the coroutine, running
+ # other graph branches concurrently; older ComfyUI gets the sync path.
+ run = _run_async if _ASYNC_CAPABLE else _run_sync
diff --git a/nodes/dynamic/factory.py b/nodes/dynamic/factory.py
index ad63af6..a565bb8 100644
--- a/nodes/dynamic/factory.py
+++ b/nodes/dynamic/factory.py
@@ -2,7 +2,9 @@
from __future__ import annotations
+import asyncio
import hashlib
+import importlib.util
import inspect
import re
from functools import cache
@@ -16,6 +18,25 @@ from .schema_to_inputs import build_input_types
NODE_KEY_PREFIX = "FalAPI_"
+def _detect_async_capable() -> bool:
+ """True when the host ComfyUI awaits coroutine node FUNCTIONs.
+
+ ``comfy_execution/utils.py`` was introduced by the exact commit that added
+ async node support (Comfy-Org/ComfyUI commit 2b653e8c18, PR #8830,
+ 2025-07-10) and has not been touched since, so its presence is a precise
+ import-time proxy for ``_async_map_node_over_list`` existing in the
+ executor. Must never raise outside ComfyUI: a missing ``comfy_execution``
+ package (tests, older ComfyUI) simply selects the sync path.
+ """
+ try:
+ return importlib.util.find_spec("comfy_execution.utils") is not None
+ except Exception:
+ return False
+
+
+_ASYNC_CAPABLE = _detect_async_capable()
+
+
def node_key(model: dict[str, Any]) -> str:
return NODE_KEY_PREFIX + model["endpoint_id"].replace("/", "-")
@@ -77,6 +98,15 @@ def _call_api(endpoint_id: str, arguments: dict[str, Any], skip_cache: bool) ->
return submit(endpoint_id, arguments)
+async def _call_api_async(
+ endpoint_id: str, arguments: dict[str, Any], skip_cache: bool
+) -> Any:
+ submit = ApiHandler.submit_and_get_result_async
+ if _accepts_skip_cache(submit):
+ return await submit(endpoint_id, arguments, skip_cache=skip_cache)
+ return await submit(endpoint_id, arguments)
+
+
def _class_name(model: dict[str, Any]) -> str:
return re.sub(r"[^0-9A-Za-z_]", "_", node_key(model))
@@ -109,6 +139,16 @@ def build_node_class(model: dict[str, Any]) -> type:
result = _call_api(endpoint_id, arguments, bool(kwargs.get("force_rerun")))
return process_result(model, result)
+ async def run_async(self: Any, **kwargs: Any) -> tuple:
+ # build_arguments uploads media and process_result downloads results —
+ # blocking HTTP — so both run in worker threads; only the fal call
+ # itself awaits on the loop, letting other graph branches proceed.
+ arguments = await asyncio.to_thread(build_arguments, model, kwargs)
+ result = await _call_api_async(
+ endpoint_id, arguments, bool(kwargs.get("force_rerun"))
+ )
+ return await asyncio.to_thread(process_result, model, result)
+
attrs = {
"INPUT_TYPES": classmethod(input_types),
"IS_CHANGED": classmethod(is_changed),
@@ -117,7 +157,7 @@ def build_node_class(model: dict[str, Any]) -> type:
"FUNCTION": "run",
"CATEGORY": f"FAL/Models/{category}",
"DESCRIPTION": _description(model),
- "run": run,
+ "run": run_async if _ASYNC_CAPABLE else run,
"_FAL_ENDPOINT_ID": endpoint_id,
}
return type(_class_name(model), (object,), attrs)
diff --git a/nodes/dynamic/registry_loader.py b/nodes/dynamic/registry_loader.py
index d5808e4..9291b0b 100644
--- a/nodes/dynamic/registry_loader.py
+++ b/nodes/dynamic/registry_loader.py
@@ -16,6 +16,7 @@ from .factory import build_display_name, build_node_class, node_key
_REGISTRY_FILENAME = "fal_registry.json"
_FIXTURE_FILENAME = "_fixture_registry.json"
+_FEATURED_FILENAME = "featured_models.json"
Mappings = tuple[dict[str, type], dict[str, str]]
@@ -28,6 +29,11 @@ def _registry_path() -> Path:
return package_dir / _FIXTURE_FILENAME
+def _featured_path() -> Path:
+ package_dir = Path(__file__).resolve().parent
+ return package_dir.parents[1] / "data" / _FEATURED_FILENAME
+
+
def _truthy(value: Any) -> bool:
if isinstance(value, str):
return value.strip().lower() in ("1", "true", "yes", "on")
@@ -61,6 +67,76 @@ def _read_models() -> list[dict[str, Any]]:
return []
+def _read_featured() -> dict[str, str | None]:
+ """Curated featured tier: {endpoint_id: display_name_override_or_None}.
+
+ Empty dict when the tier is disabled, the file is missing, or unreadable.
+ """
+ if not _truthy(_get_setting("dynamic_nodes", "featured_tier", True)):
+ logger.info("Featured fal node tier disabled via config")
+ return {}
+ path = _featured_path()
+ try:
+ with open(path, encoding="utf-8") as handle:
+ document = json.load(handle)
+ entries = document.get("featured", [])
+ if not isinstance(entries, list):
+ raise ValueError("'featured' is not a list")
+ featured: dict[str, str | None] = {}
+ for entry in entries:
+ if not isinstance(entry, dict) or not entry.get("endpoint_id"):
+ continue
+ override = entry.get("display_name")
+ featured = {
+ **featured,
+ str(entry["endpoint_id"]): str(override) if override else None,
+ }
+ return featured
+ except Exception as err:
+ logger.debug("No featured fal models applied (%s): %s", path, err)
+ return {}
+
+
+def _superseded_map(models: list[dict[str, Any]]) -> dict[str, tuple[str, str]]:
+ """{endpoint_id: (newest_endpoint_id, newest_published_date)} per family.
+
+ Conservative: models are grouped by (family, category) only when the
+ registry declares a non-empty ``family`` (no fuzzy title matching), and a
+ model is flagged only when its group has >1 member and its published_at is
+ strictly older than the group's newest.
+ """
+ groups: dict[tuple[str, str], list[dict[str, Any]]] = {}
+ for model in models:
+ family = str(model.get("family") or "").strip()
+ if not family or not model.get("endpoint_id"):
+ continue
+ group_key = (family, str(model.get("category") or ""))
+ groups = {**groups, group_key: groups.get(group_key, []) + [model]}
+
+ superseded: dict[str, tuple[str, str]] = {}
+ for members in groups.values():
+ if len(members) < 2:
+ continue
+ newest = max(members, key=lambda m: str(m.get("published_at") or ""))
+ newest_date = str(newest.get("published_at") or "")
+ if not newest_date:
+ continue
+ for model in members:
+ if str(model.get("published_at") or "") < newest_date:
+ superseded = {
+ **superseded,
+ str(model["endpoint_id"]): (str(newest["endpoint_id"]), newest_date[:10]),
+ }
+ return superseded
+
+
+def _apply_superseded_note(node_class: type, newest_id: str, newest_date: str) -> None:
+ """Prefix the class DESCRIPTION with a newer-release warning."""
+ note = f"Superseded: a newer release exists in this family: {newest_id} ({newest_date})"
+ existing = str(getattr(node_class, "DESCRIPTION", "") or "")
+ node_class.DESCRIPTION = f"{note}\n\n{existing}".rstrip()
+
+
def _unique_display_name(name: str, used: set[str]) -> str:
if name not in used:
return name
@@ -71,12 +147,18 @@ def _unique_display_name(name: str, used: set[str]) -> str:
def _build_model_mappings(
- models: list[dict[str, Any]], categories: set[str]
-) -> tuple[dict[str, type], dict[str, str], int]:
+ models: list[dict[str, Any]],
+ categories: set[str],
+ featured: dict[str, str | None] | None = None,
+ superseded: dict[str, tuple[str, str]] | None = None,
+) -> tuple[dict[str, type], dict[str, str], int, int]:
classes: dict[str, type] = {}
display: dict[str, str] = {}
used_names: set[str] = {ANY_ENDPOINT_DISPLAY_NAME}
+ featured = featured or {}
+ superseded = superseded or {}
skipped = 0
+ flagged = 0
for model in models:
try:
@@ -88,7 +170,19 @@ def _build_model_mappings(
logger.debug("Duplicate dynamic node key skipped: %s", key)
continue
node_class = build_node_class(model)
- name = _unique_display_name(build_display_name(model), used_names)
+ endpoint_id = str(model.get("endpoint_id") or "")
+
+ preferred = build_display_name(model)
+ if endpoint_id in featured:
+ category = str(model.get("category") or "other")
+ node_class.CATEGORY = f"FAL/Featured/{category}"
+ preferred = featured[endpoint_id] or preferred
+ if endpoint_id in superseded:
+ newest_id, newest_date = superseded[endpoint_id]
+ _apply_superseded_note(node_class, newest_id, newest_date)
+ flagged += 1
+
+ name = _unique_display_name(preferred, used_names)
classes = {**classes, key: node_class}
display = {**display, key: name}
used_names.add(name)
@@ -100,7 +194,26 @@ def _build_model_mappings(
err,
)
- return classes, display, skipped
+ return classes, display, skipped, flagged
+
+
+def _log_missing_featured(featured: dict[str, str | None], models: list[dict[str, Any]]) -> int:
+ """Debug-log featured ids absent from the registry; returns how many matched."""
+ registry_ids = {str(m.get("endpoint_id") or "") for m in models}
+ missing = [endpoint_id for endpoint_id in featured if endpoint_id not in registry_ids]
+ for endpoint_id in missing:
+ logger.debug("Featured model not in registry, skipped: %s", endpoint_id)
+ return len(featured) - len(missing)
+
+
+def _schedule_freshness_check() -> None:
+ """Kick off the delayed registry freshness check; never raises."""
+ try:
+ from ..utils.freshness import schedule_startup_check
+
+ schedule_startup_check()
+ except Exception as err:
+ logger.debug("Could not schedule registry freshness check: %s", err)
def load_dynamic_mappings() -> Mappings:
@@ -112,14 +225,25 @@ def load_dynamic_mappings() -> Mappings:
categories = _category_filter()
models = _read_models()
- classes, display, skipped = _build_model_mappings(models, categories)
+ featured = _read_featured()
+ featured_count = _log_missing_featured(featured, models)
+ superseded = _superseded_map(models)
+ classes, display, skipped, flagged = _build_model_mappings(
+ models, categories, featured=featured, superseded=superseded
+ )
all_classes = {ANY_ENDPOINT_KEY: FalAnyEndpoint, **classes}
all_display = {ANY_ENDPOINT_KEY: ANY_ENDPOINT_DISPLAY_NAME, **display}
logger.info(
- "Registered %d dynamic fal nodes (skipped %d)", len(all_classes), skipped
+ "Registered %d dynamic fal nodes (skipped %d, featured %d, "
+ "%d flagged as superseded within their family)",
+ len(all_classes),
+ skipped,
+ featured_count,
+ flagged,
)
+ _schedule_freshness_check()
return all_classes, all_display
except Exception as err:
logger.error("Dynamic fal node loading failed entirely: %s", err)
diff --git a/nodes/server_routes.py b/nodes/server_routes.py
index d2f4bb5..f22a973 100644
--- a/nodes/server_routes.py
+++ b/nodes/server_routes.py
@@ -11,6 +11,7 @@ from __future__ import annotations
import json
import os
import threading
+import time
from typing import Any, Callable
from .utils.billing import BillingUtils
@@ -188,11 +189,122 @@ def _search_models(
"title": model.get("title") or model["endpoint_id"],
"category": model.get("category"),
"label": (info or {}).get("label"),
+ "thumbnail": model.get("thumbnail") or None,
}
for model, info in hits[:capped]
]
+# -- registry freshness + refresh -----------------------------------------------
+
+_RESTART_NOTE = "Restart ComfyUI after the refresh finishes: new nodes register at import time."
+_REFRESH_TIMEOUT_S = 1800
+
+_refresh_lock = threading.Lock()
+_refresh_state: dict[str, Any] = {
+ "running": False,
+ "started_at": None,
+ "finished_at": None,
+ "ok": None,
+ "message": "Registry refresh has not been started.",
+}
+
+
+def _repo_root() -> str:
+ nodes_dir = os.path.dirname(os.path.abspath(__file__))
+ return os.path.dirname(nodes_dir)
+
+
+def _registry_status() -> dict[str, Any]:
+ """Cached diff of the live fal catalog vs. the local registry (may fetch)."""
+ from .utils.freshness import check_for_new_models
+
+ return check_for_new_models(timeout_s=20)
+
+
+def _refresh_status() -> dict[str, Any]:
+ """Snapshot of the background registry-refresh state."""
+ with _refresh_lock:
+ return {**_refresh_state, "restart_note": _RESTART_NOTE}
+
+
+def _run_refresh_subprocess() -> tuple[bool, str]:
+ """Run scripts/build_registry.py; returns (ok, message)."""
+ import subprocess
+ import sys
+
+ root = _repo_root()
+ command = [
+ sys.executable,
+ os.path.join(root, "scripts", "build_registry.py"),
+ "--out",
+ os.path.join("data", "fal_registry.json"),
+ ]
+ completed = subprocess.run(
+ command, cwd=root, capture_output=True, text=True, timeout=_REFRESH_TIMEOUT_S
+ )
+ if completed.returncode != 0:
+ tail = (completed.stderr or completed.stdout or "").strip()[-500:]
+ return False, f"build_registry.py exited with {completed.returncode}: {tail}"
+ return True, f"Registry refreshed. {_RESTART_NOTE}"
+
+
+def _finish_refresh(ok: bool, message: str) -> None:
+ global _refresh_state
+ with _refresh_lock:
+ _refresh_state = {
+ **_refresh_state,
+ "running": False,
+ "finished_at": time.time(),
+ "ok": ok,
+ "message": message,
+ }
+
+
+def _refresh_worker(runner: Callable[[], tuple[bool, str]]) -> None:
+ """Run the refresh and record the outcome. Never raises."""
+ try:
+ ok, message = runner()
+ except Exception as exc:
+ logger.warning("server_routes: registry refresh failed: %s", exc)
+ ok, message = False, f"Registry refresh failed: {exc}"
+ _finish_refresh(ok, message)
+ logger.info("server_routes: registry refresh finished (ok=%s): %s", ok, message)
+
+
+def _start_refresh(
+ runner: Callable[[], tuple[bool, str]] | None = None,
+ spawn: Callable[[Callable[[], None]], None] | None = None,
+) -> dict[str, Any]:
+ """Start a background registry rebuild; no-op when one is already running.
+
+ ``runner``/``spawn`` are injectable for tests (stub subprocess / run inline).
+ """
+ global _refresh_state
+ with _refresh_lock:
+ if _refresh_state["running"]:
+ return {"started": False, **_refresh_state, "restart_note": _RESTART_NOTE}
+ _refresh_state = {
+ **_refresh_state,
+ "running": True,
+ "started_at": time.time(),
+ "finished_at": None,
+ "ok": None,
+ "message": "Registry refresh running — rebuilding data/fal_registry.json...",
+ }
+
+ active_runner = runner or _run_refresh_subprocess
+
+ def work() -> None:
+ _refresh_worker(active_runner)
+
+ if spawn is not None:
+ spawn(work)
+ else:
+ threading.Thread(target=work, name="fal-registry-refresh", daemon=True).start()
+ return {"started": True, **_refresh_status()}
+
+
def _cancel(endpoint_id: str, request_id: str) -> dict[str, Any]:
"""Best-effort cancel of a queued fal request via fal_client. Never raises."""
endpoint = (endpoint_id or "").strip()
@@ -280,6 +392,18 @@ async def models_route(request: Any) -> Any:
)
+async def registry_status_route(request: Any) -> Any:
+ return _guarded(_registry_status, "/fal_api/registry_status")
+
+
+async def registry_refresh_start_route(request: Any) -> Any:
+ return _guarded(_start_refresh, "/fal_api/registry_refresh")
+
+
+async def registry_refresh_status_route(request: Any) -> Any:
+ return _guarded(_refresh_status, "/fal_api/registry_refresh")
+
+
async def cancel_route(request: Any) -> Any:
try:
body = await request.json()
@@ -299,6 +423,9 @@ ROUTES: tuple[tuple[str, str, Callable[..., Any]], ...] = (
("GET", "/fal_api/jobs", jobs_route),
("GET", "/fal_api/balance", balance_route),
("GET", "/fal_api/models", models_route),
+ ("GET", "/fal_api/registry_status", registry_status_route),
+ ("GET", "/fal_api/registry_refresh", registry_refresh_status_route),
+ ("POST", "/fal_api/registry_refresh", registry_refresh_start_route),
("POST", "/fal_api/cancel", cancel_route),
)
diff --git a/nodes/utils/api.py b/nodes/utils/api.py
index 4c9cc00..5c47752 100644
--- a/nodes/utils/api.py
+++ b/nodes/utils/api.py
@@ -189,6 +189,34 @@ def _remember_result_urls(endpoint: str, request_id: str | None, result: Any) ->
except Exception as exc:
logger.debug("[%s] remember_urls failed: %s", endpoint, exc)
+
+def _finalize_live_call(endpoint: str, request_id: str | None, started: float) -> None:
+ """Log the finished call and record it in the session ledger."""
+ duration_s = time.monotonic() - started
+ logger.info(
+ "[%s] call finished in %.1fs (request_id=%s)",
+ endpoint,
+ duration_s,
+ request_id,
+ )
+ _record_ledger_entry(endpoint, request_id, duration_s)
+
+
+async def _close_async_client(client: Any) -> None:
+ """Best-effort close of a per-call AsyncClient's underlying httpx client.
+
+ fal_client.AsyncClient lazily caches an httpx.AsyncClient per instance
+ (bound to the current event loop); we create one AsyncClient per call, so
+ close it here to avoid leaking connections. Resolving ``_client`` does no
+ network I/O; any failure is swallowed — cleanup must never mask a result
+ or an error from the call itself.
+ """
+ try:
+ httpx_client = await client._client
+ await httpx_client.aclose()
+ except Exception as exc:
+ logger.debug("async fal client close failed: %s", exc)
+
def _raise_generation_error(model_name: str, error: Exception | str) -> NoReturn:
"""Normalize an exception or error string into a raised FalApiError."""
if isinstance(error, BaseException):
@@ -252,14 +280,74 @@ class ApiHandler:
raise
raise_fal_error(endpoint, exc)
finally:
- duration_s = time.monotonic() - started
- logger.info(
- "[%s] call finished in %.1fs (request_id=%s)",
+ _finalize_live_call(endpoint, request_id_ref[0], started)
+
+ _store_result_in_cache(endpoint, arguments, result, request_id_ref[0])
+ _remember_result_urls(endpoint, request_id_ref[0], result)
+ return result
+
+ @staticmethod
+ async def submit_and_get_result_async(
+ endpoint: str,
+ arguments: dict[str, Any],
+ skip_cache: bool = False,
+ ) -> Any:
+ """Async twin of ``submit_and_get_result`` for async-capable ComfyUI.
+
+ Same semantics — spend-guard preflight, persistent result cache,
+ queue-progress logging, interruption via the queue callback, ledger
+ recording and cache/provenance bookkeeping — but awaits the fal call
+ on the event loop so the executor can run other graph branches
+ concurrently. The AsyncClient is created per call because its cached
+ httpx client is bound to the current event loop (ComfyUI runs each
+ prompt in a fresh loop via ``asyncio.run``).
+ """
+ # Cache first: a hit costs nothing, so it must not be blocked by the
+ # spend guard (which only gates live, billable calls).
+ if not skip_cache:
+ cached = ResultCache().get(endpoint, arguments)
+ if cached is not None:
+ return cached
+
+ # off-loop: preflight may make a blocking balance HTTP call
+ await asyncio.to_thread(_spend_guard_preflight, endpoint)
+
+ from fal_client import AsyncClient
+
+ # Validate the key via get_client() first so a missing/placeholder key
+ # raises the actionable config error instead of a raw auth failure.
+ FalConfig().get_client()
+ client = AsyncClient(key=FalConfig().get_key())
+ callback = _make_queue_callback(endpoint)
+ request_id_ref: list[str | None] = [None]
+
+ def on_enqueue(request_id: str) -> None:
+ request_id_ref[0] = request_id
+
+ # The queue callback checks interruption on every update while the job
+ # runs; this covers a cancel that landed before submission (and stays
+ # outside the try so it cannot record a ledger entry for a job that
+ # was never submitted).
+ _check_interruption()
+
+ started = time.monotonic()
+ try:
+ result = await client.subscribe(
endpoint,
- duration_s,
- request_id_ref[0],
+ arguments=arguments,
+ with_logs=True,
+ on_enqueue=on_enqueue,
+ on_queue_update=callback,
)
- _record_ledger_entry(endpoint, request_id_ref[0], duration_s)
+ except FalApiError:
+ raise
+ except Exception as exc:
+ if _is_interruption(exc):
+ raise
+ raise_fal_error(endpoint, exc)
+ finally:
+ _finalize_live_call(endpoint, request_id_ref[0], started)
+ await _close_async_client(client)
_store_result_in_cache(endpoint, arguments, result, request_id_ref[0])
_remember_result_urls(endpoint, request_id_ref[0], result)
diff --git a/nodes/utils/freshness.py b/nodes/utils/freshness.py
new file mode 100644
index 0000000..4a69294
--- /dev/null
+++ b/nodes/utils/freshness.py
@@ -0,0 +1,217 @@
+"""Checks the live fal.ai catalog for models missing from the local registry.
+
+``check_for_new_models`` diffs the public catalog against the committed
+``data/fal_registry.json`` and caches the result module-level (1h TTL) so the
+sidebar and the startup check share one fetch. ``schedule_startup_check``
+spawns a delayed daemon thread that logs a single INFO line when the local
+registry is behind. Nothing in here may break node loading: the startup path
+never raises.
+"""
+
+from __future__ import annotations
+
+import json
+import os
+import threading
+import time
+from typing import Any
+
+from .logger import logger
+
+CATALOG_URL = "https://fal.ai/api/models?page={page}&total={total}"
+_USER_AGENT = "ComfyUI-fal-API-freshness/1.0"
+_PAGE_SIZE = 100
+_MAX_PAGES = 25
+_MAX_NEW_LISTED = 25
+_CACHE_TTL_S = 3600.0
+_STARTUP_DELAY_S = 10.0
+_DEFAULT_TIMEOUT_S = 20.0
+
+_lock = threading.Lock()
+_cached_result: dict[str, Any] | None = None
+_startup_scheduled = False
+
+
+def _registry_path() -> str:
+ """Path to data/fal_registry.json at the repo root."""
+ utils_dir = os.path.dirname(os.path.abspath(__file__))
+ repo_root = os.path.dirname(os.path.dirname(utils_dir))
+ return os.path.join(repo_root, "data", "fal_registry.json")
+
+
+def _registry_endpoint_ids() -> set[str]:
+ """Endpoint ids present in the committed registry; empty set on failure."""
+ try:
+ with open(_registry_path(), encoding="utf-8") as handle:
+ registry = json.load(handle)
+ models = registry.get("models")
+ if not isinstance(models, list):
+ raise ValueError("'models' is not a list")
+ return {
+ str(model["endpoint_id"])
+ for model in models
+ if isinstance(model, dict) and model.get("endpoint_id")
+ }
+ except Exception as err:
+ logger.debug("freshness: could not read local registry: %s", err)
+ return set()
+
+
+def _extract_items(payload: Any) -> list[dict[str, Any]]:
+ """Normalize one catalog API page into a list of item dicts."""
+ if isinstance(payload, list):
+ raw = payload
+ elif isinstance(payload, dict):
+ raw = next(
+ (
+ payload[key]
+ for key in ("items", "models", "data", "results")
+ if isinstance(payload.get(key), list)
+ ),
+ [],
+ )
+ else:
+ raw = []
+ return [item for item in raw if isinstance(item, dict)]
+
+
+def _fetch_catalog(timeout_s: float) -> list[dict[str, Any]]:
+ """Fetch catalog pages until an empty page (hard cap _MAX_PAGES).
+
+ Raises RuntimeError when the very first page cannot be fetched; a failure
+ on a later page returns the partial catalog (better a lower bound than
+ nothing).
+ """
+ import requests
+
+ items: list[dict[str, Any]] = []
+ for page in range(1, _MAX_PAGES + 1):
+ url = CATALOG_URL.format(page=page, total=_PAGE_SIZE)
+ try:
+ response = requests.get(url, headers={"User-Agent": _USER_AGENT}, timeout=timeout_s)
+ response.raise_for_status()
+ page_items = _extract_items(response.json())
+ except Exception as err:
+ if page == 1:
+ raise RuntimeError(f"fal catalog fetch failed: {err}") from err
+ logger.debug("freshness: catalog page %d failed (%s); using partial catalog", page, err)
+ break
+ if not page_items:
+ break
+ items = items + page_items
+ return items
+
+
+def _is_live_public(item: dict[str, Any]) -> bool:
+ return bool(
+ item.get("id")
+ and item.get("status") == "public"
+ and not item.get("deprecated")
+ and not item.get("removed")
+ )
+
+
+def _new_model_entry(item: dict[str, Any]) -> dict[str, Any]:
+ return {
+ "endpoint_id": str(item.get("id") or ""),
+ "title": str(item.get("title") or "").strip(),
+ "category": str(item.get("category") or "").strip(),
+ "published_at": str(item.get("publishedAt") or item.get("date") or "").strip(),
+ }
+
+
+def check_for_new_models(timeout_s: float = _DEFAULT_TIMEOUT_S) -> dict[str, Any]:
+ """Diff the live fal catalog against the local registry (cached, 1h TTL).
+
+ Returns ``{"new_count", "new_models" (newest first, max 25), "checked_at"}``.
+ Raises RuntimeError when the catalog cannot be reached at all; failed runs
+ are never cached.
+ """
+ global _cached_result
+ with _lock:
+ if (
+ _cached_result is not None
+ and time.time() - float(_cached_result.get("checked_at", 0)) < _CACHE_TTL_S
+ ):
+ return _cached_result
+
+ known_ids = _registry_endpoint_ids()
+ catalog = _fetch_catalog(timeout_s)
+ live = [item for item in catalog if _is_live_public(item)]
+
+ seen: set[str] = set()
+ fresh: list[dict[str, Any]] = []
+ for item in live:
+ endpoint_id = str(item["id"])
+ if endpoint_id in known_ids or endpoint_id in seen:
+ continue
+ seen.add(endpoint_id)
+ fresh = fresh + [_new_model_entry(item)]
+
+ fresh.sort(key=lambda entry: entry["published_at"], reverse=True)
+ result = {
+ "new_count": len(fresh),
+ "new_models": fresh[:_MAX_NEW_LISTED],
+ "checked_at": time.time(),
+ }
+
+ with _lock:
+ _cached_result = result
+ return result
+
+
+def _startup_check_enabled() -> bool:
+ if os.environ.get("FAL_DISABLE_STARTUP_CHECK"):
+ return False
+ try:
+ from .config import FalConfig
+
+ value = FalConfig().get_setting("registry", "startup_check", True)
+ except Exception as err:
+ logger.debug("freshness: could not read startup_check setting: %s", err)
+ return True
+ if isinstance(value, str):
+ return value.strip().lower() in ("1", "true", "yes", "on")
+ return bool(value)
+
+
+def _startup_worker() -> None:
+ """Delayed freshness check; logs one INFO line, never raises."""
+ try:
+ time.sleep(_STARTUP_DELAY_S)
+ result = check_for_new_models()
+ new_count = result.get("new_count", 0)
+ if new_count:
+ logger.info(
+ "fal catalog: %d models newer than the local registry — "
+ "see the fal sidebar or run scripts/build_registry.py",
+ new_count,
+ )
+ else:
+ logger.debug("fal catalog: local registry is up to date")
+ except Exception as err:
+ logger.debug("fal registry freshness check failed: %s", err)
+
+
+def schedule_startup_check() -> bool:
+ """Spawn the delayed startup freshness thread once. Never raises.
+
+ Returns True when a thread was started (enabled and not yet scheduled).
+ """
+ global _startup_scheduled
+ try:
+ with _lock:
+ if _startup_scheduled:
+ return False
+ _startup_scheduled = True
+ if not _startup_check_enabled():
+ logger.debug("freshness: startup check disabled via config")
+ return False
+ thread = threading.Thread(
+ target=_startup_worker, name="fal-registry-freshness", daemon=True
+ )
+ thread.start()
+ return True
+ except Exception as err:
+ logger.debug("freshness: could not schedule startup check: %s", err)
+ return False
diff --git a/pyproject.toml b/pyproject.toml
index 7b81c4f..580a0e5 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,7 +1,7 @@
[project]
name = "fal-api"
description = "Custom nodes for using fal API with auto-generated full-catalog coverage of fal.ai models. Video generation with Kling, Runway, Luma. Image generation with Flux. LLMs and VLMs OpenAI, Claude, Llama and Gemini."
-version = "2.4.1"
+version = "2.5.0"
license = {file = "LICENSE"}
requires-python = ">=3.9"
dependencies = [
diff --git a/scripts/build_readme.py b/scripts/build_readme.py
index 5367e01..4a35f12 100644
--- a/scripts/build_readme.py
+++ b/scripts/build_readme.py
@@ -1,10 +1,11 @@
#!/usr/bin/env python3
-"""Regenerate the auto-generated model list section of README.md.
+"""Regenerate the auto-generated model catalog in MODELS.md.
Reads data/fal_registry.json and rewrites ONLY the section between
`` and ``
-in README.md. Everything outside the markers is left untouched, and running
-the script twice in a row produces no diff.
+in MODELS.md. Everything outside the markers is left untouched, and running
+the script twice in a row produces no diff. If MODELS.md does not exist yet,
+it is created with a standard header around the markers.
Usage:
python scripts/build_readme.py
@@ -19,11 +20,24 @@ from typing import Any
REPO_ROOT = Path(__file__).resolve().parents[1]
REGISTRY_PATH = REPO_ROOT / "data" / "fal_registry.json"
-README_PATH = REPO_ROOT / "README.md"
+MODELS_PATH = REPO_ROOT / "MODELS.md"
BEGIN_MARKER = ""
END_MARKER = ""
+MODELS_TEMPLATE = f"""# fal Model Catalog — auto-generated
+
+Every auto-generated model node in [ComfyUI-fal-API](README.md), grouped by
+category (largest first). Click a category to expand it.
+
+Do not edit this file by hand — refresh `data/fal_registry.json` with
+`python scripts/build_registry.py`, then regenerate this catalog with
+`python scripts/build_readme.py`.
+
+{BEGIN_MARKER}
+{END_MARKER}
+"""
+
MODEL_URL_TEMPLATE = "https://fal.ai/models/{endpoint_id}"
@@ -103,33 +117,39 @@ def render_generated_section(registry: dict[str, Any]) -> str:
return "\n\n".join([summary, *blocks])
-def replace_between_markers(readme: str, generated: str) -> str:
- begin = readme.find(BEGIN_MARKER)
- end = readme.find(END_MARKER)
+def replace_between_markers(document: str, generated: str) -> str:
+ begin = document.find(BEGIN_MARKER)
+ end = document.find(END_MARKER)
if begin == -1 or end == -1 or end < begin:
raise SystemExit(
- f"README.md must contain '{BEGIN_MARKER}' followed by '{END_MARKER}'"
+ f"MODELS.md must contain '{BEGIN_MARKER}' followed by '{END_MARKER}'"
)
- head = readme[: begin + len(BEGIN_MARKER)]
- tail = readme[end:]
+ head = document[: begin + len(BEGIN_MARKER)]
+ tail = document[end:]
return f"{head}\n\n{generated}\n\n{tail}"
+def read_models_document(path: Path) -> str:
+ if not path.is_file():
+ return MODELS_TEMPLATE
+ try:
+ return path.read_text(encoding="utf-8")
+ except OSError as err:
+ raise SystemExit(f"Failed to read {path}: {err}") from err
+
+
def main() -> int:
registry = load_registry(REGISTRY_PATH)
- try:
- readme = README_PATH.read_text(encoding="utf-8")
- except OSError as err:
- raise SystemExit(f"Failed to read {README_PATH}: {err}") from err
+ document = read_models_document(MODELS_PATH)
- updated = replace_between_markers(readme, render_generated_section(registry))
- if updated == readme:
- print(f"README.md already up to date ({registry.get('model_count')} models)")
+ updated = replace_between_markers(document, render_generated_section(registry))
+ if MODELS_PATH.is_file() and updated == document:
+ print(f"MODELS.md already up to date ({registry.get('model_count')} models)")
return 0
- README_PATH.write_text(updated, encoding="utf-8")
+ MODELS_PATH.write_text(updated, encoding="utf-8")
print(
- f"README.md model list regenerated: {registry.get('model_count')} models, "
+ f"MODELS.md model catalog regenerated: {registry.get('model_count')} models, "
f"{len(group_by_category(registry['models']))} categories"
)
return 0
diff --git a/scripts/build_registry.py b/scripts/build_registry.py
index 81b24b3..8221061 100644
--- a/scripts/build_registry.py
+++ b/scripts/build_registry.py
@@ -17,6 +17,7 @@ Stdlib only. Usage:
import argparse
import json
import logging
+import os
import time
import urllib.error
import urllib.request
@@ -621,7 +622,10 @@ def main():
"models": records,
}
- with open(args.out, "w", encoding="utf-8") as handle:
+ # atomic write: the live sidebar refresh runs this inside a running
+ # ComfyUI — a crash mid-write must not corrupt the tracked registry
+ tmp_out = args.out + ".tmp"
+ with open(tmp_out, "w", encoding="utf-8") as handle:
json.dump(
registry,
handle,
@@ -632,6 +636,8 @@ def main():
)
handle.write("\n")
+ os.replace(tmp_out, args.out)
+
log_summary(records, skipped)
logger.info("Wrote %d models to %s", len(records), args.out)
diff --git a/tests/conftest.py b/tests/conftest.py
index 8b73984..fa115f7 100644
--- a/tests/conftest.py
+++ b/tests/conftest.py
@@ -14,6 +14,9 @@ import pytest
ROOT = Path(__file__).resolve().parents[1]
PKG = "ComfyUI_fal_API"
+# never let the freshness daemon make live network calls during tests
+os.environ.setdefault("FAL_DISABLE_STARTUP_CHECK", "1")
+
# keep the persistent result cache out of the user's real cache dir during tests
os.environ.setdefault(
"COMFYUI_FAL_API_CACHE_DB",
diff --git a/tests/test_util_nodes.py b/tests/test_util_nodes.py
index 490fe69..85f57d5 100644
--- a/tests/test_util_nodes.py
+++ b/tests/test_util_nodes.py
@@ -111,7 +111,7 @@ def test_extract_frames_from_real_video(pack, tmp_path):
def test_all_util_nodes_have_tooltips(pack):
util_keys = [k for k, c in pack.NODE_CLASS_MAPPINGS.items() if c.CATEGORY.startswith("FAL/Utils")]
- assert len(util_keys) == 20
+ assert len(util_keys) == 28 # 20 utility nodes + 8 typed builders
for key in util_keys:
input_types = pack.NODE_CLASS_MAPPINGS[key].INPUT_TYPES()
for bucket in ("required", "optional"):
diff --git a/web/fal_autocomplete.js b/web/fal_autocomplete.js
index 64328e5..22b34a3 100644
--- a/web/fal_autocomplete.js
+++ b/web/fal_autocomplete.js
@@ -39,22 +39,48 @@ function findTarget(canvas, value) {
return null;
}
+function resultThumb(model) {
+ if (!model?.thumbnail || typeof model.thumbnail !== "string") return null;
+ try {
+ const img = document.createElement("img");
+ img.className = "fal-suggest-thumb";
+ img.src = model.thumbnail;
+ img.loading = "lazy";
+ img.decoding = "async";
+ img.alt = "";
+ img.addEventListener("error", () => {
+ img.style.display = "none";
+ });
+ return img;
+ } catch (error) {
+ console.debug("[fal] suggestion thumbnail failed", error);
+ return null;
+ }
+}
+
function resultRow(model, apply) {
const row = document.createElement("div");
row.className = "fal-suggest-item";
+
+ const thumb = resultThumb(model);
+ if (thumb) row.append(thumb);
+
+ const text = document.createElement("div");
+ text.className = "fal-suggest-text";
const title = document.createElement("span");
title.className = "fal-suggest-title";
title.textContent = model.title || model.endpoint_id;
const endpoint = document.createElement("span");
endpoint.className = "fal-suggest-endpoint";
endpoint.textContent = model.endpoint_id;
- row.append(title, endpoint);
+ text.append(title, endpoint);
if (model.label) {
const price = document.createElement("span");
price.className = "fal-suggest-price";
price.textContent = model.label;
- row.append(price);
+ text.append(price);
}
+ row.append(text);
row.addEventListener("mousedown", (event) => {
event.preventDefault();
event.stopPropagation();
diff --git a/web/fal_platform.css b/web/fal_platform.css
index 6d27a5e..4236973 100644
--- a/web/fal_platform.css
+++ b/web/fal_platform.css
@@ -165,12 +165,29 @@
.fal-suggest-item {
display: flex;
- flex-direction: column;
- gap: 1px;
+ flex-direction: row;
+ align-items: center;
+ gap: 8px;
padding: 6px 10px;
cursor: pointer;
}
+.fal-suggest-thumb {
+ flex: none;
+ width: 48px;
+ height: 48px;
+ object-fit: cover;
+ border-radius: 6px;
+ background: rgba(255, 255, 255, 0.05);
+}
+
+.fal-suggest-text {
+ display: flex;
+ flex-direction: column;
+ gap: 1px;
+ min-width: 0;
+}
+
.fal-suggest-item:hover {
background: rgba(167, 139, 250, 0.15);
}
@@ -188,3 +205,64 @@
font-size: 10px;
color: #c4b5fd;
}
+
+/* Registry freshness section in the sidebar panel. */
+
+.fal-registry {
+ display: flex;
+ flex-direction: column;
+ gap: 4px;
+}
+
+.fal-registry-news {
+ display: flex;
+ flex-direction: column;
+ gap: 4px;
+ padding: 8px 10px;
+ border: 1px solid rgba(167, 139, 250, 0.25);
+ border-radius: 8px;
+ background: rgba(255, 255, 255, 0.04);
+}
+
+.fal-registry-count {
+ font-weight: 600;
+ color: #c4b5fd;
+}
+
+.fal-registry-model {
+ font-size: 11px;
+ opacity: 0.8;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+.fal-registry-refresh {
+ margin-top: 4px;
+ padding: 4px 10px;
+ border: 1px solid rgba(167, 139, 250, 0.5);
+ border-radius: 6px;
+ background: transparent;
+ color: #ece9fd;
+ font-size: 11px;
+ cursor: pointer;
+}
+
+.fal-registry-refresh:hover:not(:disabled) {
+ background: rgba(167, 139, 250, 0.15);
+}
+
+.fal-registry-refresh:disabled {
+ opacity: 0.55;
+ cursor: default;
+}
+
+.fal-registry-done {
+ font-size: 11px;
+ color: #86efac;
+}
+
+.fal-registry-error {
+ font-size: 11px;
+ color: #fca5a5;
+}
diff --git a/web/fal_sidebar.js b/web/fal_sidebar.js
index 8e642f6..a772dad 100644
--- a/web/fal_sidebar.js
+++ b/web/fal_sidebar.js
@@ -4,6 +4,9 @@ import { formatUsd, getJson, humanAge, postJson, shortEndpoint } from "./fal_api
const REFRESH_MS = 3000;
const JOB_LIMIT = 50;
+const REGISTRY_TITLE_LIMIT = 5;
+const REGISTRY_POLL_MS = 3000;
+const REGISTRY_POLL_MAX = 600;
let refreshTimer = null;
let panelRoot = null;
@@ -87,16 +90,118 @@ function buildPanel() {
const jobsHeader = element("div", "fal-jobs-header", "Jobs");
const jobs = element("div", "fal-jobs");
- root.append(stats, jobsHeader, jobs);
+
+ const registryHeader = element("div", "fal-jobs-header", "Registry");
+ const registry = element("div", "fal-registry");
+ registry.append(element("div", "fal-muted", "checking for new models…"));
+
+ root.append(stats, jobsHeader, jobs, registryHeader, registry);
return {
root,
sessionValue: session.lastChild,
balanceValue: balance.lastChild,
jobsHeader,
jobs,
+ registryHeader,
+ registry,
};
}
+// -- Registry freshness section -------------------------------------------------
+
+function registryDone(view, ok, message) {
+ const note = element(
+ "div",
+ ok ? "fal-registry-done" : "fal-registry-error",
+ ok ? "done — restart ComfyUI to load new nodes" : message || "refresh failed"
+ );
+ view.registry.append(note);
+}
+
+async function pollRefresh(view, button) {
+ for (let attempt = 0; attempt < REGISTRY_POLL_MAX; attempt += 1) {
+ await new Promise((resolve) => setTimeout(resolve, REGISTRY_POLL_MS));
+ if (!view.registry.isConnected) return;
+ let status = null;
+ try {
+ status = await getJson("/registry_refresh");
+ } catch (error) {
+ console.debug("[fal] registry refresh poll failed", error);
+ continue;
+ }
+ if (status && status.running === false && status.finished_at) {
+ registryDone(view, status.ok === true, status.message);
+ return;
+ }
+ }
+ if (button) button.textContent = "Still running \u2014 check back later";
+}
+
+async function startRegistryRefresh(view, button) {
+ try {
+ button.disabled = true;
+ button.textContent = "Refreshing…";
+ const result = await postJson("/registry_refresh", {});
+ if (!result?.started && result?.running !== true) {
+ registryDone(view, false, result?.message || "could not start refresh");
+ return;
+ }
+ await pollRefresh(view, button);
+ } catch (error) {
+ console.debug("[fal] registry refresh failed", error);
+ registryDone(view, false, "refresh request failed");
+ }
+}
+
+function renderRegistry(view, status) {
+ try {
+ const count = Number(status?.new_count) || 0;
+ if (count <= 0) {
+ view.registry.replaceChildren(element("div", "fal-muted", "Registry is up to date."));
+ return;
+ }
+ const box = element("div", "fal-registry-news");
+ box.append(
+ element("div", "fal-registry-count", `${count} new model${count === 1 ? "" : "s"} on fal`)
+ );
+ const models = Array.isArray(status?.new_models) ? status.new_models : [];
+ for (const model of models.slice(0, REGISTRY_TITLE_LIMIT)) {
+ const title = model?.title || model?.endpoint_id || "";
+ if (!title) continue;
+ const row = element("div", "fal-registry-model", title);
+ if (model?.endpoint_id) row.title = model.endpoint_id;
+ box.append(row);
+ }
+ if (count > REGISTRY_TITLE_LIMIT) {
+ box.append(element("div", "fal-muted", `…and ${count - REGISTRY_TITLE_LIMIT} more`));
+ }
+ const button = element("button", "fal-registry-refresh", "Refresh registry");
+ button.addEventListener("click", () => {
+ startRegistryRefresh(view, button).catch((error) =>
+ console.debug("[fal] registry refresh flow failed", error)
+ );
+ });
+ box.append(button);
+ view.registry.replaceChildren(box);
+ } catch (error) {
+ console.debug("[fal] registry render failed", error);
+ }
+}
+
+async function loadRegistrySection(view) {
+ try {
+ const status = await getJson("/registry_status");
+ renderRegistry(view, status);
+ } catch (error) {
+ console.debug("[fal] registry status failed", error);
+ try {
+ view.registry.replaceChildren(element("div", "fal-muted", "Registry status unavailable."));
+ } catch (renderError) {
+ console.debug("[fal] registry fallback render failed", renderError);
+ }
+ }
+}
+
function renderSession(target, data) {
const total = formatUsd(data?.total_usd) ?? "$0";
const calls = data?.calls ?? 0;
@@ -156,6 +261,10 @@ export function mountPanel(container) {
panelRoot = view.root;
container.replaceChildren(view.root);
startRefreshLoop(view);
+ // Fetched once per panel open (server-side result is cached for an hour).
+ loadRegistrySection(view).catch((error) =>
+ console.debug("[fal] registry section load failed", error)
+ );
}
function mountFloatingFallback() {