diff --git a/api/core/rag/datasource/retrieval_service.py b/api/core/rag/datasource/retrieval_service.py index e644e754ec..e4ca25b46b 100644 --- a/api/core/rag/datasource/retrieval_service.py +++ b/api/core/rag/datasource/retrieval_service.py @@ -371,7 +371,7 @@ class RetrievalService: include_segment_ids = set() segment_child_map = {} segment_file_map = {} - with Session(db.engine) as session: + with Session(bind=db.engine, expire_on_commit=False) as session: # Process documents for document in documents: segment_id = None @@ -395,7 +395,7 @@ class RetrievalService: session, ) if attachment_info_dict: - attachment_info = attachment_info_dict["attchment_info"] + attachment_info = attachment_info_dict["attachment_info"] segment_id = attachment_info_dict["segment_id"] else: child_index_node_id = document.metadata.get("doc_id") @@ -417,13 +417,6 @@ class RetrievalService: DocumentSegment.status == "completed", DocumentSegment.id == segment_id, ) - .options( - load_only( - DocumentSegment.id, - DocumentSegment.content, - DocumentSegment.answer, - ) - ) .first() ) @@ -475,7 +468,7 @@ class RetrievalService: session, ) if attachment_info_dict: - attachment_info = attachment_info_dict["attchment_info"] + attachment_info = attachment_info_dict["attachment_info"] segment_id = attachment_info_dict["segment_id"] document_segment_stmt = select(DocumentSegment).where( DocumentSegment.dataset_id == dataset_document.dataset_id, @@ -684,7 +677,7 @@ class RetrievalService: .first() ) if attachment_binding: - attchment_info = { + attachment_info = { "id": upload_file.id, "name": upload_file.name, "extension": "." + upload_file.extension, @@ -692,5 +685,5 @@ class RetrievalService: "source_url": sign_upload_file(upload_file.id, upload_file.extension), "size": upload_file.size, } - return {"attchment_info": attchment_info, "segment_id": attachment_binding.segment_id} + return {"attachment_info": attachment_info, "segment_id": attachment_binding.segment_id} return None diff --git a/api/core/rag/retrieval/dataset_retrieval.py b/api/core/rag/retrieval/dataset_retrieval.py index ec55d2d0cc..a65069b1b7 100644 --- a/api/core/rag/retrieval/dataset_retrieval.py +++ b/api/core/rag/retrieval/dataset_retrieval.py @@ -266,7 +266,7 @@ class DatasetRetrieval: ).all() if attachments_with_bindings: for _, upload_file in attachments_with_bindings: - attchment_info = File( + attachment_info = File( id=upload_file.id, filename=upload_file.name, extension="." + upload_file.extension, @@ -280,7 +280,7 @@ class DatasetRetrieval: storage_key=upload_file.key, url=sign_upload_file(upload_file.id, upload_file.extension), ) - context_files.append(attchment_info) + context_files.append(attachment_info) if show_retrieve_source: for record in records: segment = record.segment diff --git a/api/core/workflow/nodes/llm/node.py b/api/core/workflow/nodes/llm/node.py index a5973862b2..04e2802191 100644 --- a/api/core/workflow/nodes/llm/node.py +++ b/api/core/workflow/nodes/llm/node.py @@ -697,7 +697,7 @@ class LLMNode(Node[LLMNodeData]): ).all() if attachments_with_bindings: for _, upload_file in attachments_with_bindings: - attchment_info = File( + attachment_info = File( id=upload_file.id, filename=upload_file.name, extension="." + upload_file.extension, @@ -711,7 +711,7 @@ class LLMNode(Node[LLMNodeData]): storage_key=upload_file.key, url=sign_upload_file(upload_file.id, upload_file.extension), ) - context_files.append(attchment_info) + context_files.append(attachment_info) yield RunRetrieverResourceEvent( retriever_resources=original_retriever_resource, context=context_str.strip(),