HKUDS/nanobot · error · ImageGenerationError
unsupported reference image: {p}
Error message
unsupported reference image: {p} What it means
Error "unsupported reference image: {p}" thrown in HKUDS/nanobot.
Source
Thrown at nanobot/providers/image_generation.py:103
def _as_json_object(value: object) -> dict[str, Any] | None:
"""Narrow an untrusted provider response value to a JSON object."""
return cast(dict[str, Any], value) if isinstance(value, dict) else None
def _as_json_objects(value: object) -> list[dict[str, Any]]:
"""Return object entries from an untrusted provider response array."""
if not isinstance(value, list):
return []
return [cast(dict[str, Any], item) for item in cast(list[object], value) if isinstance(item, dict)]
def _read_image_b64(path: str | Path) -> tuple[str, str]:
"""Return ``(mime, base64)`` for the image at ``path``."""
p = Path(path).expanduser()
raw = p.read_bytes()
mime = detect_image_mime(raw)
if mime is None:
raise ImageGenerationError(f"unsupported reference image: {p}")
return mime, base64.b64encode(raw).decode("ascii")
def image_path_to_data_url(path: str | Path) -> str:
"""Convert a local image path to an image data URL."""
mime, encoded = _read_image_b64(path)
return f"data:{mime};base64,{encoded}"
def image_path_to_inline_data(path: str | Path) -> dict[str, str]:
"""Convert a local image path to a Gemini ``inlineData`` payload dict."""
mime, encoded = _read_image_b64(path)
return {"mimeType": mime, "data": encoded}
def _b64_image_data_url(value: str) -> str:
encoded = "".join(value.split())
try:View on GitHub (pinned to 42f37dc4c0)
When it happens
Trigger: Thrown at nanobot/providers/image_generation.py:103 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/737b9fae19f98f21.
Report an issue: GitHub.