| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- from __future__ import annotations
- """需求解析阶段子图:从用户原始输入解析为结构化TravelRequest,路由到澄清/就绪/错误节点。"""
- from langgraph.graph import (
- END,
- START,
- StateGraph,
- )
- from app.agents.requirement_agent import (
- RequirementAgent,
- )
- from app.graph.nodes import (
- clarification_node,
- error_node,
- make_parse_request_node,
- ready_node,
- route_after_parse,
- )
- from app.graph.state import TravelState
- def build_requirement_graph(
- agent: RequirementAgent | None = None,
- ):
- """构建需求解析阶段的LangGraph。"""
- requirement_agent = (
- agent or RequirementAgent()
- )
- builder = StateGraph(TravelState)
- builder.add_node(
- "parse_request",
- make_parse_request_node(
- requirement_agent
- ),
- )
- builder.add_node(
- "clarify",
- clarification_node,
- )
- builder.add_node(
- "ready",
- ready_node,
- )
- builder.add_node(
- "error",
- error_node,
- )
- builder.add_edge(
- START,
- "parse_request",
- )
- builder.add_conditional_edges(
- "parse_request",
- route_after_parse,
- {
- "clarify": "clarify",
- "ready": "ready",
- "error": "error",
- },
- )
- builder.add_edge("clarify", END)
- builder.add_edge("ready", END)
- builder.add_edge("error", END)
- return builder.compile()
|