BerriAI/litellm · error · HTTPException

File sanitization failed: {e}

Error message

File sanitization failed: {e}

What it means

Error "File sanitization failed: {e}" thrown in BerriAI/litellm.

Source

Thrown at litellm/proxy/guardrails/guardrail_hooks/prompt_security/prompt_security.py:488

                )

            if action == "modify":
                sanitized_content: Final = sanitization_result.get("content", "")
                if sanitized_content:
                    sanitized_encoded: Final = base64.b64encode(sanitized_content.encode()).decode()
                    sanitized_url: Final = f"{header},{sanitized_encoded}"
                    if isinstance(image_url_data, dict):
                        image_url_data["url"] = sanitized_url
                    else:
                        item["image_url"] = sanitized_url
                    verbose_proxy_logger.info("File content modified by Prompt Security")

            return item
        except HTTPException:
            raise
        except Exception as e:
            verbose_proxy_logger.error("Error sanitizing image file: %s", e)
            raise HTTPException(status_code=500, detail=f"File sanitization failed: {e}")

    async def _process_document_item(self, item: dict, user_api_key_alias: str | None) -> dict:
        """Process and sanitize document/file items."""
        doc_data: Final = item.get("document") or item.get("file") or item

        if isinstance(doc_data, dict):
            url = doc_data.get("url", "")
            doc_content = doc_data.get("data", "")
        else:
            url = doc_data if isinstance(doc_data, str) else ""
            doc_content = ""

        if not (url.startswith("data:") or doc_content):
            return item

        try:
            header = ""
            if url.startswith("data:"):

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Check the underlying exception in the proxy logs for the sanitization failure.
  2. Verify the file format is supported by Prompt Security sanitization.

When it happens

Trigger: Thrown at litellm/proxy/guardrails/guardrail_hooks/prompt_security/prompt_security.py:488 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/9c62c97a085c586b. Report an issue: GitHub.