calesthio/OpenMontage · error · ValueError
multi_prompt must be a list
Error message
multi_prompt must be a list
What it means
Error "multi_prompt must be a list" thrown in calesthio/OpenMontage.
Source
Thrown at tools/video/kling_official_video.py:481
if "watermark" in inputs:
payload["watermark_info"] = {"enabled": bool(inputs.get("watermark"))}
callback_url = validate_callback_url(inputs.get("callback_url"))
if callback_url:
payload["callback_url"] = callback_url
if inputs.get("external_task_id"):
payload["external_task_id"] = inputs["external_task_id"]
def _copy_multi_shot_fields(self, inputs: dict[str, Any], payload: dict[str, Any]) -> None:
if inputs.get("multi_shot") is None and not inputs.get("multi_prompt"):
return
payload["multi_shot"] = bool(inputs.get("multi_shot", True))
shot_type = str(inputs.get("shot_type") or "customize")
if shot_type not in {"customize", "intelligence"}:
raise ValueError("shot_type must be one of: customize, intelligence")
payload["shot_type"] = shot_type
if inputs.get("multi_prompt"):
if not isinstance(inputs["multi_prompt"], list):
raise ValueError("multi_prompt must be a list")
normalized: list[dict[str, Any]] = []
for item in inputs["multi_prompt"]:
if not isinstance(item, dict) or not item.get("prompt"):
raise ValueError("each multi_prompt item must be an object with prompt")
allowed = {
key: item[key]
for key in ("prompt", "duration", "camera_control", "image_refs", "element_refs")
if key in item
}
normalized.append(allowed)
payload["multi_prompt"] = normalized
def _normalize_omni_image_list(
self,
inputs: dict[str, Any],
) -> tuple[list[dict[str, Any]], list[dict[str, Any]]]:
image_list: list[dict[str, Any]] = []
references_used: list[dict[str, Any]] = []View on GitHub (pinned to 95e1c3d0ab)
Solutions
- Pass multi_prompt as a JSON list (array), not a string or object.
- Each entry must be an object such as {"prompt": "...", "duration": 5}.
When it happens
Trigger: multi_prompt is passed as a non-list value (e.g. a string or dict) for a multi-prompt Kling video request.
Common situations: See trigger scenarios.
AI-assisted analysis of calesthio/OpenMontage@95e1c3d0ab (2026-08-15).
Data as JSON: /api/errors/a3180d7e7724cf85.
Report an issue: GitHub.