Add uses_sys_files_for_node flag to node calls

Introduces the uses_sys_files_for_node parameter to knowledge retrieval and question classifier node calls, enabling more explicit control over system file usage. Also cleans up redundant imports in the LLM node implementation.
pull/21938/head
fdb02983rhy 10 months ago
parent e723b1b686
commit 54eb6cf2c6

@ -458,6 +458,7 @@ class KnowledgeRetrievalNode(LLMNode):
vision_detail=node_data.vision.configs.detail,
variable_pool=self.graph_runtime_state.variable_pool,
jinja2_variables=[],
uses_sys_files_for_node=False,
)
result_text = ""

@ -5,6 +5,9 @@ import logging
from collections.abc import Generator, Mapping, Sequence
from typing import TYPE_CHECKING, Any, Optional, cast
from sqlalchemy import select
from sqlalchemy.orm import Session
from core.app.entities.app_invoke_entities import ModelConfigWithCredentialsEntity
from core.file import FileType, file_manager
from core.helper.code_executor import CodeExecutor, CodeLanguage
@ -68,10 +71,6 @@ from core.workflow.nodes.event import (
RunStreamChunkEvent,
)
from core.workflow.utils.variable_template_parser import VariableTemplateParser
# --- New imports for file-usage persistence ---
from sqlalchemy.orm import Session
from sqlalchemy import select
from extensions.ext_database import db
from models.model import NodeFileUsage
@ -218,7 +217,6 @@ class LLMNode(BaseNode[LLMNodeData]):
)
session.commit()
except Exception:
# Non-critical failure to persist should not break node execution
pass
if files:

@ -101,6 +101,7 @@ class QuestionClassifierNode(LLMNode):
vision_detail=node_data.vision.configs.detail,
variable_pool=variable_pool,
jinja2_variables=[],
uses_sys_files_for_node=node_data.vision.enabled and bool(node_data.vision.configs.variable_selector),
)
result_text = ""

Loading…
Cancel
Save