BerriAI/litellm · error · ValueError
Unknown file type for extension: {extension}
Error message
Unknown file type for extension: {extension} What it means
Reverse-lookup failure in get_file_type_from_extension: the extension string (compared case-insensitively) is not present in any FileType's extension list, so it cannot be mapped to a FileType enum member. The extension argument is the invalid input.
Source
Thrown at litellm/types/files.py:169
"""
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]
def get_file_mime_type_from_extension(extension: str) -> str:
file_type: Final = get_file_type_from_extension(extension)
return get_file_mime_type_for_file_type(file_type)
"""
FileType Type Groupings (Videos, Images, etc)
"""View on GitHub (pinned to 77b7c6c40c)
Solutions
- Use a known file extension (pdf, txt, json, ...) or add a mapping for {extension}.
- Check for typos in the filename's extension.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at litellm/types/files.py:169 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/1d66bc9df65ce9bc.
Report an issue: GitHub.