HKUDS/nanobot · error · ValueError

Remote image URLs are not supported. Use base64 data URLs or

Error message

Remote image URLs are not supported. Use base64 data URLs or upload files via multipart/form-data.

What it means

Error "Remote image URLs are not supported. Use base64 data URLs or upload files via multipart/form-data." thrown in HKUDS/nanobot.

Source

Thrown at nanobot/api/server.py:226

                        cast(object, part.get("text", "")),
                        "messages[0].content[].text",
                    )
                )
            elif part.get("type") == "image_url":
                image_url = _require_json_object(
                    cast(object, part.get("image_url", {})),
                    "messages[0].content[].image_url",
                )
                url = _require_json_string(
                    cast(object, image_url.get("url", "")),
                    "messages[0].content[].image_url.url",
                )
                if url.startswith("data:"):
                    saved = _save_base64_data_url(url, media_dir)
                    if saved:
                        media_paths.append(saved)
                elif url:
                    raise ValueError(
                        "Remote image URLs are not supported. "
                        "Use base64 data URLs or upload files via multipart/form-data."
                    )
        text = " ".join(text_parts)
    elif isinstance(user_content, str):
        text = user_content
    else:
        raise ValueError("Invalid content format")

    return text, media_paths


async def _parse_multipart(request: web.Request) -> tuple[str, list[str], str | None, str | None]:
    """Parse multipart/form-data. Returns (text, media_paths, session_id, model)."""
    media_dir = get_media_dir("api")
    reader = await request.multipart()
    text = ""
    session_id = None

View on GitHub (pinned to 42f37dc4c0)

When it happens

Trigger: Thrown at nanobot/api/server.py:226 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of HKUDS/nanobot@42f37dc4c0 (2026-08-26). Data as JSON: /api/errors/26cada2cbab90a2c. Report an issue: GitHub.