From 1ad73ccdc85b98980d495dc4484c5e068446b091 Mon Sep 17 00:00:00 2001 From: jyong <718720800@qq.com> Date: Tue, 15 Jul 2025 17:54:53 +0800 Subject: [PATCH] r2 --- api/services/rag_pipeline/rag_pipeline.py | 14 ++++++++------ .../rag_pipeline/rag_pipeline_dsl_service.py | 5 ++++- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/api/services/rag_pipeline/rag_pipeline.py b/api/services/rag_pipeline/rag_pipeline.py index d083afcb0c..9c432208e6 100644 --- a/api/services/rag_pipeline/rag_pipeline.py +++ b/api/services/rag_pipeline/rag_pipeline.py @@ -443,21 +443,23 @@ class RagPipelineService: repository.save(workflow_node_execution) # Convert node_execution to WorkflowNodeExecution after save - workflow_node_execution = repository.to_db_model(workflow_node_execution) + workflow_node_execution_db_model = repository.to_db_model(workflow_node_execution) with Session(bind=db.engine) as session, session.begin(): draft_var_saver = DraftVariableSaver( session=session, app_id=pipeline.id, - node_id=workflow_node_execution.node_id, - node_type=NodeType(workflow_node_execution.node_type), + node_id=workflow_node_execution_db_model.node_id, + node_type=NodeType(workflow_node_execution_db_model.node_type), enclosing_node_id=enclosing_node_id, node_execution_id=workflow_node_execution.id, ) - draft_var_saver.save(process_data=workflow_node_execution.process_data, - outputs=workflow_node_execution.outputs) + draft_var_saver.save( + process_data=workflow_node_execution.process_data, + outputs=workflow_node_execution.outputs, + ) session.commit() - return workflow_node_execution + return workflow_node_execution_db_model def run_datasource_workflow_node( self, diff --git a/api/services/rag_pipeline/rag_pipeline_dsl_service.py b/api/services/rag_pipeline/rag_pipeline_dsl_service.py index e2908d83aa..06dfe7bf83 100644 --- a/api/services/rag_pipeline/rag_pipeline_dsl_service.py +++ b/api/services/rag_pipeline/rag_pipeline_dsl_service.py @@ -231,6 +231,9 @@ class RagPipelineDslService: status=ImportStatus.FAILED, error="Pipeline not found", ) + dataset = pipeline.dataset + if dataset: + dataset_name = dataset.name # If major version mismatch, store import info in Redis if status == ImportStatus.PENDING: @@ -285,7 +288,7 @@ class RagPipelineDslService: and dataset.chunk_structure != knowledge_configuration.chunk_structure ): raise ValueError("Chunk structure is not compatible with the published pipeline") - else: + if not dataset: dataset = Dataset( tenant_id=account.current_tenant_id, name=name,