| 123456789101112131415161718192021222324252627282930313233343536373839404142 | from core.workflow.nodes.answer import AnswerNodefrom core.workflow.nodes.base import BaseNodefrom core.workflow.nodes.code import CodeNodefrom core.workflow.nodes.document_extractor import DocumentExtractorNodefrom core.workflow.nodes.end import EndNodefrom core.workflow.nodes.enums import NodeTypefrom core.workflow.nodes.http_request import HttpRequestNodefrom core.workflow.nodes.if_else import IfElseNodefrom core.workflow.nodes.iteration import IterationNode, IterationStartNodefrom core.workflow.nodes.knowledge_retrieval import KnowledgeRetrievalNodefrom core.workflow.nodes.list_operator import ListOperatorNodefrom core.workflow.nodes.llm import LLMNodefrom core.workflow.nodes.parameter_extractor import ParameterExtractorNodefrom core.workflow.nodes.question_classifier import QuestionClassifierNodefrom core.workflow.nodes.start import StartNodefrom core.workflow.nodes.template_transform import TemplateTransformNodefrom core.workflow.nodes.tool import ToolNodefrom core.workflow.nodes.variable_aggregator import VariableAggregatorNodefrom core.workflow.nodes.variable_assigner import VariableAssignerNodenode_type_classes_mapping: dict[NodeType, type[BaseNode]] = {    NodeType.START: StartNode,    NodeType.END: EndNode,    NodeType.ANSWER: AnswerNode,    NodeType.LLM: LLMNode,    NodeType.KNOWLEDGE_RETRIEVAL: KnowledgeRetrievalNode,    NodeType.IF_ELSE: IfElseNode,    NodeType.CODE: CodeNode,    NodeType.TEMPLATE_TRANSFORM: TemplateTransformNode,    NodeType.QUESTION_CLASSIFIER: QuestionClassifierNode,    NodeType.HTTP_REQUEST: HttpRequestNode,    NodeType.TOOL: ToolNode,    NodeType.VARIABLE_AGGREGATOR: VariableAggregatorNode,    NodeType.VARIABLE_ASSIGNER: VariableAggregatorNode,  # original name of VARIABLE_AGGREGATOR    NodeType.ITERATION: IterationNode,    NodeType.ITERATION_START: IterationStartNode,    NodeType.PARAMETER_EXTRACTOR: ParameterExtractorNode,    NodeType.CONVERSATION_VARIABLE_ASSIGNER: VariableAssignerNode,    NodeType.DOCUMENT_EXTRACTOR: DocumentExtractorNode,    NodeType.LIST_OPERATOR: ListOperatorNode,}
 |