class State(TypedDict):
decision: str
message: str
user_context: dict
builder = StateGraph(State)
builder.add_node("pre_router", pre_router) builder.add_node("router", router) builder.add_node("chat", chat_node) builder.add_node("company", company) builder.add_node("polices", polices) builder.add_node("faqs", faqs) builder.add_node("referral", referral) builder.add_node("benefits", benefits) builder.add_node("howtos", howtos)
builder.add_edge(START, "pre_router") builder.add_conditional_edges("pre_router", lambda state: state["decision"], path_map=["chat", "router"]) builder.add_conditional_edges("router", lambda state: state["decision"], path_map=["company", "polices", "faqs", "referral", "benefits", "howtos"])
builder.add_edge("chat", END) builder.add_edge("company", END) builder.add_edge("polices", END) builder.add_edge("faqs", END) builder.add_edge("referral", END) builder.add_edge("benefits", END) builder.add_edge("howtos", END)