Comfy-Org/ComfyUI · error · ValueError
4K resolution is not supported for kling-image-o1 model.
Error message
4K resolution is not supported for kling-image-o1 model.
What it means
Raised by OmniProImageNode.execute when model_name is 'kling-image-o1' and resolution is '4K'. Note the case difference from the video nodes: the image node uses '4K'; o1 image generation tops out at 2K, so the combination is rejected before prompt validation.
Source
Thrown at comfy_api_nodes/nodes_kling.py:1435
)
""",
),
)
@classmethod
async def execute(
cls,
model_name: str,
prompt: str,
resolution: str,
aspect_ratio: str,
series_amount: str = "disabled",
reference_images: Input.Image | None = None,
seed: int = 0,
) -> IO.NodeOutput:
_ = seed
if model_name == "kling-image-o1" and resolution == "4K":
raise ValueError("4K resolution is not supported for kling-image-o1 model.")
prompt = normalize_omni_prompt_references(prompt)
validate_string(prompt, min_length=1, max_length=2500)
image_list: list[OmniImageParamImage] = []
if reference_images is not None:
if get_number_of_images(reference_images) > 10:
raise ValueError("The maximum number of reference images is 10.")
for i in reference_images:
validate_image_dimensions(i, min_width=300, min_height=300)
validate_image_aspect_ratio(i, (1, 2.5), (2.5, 1))
for i in await upload_images_to_comfyapi(cls, reference_images, wait_label="Uploading reference image"):
image_list.append(OmniImageParamImage(image=i))
use_series = series_amount != "disabled"
if use_series and model_name == "kling-image-o1":
raise ValueError("kling-image-o1 does not support series generation.")
response = await sync_op(
cls,
ApiEndpoint(path="/proxy/kling/v1/images/omni-image", method="POST"),
response_model=TaskStatusResponse,View on GitHub (pinned to 1c6d8d45b3)
Solutions
- Set resolution to '2K' or '1080p' when using kling-image-o1
- Use kling-image-2 or another 4K-capable model if 4K output is required
- Upscale the o1 output locally if only pixel dimensions matter
Example fix
// before model_name = "kling-image-o1" resolution = "4K" // after model_name = "kling-image-o1" resolution = "2K"
Defensive patterns
Strategy: validation
Validate before calling
def o1_image_resolution_ok(model_name: str, resolution: str) -> bool:
return model_name != "kling-image-o1" or resolution != "4K" Prevention
- Lower resolution to 2K/1080p before switching the image model to o1
- The image node compares '4K' (capital) — keep combo values verbatim from INPUT_TYPES
When it happens
Trigger: OmniPro image node with model_name='kling-image-o1' and the resolution combo set to '4K' (the non-o1 kling-image models do accept 4K).
Common situations: Switching the model dropdown on a 4K image workflow to try o1 without lowering resolution.
Related errors
- kling-image-o1 does not support series generation.
- Duration is only supported for 5 or 10 seconds if there is n
- The maximum number of reference images is 10.
- kling-video-o1 does not support 4k resolution.
- The 'end_frame' input cannot be used simultaneously with 're
AI-assisted analysis of Comfy-Org/ComfyUI@1c6d8d45b3 (2026-08-14).
Data as JSON: /api/errors/2a10c1f284d0ef86.
Report an issue: GitHub.