Spaces:
Sleeping
Sleeping
| from langgraph.graph import StateGraph, START, END | |
| from .utils.state import State | |
| from .utils.nodes import retrieve, generate_story, generate_brainstroming , generate_final_story, route_after_selection, select_preferred_topics | |
| def build_graph(): | |
| builder = StateGraph(State) | |
| builder.add_node(retrieve) | |
| builder.add_node(generate_story) | |
| builder.add_node(generate_brainstroming) | |
| builder.add_node(select_preferred_topics) | |
| builder.add_node(generate_final_story) | |
| # Normal edges | |
| builder.add_edge(START, "retrieve") | |
| builder.add_edge("retrieve", "generate_story") | |
| builder.add_edge("generate_story", "generate_brainstroming") | |
| builder.add_edge("generate_brainstroming", "select_preferred_topics") | |
| # Conditional edge | |
| builder.add_conditional_edges("select_preferred_topics", route_after_selection,{True:'retrieve',False:'generate_final_story'}) | |
| builder.add_edge("generate_final_story",END) | |
| return builder.compile() |