{"record":{"id":"5dc7db511be4fc3c","repo":"Comfy-Org/ComfyUI","slug":"at-least-one-reference-image-or-video-or-asset-is","errorCode":null,"errorMessage":"At least one reference image or video or asset is required.","messagePattern":"At least one reference image or video or asset is required\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"comfy_api_nodes/nodes_bytedance.py","lineNumber":2748,"sourceCode":"        watermark: bool,\n    ) -> IO.NodeOutput:\n        validate_string(model[\"prompt\"], strip_whitespace=True, min_length=1)\n\n        reference_images = model.get(\"reference_images\", {})\n        reference_videos = model.get(\"reference_videos\", {})\n        reference_audios = model.get(\"reference_audios\", {})\n        reference_assets = model.get(\"reference_assets\", {})\n\n        reference_image_assets, reference_video_assets, reference_audio_assets = await _resolve_reference_assets(\n            cls, list(reference_assets.values())\n        )\n\n        model_id = SEEDANCE_MODELS[model[\"model\"]]\n        limits = seedance2_reference_limits(model_id)\n\n        if not reference_images and not reference_videos and not reference_image_assets and not reference_video_assets:\n            if model_id != \"dreamina-seedance-2-5-260628\" or not (reference_audios or reference_audio_assets):\n                raise ValueError(\"At least one reference image or video or asset is required.\")\n\n        total_images = len(reference_images) + len(reference_image_assets)\n        if total_images > limits[\"max_images\"]:\n            raise ValueError(\n                f\"Too many reference images: {total_images} \"\n                f\"(images={len(reference_images)}, image assets={len(reference_image_assets)}). \"\n                f\"Maximum is {limits['max_images']}.\"\n            )\n        total_videos = len(reference_videos) + len(reference_video_assets)\n        if total_videos > limits[\"max_videos\"]:\n            raise ValueError(\n                f\"Too many reference videos: {total_videos} \"\n                f\"(videos={len(reference_videos)}, video assets={len(reference_video_assets)}). \"\n                f\"Maximum is {limits['max_videos']}.\"\n            )\n        total_audios = len(reference_audios) + len(reference_audio_assets)\n        if total_audios > limits[\"max_audios\"]:\n            raise ValueError(","sourceCodeStart":2730,"sourceCodeEnd":2766,"githubUrl":"https://github.com/Comfy-Org/ComfyUI/blob/1c6d8d45b3693bfbb32385b410d813a7fd6be216/comfy_api_nodes/nodes_bytedance.py#L2730-L2766","documentation":"The Seedance 2 reference-based generation node requires at least one visual reference: a reference image, reference video, or their asset equivalents. The only exception is Seedance 2.5 (dreamina-seedance-2-5-260628) with audio references. When nothing is connected and the exception does not apply, the node fails fast before any upload or API call.","triggerScenarios":"Calling the reference-mode node with all reference_images, reference_videos, and reference_assets empty, and either a non-2.5 model or 2.5 with no reference audios either.","commonSituations":"Using the reference node for text-to-video instead of the t2v node; forgetting to wire references when switching models; iterating on a workflow where the reference branch was deleted.","solutions":["Connect at least one reference image or video (or its asset id) to the node.","Use the plain text-to-video Seedance node if you want no references.","On Seedance 2.5 only: reference audios alone are acceptable if that is the intended mode."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"has_visual = bool(reference_images or reference_videos or reference_image_assets or reference_video_assets)\nif not has_visual and not (is_seedance_25 and (reference_audios or reference_audio_assets)):\n    raise ValueError(\"connect at least one visual reference\")","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Use the t2v node for no-reference generation.","Only Seedance 2.5 may run this node with audio references alone."],"tags":["bytedance","seedance","validation","missing-input","api-nodes"],"backgroundTag":null,"analyzedSha":"1c6d8d45b3693bfbb32385b410d813a7fd6be216","analyzedAt":"2026-08-14T19:37:18.893Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}