diff --git a/backend/open_webui/models/knowledge.py b/backend/open_webui/models/knowledge.py index e4c97bcecc..b053344bc9 100644 --- a/backend/open_webui/models/knowledge.py +++ b/backend/open_webui/models/knowledge.py @@ -671,31 +671,6 @@ class KnowledgeTable: except Exception: return [] - async def get_file_metadatas_by_id( - self, knowledge_id: str, db: Optional[AsyncSession] = None - ) -> list[FileMetadataResponse]: - """Column-only listing: File.data holds each file's full extracted - text, which metadata views must never load.""" - try: - async with get_async_db_context(db) as db: - result = await db.execute( - select(File.id, File.hash, File.meta, File.created_at, File.updated_at) - .join(KnowledgeFile, File.id == KnowledgeFile.file_id) - .filter(KnowledgeFile.knowledge_id == knowledge_id) - ) - return [ - FileMetadataResponse( - id=row.id, - hash=row.hash, - meta=row.meta, - created_at=row.created_at, - updated_at=row.updated_at, - ) - for row in result.all() - ] - except Exception: - return [] - async def add_file_to_knowledge_by_id( self, knowledge_id: str, diff --git a/backend/open_webui/routers/knowledge.py b/backend/open_webui/routers/knowledge.py index 2c7a9f410d..6b13b798cd 100644 --- a/backend/open_webui/routers/knowledge.py +++ b/backend/open_webui/routers/knowledge.py @@ -1180,7 +1180,7 @@ async def update_knowledge_by_id( ) response = KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id), + files=[], ) await publish_event( request, @@ -1249,7 +1249,7 @@ async def update_knowledge_access_by_id( response = KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(id, db=db), + files=[], ) await publish_event( request, @@ -1489,7 +1489,7 @@ async def add_file_to_knowledge_by_id( if knowledge: response = KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=await Files.get_file_metadatas_by_ids([form_data.file_id], db=db), ) await publish_event( request, @@ -1573,7 +1573,7 @@ async def update_file_from_knowledge_by_id( if knowledge: response = KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=await Files.get_file_metadatas_by_ids([form_data.file_id], db=db), ) await publish_event( request, @@ -1662,7 +1662,7 @@ async def remove_file_from_knowledge_by_id( if knowledge: response = KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=[], ) await publish_event( request, @@ -2105,7 +2105,7 @@ async def add_files_to_knowledge_batch( if not new_entries: return KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=[], ) # Narrow the file list to only new files for processing @@ -2141,7 +2141,7 @@ async def add_files_to_knowledge_batch( error_details = [f'{err.file_id}: {err.error}' for err in result.errors] return KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=await Files.get_file_metadatas_by_ids(successful_file_ids, db=db), warnings={ 'message': 'Some files failed to process', 'errors': error_details, @@ -2150,7 +2150,7 @@ async def add_files_to_knowledge_batch( return KnowledgeFilesResponse( **knowledge.model_dump(), - files=await Knowledges.get_file_metadatas_by_id(knowledge.id, db=db), + files=await Files.get_file_metadatas_by_ids(successful_file_ids, db=db), )