diff --git a/cognee/tasks/ingestion/save_data_item_to_storage.py b/cognee/tasks/ingestion/save_data_item_to_storage.py index ae6bcc064..3fdb23e7e 100644 --- a/cognee/tasks/ingestion/save_data_item_to_storage.py +++ b/cognee/tasks/ingestion/save_data_item_to_storage.py @@ -27,11 +27,17 @@ async def save_data_item_to_storage(data_item: Union[BinaryIO, str, Any]) -> str return await get_data_from_llama_index(data_item) - from docling_core.types import DoclingDocument + try: + from docling_core.types import DoclingDocument - if isinstance(data_item, DoclingDocument): - # Convert DoclingDocument to plain text and continue processing file - data_item = data_item.export_to_text() + if isinstance(data_item, DoclingDocument): + # Convert DoclingDocument to plain text and continue processing file + data_item = data_item.export_to_text() + except ImportError: + logger.debug( + "Docling import failed. Docling optional dependency not installed, so we don't expect Docling documents. " + "Continuing normal operation." + ) # data is a file object coming from upload. if hasattr(data_item, "file"):