{"record":{"id":"2a10c1f284d0ef86","repo":"Comfy-Org/ComfyUI","slug":"4k-resolution-is-not-supported-for-kling-image-o1","errorCode":null,"errorMessage":"4K resolution is not supported for kling-image-o1 model.","messagePattern":"4K resolution is not supported for kling-image-o1 model\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"comfy_api_nodes/nodes_kling.py","lineNumber":1435,"sourceCode":"                )\n                \"\"\",\n            ),\n        )\n\n    @classmethod\n    async def execute(\n        cls,\n        model_name: str,\n        prompt: str,\n        resolution: str,\n        aspect_ratio: str,\n        series_amount: str = \"disabled\",\n        reference_images: Input.Image | None = None,\n        seed: int = 0,\n    ) -> IO.NodeOutput:\n        _ = seed\n        if model_name == \"kling-image-o1\" and resolution == \"4K\":\n            raise ValueError(\"4K resolution is not supported for kling-image-o1 model.\")\n        prompt = normalize_omni_prompt_references(prompt)\n        validate_string(prompt, min_length=1, max_length=2500)\n        image_list: list[OmniImageParamImage] = []\n        if reference_images is not None:\n            if get_number_of_images(reference_images) > 10:\n                raise ValueError(\"The maximum number of reference images is 10.\")\n            for i in reference_images:\n                validate_image_dimensions(i, min_width=300, min_height=300)\n                validate_image_aspect_ratio(i, (1, 2.5), (2.5, 1))\n            for i in await upload_images_to_comfyapi(cls, reference_images, wait_label=\"Uploading reference image\"):\n                image_list.append(OmniImageParamImage(image=i))\n        use_series = series_amount != \"disabled\"\n        if use_series and model_name == \"kling-image-o1\":\n            raise ValueError(\"kling-image-o1 does not support series generation.\")\n        response = await sync_op(\n            cls,\n            ApiEndpoint(path=\"/proxy/kling/v1/images/omni-image\", method=\"POST\"),\n            response_model=TaskStatusResponse,","sourceCodeStart":1417,"sourceCodeEnd":1453,"githubUrl":"https://github.com/Comfy-Org/ComfyUI/blob/1c6d8d45b3693bfbb32385b410d813a7fd6be216/comfy_api_nodes/nodes_kling.py#L1417-L1453","documentation":"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.","triggerScenarios":"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).","commonSituations":"Switching the model dropdown on a 4K image workflow to try o1 without lowering resolution.","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"],"exampleFix":"// before\nmodel_name = \"kling-image-o1\"\nresolution = \"4K\"\n\n// after\nmodel_name = \"kling-image-o1\"\nresolution = \"2K\"","handlingStrategy":"validation","validationCode":"def o1_image_resolution_ok(model_name: str, resolution: str) -> bool:\n    return model_name != \"kling-image-o1\" or resolution != \"4K\"","typeGuard":null,"tryCatchPattern":null,"preventionTips":["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"],"tags":["kling","image","resolution","model-validation","api-nodes"],"backgroundTag":null,"analyzedSha":"1c6d8d45b3693bfbb32385b410d813a7fd6be216","analyzedAt":"2026-08-14T19:37:18.893Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}