Update graph.py
Browse files
graph.py
CHANGED
@@ -144,3 +144,30 @@ class EssayWriter:
|
|
144 |
"essay": self.essay,
|
145 |
"pdf_name": pdf_name,
|
146 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
144 |
"essay": self.essay,
|
145 |
"pdf_name": pdf_name,
|
146 |
}
|
147 |
+
|
148 |
+
def save_workflow_graph(self):
|
149 |
+
"""Generate and save a Graphviz workflow visualization."""
|
150 |
+
try:
|
151 |
+
dot = graphviz.Digraph(format="png")
|
152 |
+
dot.attr(dpi='300')
|
153 |
+
|
154 |
+
# Define Nodes
|
155 |
+
dot.node("Router", "🔀 Router")
|
156 |
+
dot.node("Write Essay", "📝 Write Essay")
|
157 |
+
dot.node("Edit Essay", "✏️ Edit Essay")
|
158 |
+
dot.node("Answer", "💬 Answer")
|
159 |
+
|
160 |
+
# Define Edges
|
161 |
+
dot.edge("Router", "Write Essay")
|
162 |
+
dot.edge("Router", "Edit Essay")
|
163 |
+
dot.edge("Router", "Answer")
|
164 |
+
dot.edge("Write Essay", "✅ Done")
|
165 |
+
dot.edge("Edit Essay", "✅ Done")
|
166 |
+
dot.edge("Answer", "✅ Done")
|
167 |
+
|
168 |
+
# Save Graph
|
169 |
+
dot.render("graph") # Saves as 'graph.png'
|
170 |
+
|
171 |
+
except Exception as e:
|
172 |
+
print(f"❌ Error generating workflow visualization: {e}")
|
173 |
+
|