𧬠Sequencer Generate
One node, every closed model β but it's a paid API, not magic
- input_image
- reference_image_1
- reference_image_2
- reference_image_3
- IMAGE
- VIDEO_URL
- AUDIO_URL
The name is half the pitch: 𧬠Sequencer Generate is a universal generation node, and it really does let you pick any of ~178 models from one dropdown - GPT Image, Flux 1.1/2 Pro, Ideogram, Nano Banana, Veo 3.1, Kling, Wan, ElevenLabs TTS, even Topaz and SeedVR2 upscalers. Here's the part the marketing blurb is quieter about: none of that runs on your machine. This node is a thin client for sequencer.media, a paid cloud API gateway that resells all those closed models. You supply a key and credits, it supplies the GPUs, and your local ComfyUI just watches the polling.
If that sounds like the opposite of what you usually run ComfyUI for, you're not wrong. The local-vs-cloud gap is a real wall in this ecosystem, and this node is squarely on the cloud side: zero local VRAM load, zero model downloads, but also zero privacy - every prompt and image you connect leaves your machine and hits their backend. The honest use case is narrow but real: you want a frontier closed model inside a ComfyUI graph without maintaining half a dozen per-vendor API accounts. Video is where that genuinely earns its keep - the community still has no open-source equivalent to Veo 3.1's native audio (the KB's closed-source-models essay calls it a real capability gap), and nothing local does ElevenLabs-tier TTS. For still images, open weights have basically closed the gap, so the image models in this catalog are "nice to have," not "need."
How it works
The mechanism is straightforward once you know the shape. On startup the node pulls the model list from the Sequencer Firestore registry (it caches for ~5 minutes and refreshes when ComfyUI restarts), so the dropdown is the service's catalog, not yours. When you queue a job it resolves your API key, resolves your workspace ID, uploads any connected images, creates a "media document" on the backend, and then polls for up to ~4 minutes (120 attempts at ~2s each), printing status to the console.
That polling and the outputs are where beginners get burned. For image models the node downloads the result and hands you a real IMAGE tensor you can wire into Preview/Save. For video and audio models, the IMAGE output is a dummy 1Γ64Γ64 black tensor (or a thumbnail if the backend happens to provide one) - the actual deliverable is the VIDEO_URL or AUDIO_URL string. If your preview shows a black square after a 90-second video job, that's not a failure; grab the URL string and save it with a Save Text node. One more grounding gotcha: the code base64-encodes input images inline into the request (its own comment admits "this isn't ideal for large images" - proper upload is a TODO), so keep connected source images reasonable.
Inputs that matter
The required trio is model, prompt, and api_key - leave the key blank if it's in your config file and the node picks it up. The ones you'll actually fiddle with:
model- the whole point. Pick from the live catalog; each entry is tagged likeβ [IMAGE] GPT Image 2 (High).aspect_ratio- 16:9, 9:16, 1:1, 4:3, 3:4, 21:9. Not every model honors it.input_image- connects for img2img, image-to-video, upscale, style transfer.duration- video length in seconds (1β30), only used by video models.strength- influence of the input image; lower = more faithful.reference_image_1/2/3- subject/style refs for multi-ref or element-to-video models.
Also present: negative_prompt, seed, resolution (auto/1K/2K/4K, for upscalers), and workspace_id_override. One stale-README warning: the README's table calls the key input api_key_override, but the actual node input is api_key - trust the node.
Installing it
ComfyUI Manager β Install Custom Nodes β search "Sequencer", or:
cd ComfyUI/custom_nodes
git clone https://github.com/sequencer-media/sequencer-comfy-nodes
Restart ComfyUI. No pip dependencies - the requirements file is intentionally empty; it uses stdlib plus the torch/Pillow ComfyUI already ships. Then configure:
mkdir -p ~/.sequencer
echo '{"api_key": "sk_YOUR_KEY", "workspace_id": "YOUR_WORKSPACE_ID"}' > ~/.sequencer/config.json
chmod 600 ~/.sequencer/config.json
Get the key at sequencer.media/settings (Settings β API Keys), and find your workspace ID in the dashboard URL after /workspace/. Environment variables (SEQUENCER_API_KEY, SEQUENCER_WORKSPACE_ID) work too.
Common issues
- "No Sequencer API key configured" - you skipped config, or the config JSON is malformed (it'll print a warning). Fix the file or paste the key into the node's
api_keyinput. - Dropdown shows "(error loading models - restart ComfyUI)" - the registry fetch failed at startup; check your internet, then restart to retry.
- "Generation timed out after 120 polling attempts" - video can take 1β3 minutes; the poll cap is ~4. If it still dies, check the Sequencer dashboard.
- Black IMAGE output for video/audio - not a bug; read the URL output (above).
Bottom line: it's a tidy convenience wrapper, genuinely zero-maintenance once configured, and video/audio access is its real superpower. But it's a paid, lightly-trafficked service (essentially no community discussion of sequencer.media anywhere on the usual boards), so go in knowing your credits and your data both run on a meter. For images alone you probably don't need it - your local box already does that part for free.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| model | COMBO | β [IMAGE] GPT Image 2 (High) | Select an AI model from the Sequencer collection. Models are fetched from your account's model registry. |
| prompt | STRING | Text prompt describing the desired output. Be descriptive for best results. | |
| api_key | STRING | Get your API key from sequencer.media/settings | |
| aspect_ratioopt | COMBO | 16:9 | Output aspect ratio. Not all models support all ratios. |
| input_imageopt | IMAGE | Input image for image-to-video, image-to-image, style transfer, upscale, etc. | |
| negative_promptopt | STRING | Negative prompt β describe what you DON'T want. Not supported by all models. | |
| durationopt | INT | 51β30 | Video duration in seconds. Only used by video generation models. |
| seedopt | INT | 00β2147483647 | Random seed for reproducible results. Set to 0 for random. |
| strengthopt | FLOAT | 1.000β1 | Strength / influence of the input image. Lower = more faithful to input. Used by img2img and style transfer models. |
| resolutionopt | COMBO | auto | Output resolution. Only used by models that support multiple output sizes (e.g., upscalers). |
| reference_image_1opt | IMAGE | Reference image 1 β for subject/style reference in element-to-video or multi-ref models. | |
| reference_image_2opt | IMAGE | Reference image 2 β for additional subject/style references. | |
| reference_image_3opt | IMAGE | Reference image 3 β for additional subject/style references. | |
| workspace_id_overrideopt | STRING | Override the workspace ID. Leave empty to auto-detect. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | β |
| VIDEO_URL | STRING | β |
| AUDIO_URL | STRING | β |