diff --git a/backend/app/main_graph/utils/main_graph_builder.py b/backend/app/main_graph/utils/main_graph_builder.py index 7c64f94..399098f 100644 --- a/backend/app/main_graph/utils/main_graph_builder.py +++ b/backend/app/main_graph/utils/main_graph_builder.py @@ -235,16 +235,14 @@ def build_react_main_graph(llm=None, tools=None, mem0_client=None) -> StateGraph } ) - # 循环边(rag、web_search、error 回到 reason) + # 循环边(rag、web_search、子图、error都回到reason) graph.add_edge("rag_retrieve", "react_reason") graph.add_edge("web_search", "react_reason") + graph.add_edge("contact_subgraph", "react_reason") + graph.add_edge("dictionary_subgraph", "react_reason") + graph.add_edge("news_analysis_subgraph", "react_reason") graph.add_edge("handle_error", "react_reason") - # 关键修改:子图执行完后直接去 finalize(避免循环) - graph.add_edge("contact_subgraph", "finalize") - graph.add_edge("dictionary_subgraph", "finalize") - graph.add_edge("news_analysis_subgraph", "finalize") - # 第三阶段:llm_call 后进入完成处理 if llm_node is not None: if summarize_node: