File size: 648 Bytes
e6583bf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
"""

Article Graph



Workflow:

  writer -> critic -> [ACCEPTED -> END, REJECTED -> writer]

"""

from langgraph.graph import StateGraph, END
from shared import ResearchState
from .writer import writer_node
from .critic import critic_node

builder = StateGraph(ResearchState)

builder.add_node("writer", writer_node)
builder.add_node("critic", critic_node)

def should_accept(state):
    return state.critique == "ACCEPTED"

builder.set_entry_point("writer")
builder.add_edge("writer", "critic")
builder.add_conditional_edges("critic", should_accept, {
    True: END,
    False: "writer"
})

article_graph = builder.compile()