__init__.py 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. # coding=utf-8
  2. """
  3. @project: maxkb
  4. @Author:虎
  5. @file: __init__.py.py
  6. @date:2024/6/7 14:43
  7. @desc:
  8. """
  9. from .ai_chat_step_node import *
  10. from .application_node import BaseApplicationNode
  11. from .condition_node import *
  12. from .data_source_local_node.impl.base_data_source_local_node import BaseDataSourceLocalNode
  13. from .data_source_web_node.impl.base_data_source_web_node import BaseDataSourceWebNode
  14. from .direct_reply_node import *
  15. from .document_extract_node import *
  16. from .form_node import *
  17. from .image_generate_step_node import *
  18. from .image_to_video_step_node import BaseImageToVideoNode
  19. from .image_understand_step_node import *
  20. from .intent_node import *
  21. from .knowledge_write_node.impl.base_knowledge_write_node import BaseKnowledgeWriteNode
  22. from .loop_break_node import BaseLoopBreakNode
  23. from .loop_continue_node import BaseLoopContinueNode
  24. from .loop_node import *
  25. from .loop_start_node import *
  26. from .mcp_node import BaseMcpNode
  27. from .parameter_extraction_node import BaseParameterExtractionNode
  28. from .question_node import *
  29. from .reranker_node import *
  30. from .search_document_node import BaseSearchDocumentNode
  31. from .search_knowledge_node import *
  32. from .speech_to_text_step_node import BaseSpeechToTextNode
  33. from .start_node import *
  34. from .text_to_speech_step_node.impl.base_text_to_speech_node import BaseTextToSpeechNode
  35. from .text_to_video_step_node.impl.base_text_to_video_node import BaseTextToVideoNode
  36. from .tool_lib_node import *
  37. from .tool_node import *
  38. from .tool_workflow_lib_node import BaseToolWorkflowLibNodeNode
  39. from .variable_aggregation_node.impl.base_variable_aggregation_node import BaseVariableAggregationNode
  40. from .variable_assign_node import BaseVariableAssignNode
  41. from .variable_splitting_node import BaseVariableSplittingNode
  42. from .video_understand_step_node import BaseVideoUnderstandNode
  43. from .document_split_node import BaseDocumentSplitNode
  44. from .tool_start_node import BaseToolStartStepNode
  45. node_list = [BaseStartStepNode, BaseChatNode, BaseSearchKnowledgeNode, BaseSearchDocumentNode, BaseQuestionNode,
  46. BaseConditionNode, BaseReplyNode,
  47. BaseToolNodeNode, BaseToolLibNodeNode, BaseRerankerNode, BaseApplicationNode,
  48. BaseDocumentExtractNode,
  49. BaseImageUnderstandNode, BaseFormNode, BaseSpeechToTextNode, BaseTextToSpeechNode,
  50. BaseImageGenerateNode, BaseVariableAssignNode, BaseMcpNode, BaseTextToVideoNode, BaseImageToVideoNode,
  51. BaseVideoUnderstandNode,
  52. BaseIntentNode, BaseLoopNode, BaseLoopStartStepNode,
  53. BaseLoopContinueNode,
  54. BaseLoopBreakNode, BaseVariableSplittingNode, BaseParameterExtractionNode, BaseVariableAggregationNode,
  55. BaseDataSourceLocalNode, BaseDataSourceWebNode, BaseKnowledgeWriteNode, BaseDocumentSplitNode,
  56. BaseToolStartStepNode, BaseToolWorkflowLibNodeNode]
  57. node_map = {n.type: {w: n for w in n.support} for n in node_list}
  58. def get_node(node_type, workflow_model):
  59. return node_map.get(node_type).get(workflow_model)