| from core.prompt.simple_prompt_transform import ModelMode | from core.prompt.simple_prompt_transform import ModelMode | ||||
| from core.prompt.utils.prompt_message_util import PromptMessageUtil | from core.prompt.utils.prompt_message_util import PromptMessageUtil | ||||
| from core.workflow.entities.base_node_data_entities import BaseNodeData | from core.workflow.entities.base_node_data_entities import BaseNodeData | ||||
| from core.workflow.entities.node_entities import NodeRunResult, NodeType | |||||
| from core.workflow.entities.node_entities import NodeRunMetadataKey, NodeRunResult, NodeType | |||||
| from core.workflow.entities.variable_pool import VariablePool | from core.workflow.entities.variable_pool import VariablePool | ||||
| from core.workflow.nodes.llm.llm_node import LLMNode | from core.workflow.nodes.llm.llm_node import LLMNode | ||||
| from core.workflow.nodes.question_classifier.entities import QuestionClassifierNodeData | from core.workflow.nodes.question_classifier.entities import QuestionClassifierNodeData | ||||
| inputs=variables, | inputs=variables, | ||||
| process_data=process_data, | process_data=process_data, | ||||
| outputs=outputs, | outputs=outputs, | ||||
| edge_source_handle=classes_map.get(categories[0], None) | |||||
| edge_source_handle=classes_map.get(categories[0], None), | |||||
| metadata={ | |||||
| NodeRunMetadataKey.TOTAL_TOKENS: usage.total_tokens, | |||||
| NodeRunMetadataKey.TOTAL_PRICE: usage.total_price, | |||||
| NodeRunMetadataKey.CURRENCY: usage.currency | |||||
| } | |||||
| ) | ) | ||||
| except ValueError as e: | except ValueError as e: | ||||
| return NodeRunResult( | return NodeRunResult( | ||||
| status=WorkflowNodeExecutionStatus.FAILED, | status=WorkflowNodeExecutionStatus.FAILED, | ||||
| inputs=variables, | inputs=variables, | ||||
| error=str(e) | |||||
| error=str(e), | |||||
| metadata={ | |||||
| NodeRunMetadataKey.TOTAL_TOKENS: usage.total_tokens, | |||||
| NodeRunMetadataKey.TOTAL_PRICE: usage.total_price, | |||||
| NodeRunMetadataKey.CURRENCY: usage.currency | |||||
| } | |||||
| ) | ) | ||||
| @classmethod | @classmethod |