Comfy-Org/ComfyUI · error · ValueError
Up to {SEED_MAX_VIDEOS} videos are supported per request.
Error message
Up to {SEED_MAX_VIDEOS} videos are supported per request. What it means
Raised by the ByteDanceSeedNode before any request when more than SEED_MAX_VIDEOS (4) video inputs are connected. Unlike images, the limit counts video objects, not frames. It fires during execute() validation, before uploads start.
Source
Thrown at comfy_api_nodes/nodes_bytedance_llm.py:208
async def execute(
cls,
prompt: str,
model: dict,
seed: int,
system_prompt: str = "",
) -> IO.NodeOutput:
validate_string(prompt, strip_whitespace=True, min_length=1)
model_label = model["model"]
temperature = model["temperature"]
model_id = SEED_MODELS[model_label]
image_tensors: list[Input.Image] = [t for t in (model.get("images") or {}).values() if t is not None]
if sum(get_number_of_images(t) for t in image_tensors) > SEED_MAX_IMAGES:
raise ValueError(f"Up to {SEED_MAX_IMAGES} images are supported per request.")
video_inputs: list[Input.Video] = [v for v in (model.get("videos") or {}).values() if v is not None]
if len(video_inputs) > SEED_MAX_VIDEOS:
raise ValueError(f"Up to {SEED_MAX_VIDEOS} videos are supported per request.")
content: list[BytePlusMessageContent] = []
if image_tensors:
content.extend(await _build_image_content_blocks(cls, image_tensors))
if video_inputs:
content.extend(await _build_video_content_blocks(cls, video_inputs))
content.append(BytePlusInputText(text=prompt))
response = await sync_op(
cls,
ApiEndpoint(path=BYTEPLUS_RESPONSES_ENDPOINT, method="POST"),
response_model=BytePlusResponseObject,
data=BytePlusResponseCreateRequest(
model=model_id,
input=[BytePlusInputMessage(role="user", content=content)],
instructions=system_prompt or None,
temperature=temperature,
store=False,View on GitHub (pinned to 1c6d8d45b3)
Solutions
- Disconnect videos so at most 4 remain connected.
- Split the analysis across multiple Seed node runs (4 videos each) and merge the text outputs.
- Concatenate extra clips into a single video upstream if sequential rather than parallel analysis is acceptable.
Defensive patterns
Strategy: validation
Validate before calling
SEED_MAX_VIDEOS = 4
connected_videos = [v for v in videos.values() if v is not None]
assert len(connected_videos) <= SEED_MAX_VIDEOS, f"max {SEED_MAX_VIDEOS} videos per Seed request" Prevention
- Count video inputs (not frames) before queueing: at most 4.
- Concatenate extra clips upstream or split across runs for more coverage.
When it happens
Trigger: len of the non-None entries in the node's videos dict > 4 — i.e. five or more VIDEO outputs wired into the node's video inputs.
Common situations: Wiring a whole directory of clips into one prompt; chaining multiple Load Video nodes for a compare-and-contrast query; forgetting that Autogrow video sockets make it easy to add many inputs.
Related errors
- Up to {SEED_MAX_IMAGES} images are supported per request.
- Reference video {index} is too small: {w}x{h} = {pixels:,} t
- Reference video {index} is too large: {w}x{h} = {pixels:,} t
- Provide either a background image or a background video, not
- Custom size out of range: {w}x{h}. Both width and height mus
AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14).
Data as JSON: /api/errors/fc68b867d1b9d541.
Report an issue: GitHub.