BerriAI/litellm · error · ValueError
Unknown extension for mime type: {mime_type}
Error message
Unknown extension for mime type: {mime_type} What it means
Reverse-lookup failure in get_file_extension_from_mime_type: the supplied MIME type string does not match any entry in the FILE_MIME_TYPES mapping, so no canonical file extension exists for it. The mime_type argument is the invalid input.
Source
Thrown at litellm/types/files.py:161
FileType.WAV: "audio/wav",
FileType.WEBM: "video/webm",
FileType.WEBP: "image/webp",
FileType.WMV: "video/wmv",
FileType.XLS: "application/vnd.ms-excel",
FileType.XLSX: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
}
)
"""
Util Functions
"""
def get_file_extension_from_mime_type(mime_type: str) -> str:
for file_type, mime in FILE_MIME_TYPES.items():
if mime.lower() == mime_type.lower():
return FILE_EXTENSIONS[file_type][0]
raise ValueError(f"Unknown extension for mime type: {mime_type}")
def get_file_type_from_extension(extension: str) -> FileType:
for file_type, extensions in FILE_EXTENSIONS.items():
if extension.lower() in extensions:
return file_type
raise ValueError(f"Unknown file type for extension: {extension}")
def get_file_extension_for_file_type(file_type: FileType) -> str:
return FILE_EXTENSIONS[file_type][0]
def get_file_mime_type_for_file_type(file_type: FileType) -> str:
return FILE_MIME_TYPES[file_type]
View on GitHub (pinned to 77b7c6c40c)
Solutions
- Use a recognized MIME type (e.g. application/pdf, text/plain) or add a mapping for {mime_type}.
- Pass an explicit file extension instead of relying on MIME type inference.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/types/files.py:161 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/499f3a16dc96f6b7.
Report an issue: GitHub.