workflow_agents.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from langgraph.graph import StateGraph, START, END
  2. # ⚠️ Import corrigé (selon version)
  3. try:
  4. from langgraph.prebuilt import ToolNode
  5. except ImportError:
  6. # fallback si ToolNode n'existe pas
  7. from langchain_core.runnables import RunnableLambda
  8. def ToolNode(tools):
  9. def run_tools(state):
  10. return state # à adapter si besoin
  11. return RunnableLambda(run_tools)
  12. # Assure-toi que ces imports sont corrects
  13. from Agents import AgentState, agent_extracteur, agent_builder, agent_ocr, tools
  14. workflow = StateGraph(AgentState)
  15. # 1. Définition des Nœuds
  16. workflow.add_node("agent_ocr", agent_ocr)
  17. workflow.add_node("agent_extracteur", agent_extracteur)
  18. workflow.add_node("agent_builder", agent_builder)
  19. workflow.add_node("tools", ToolNode(tools))
  20. # 2. Définition des Arêtes
  21. workflow.add_edge(START, "agent_ocr")
  22. workflow.add_edge("agent_ocr", "agent_extracteur")
  23. workflow.add_edge("agent_extracteur", "agent_builder")
  24. workflow.add_edge("tools",END)
  25. # 5. Compilation
  26. app = workflow.compile()
  27. # 6. Graph
  28. """try:
  29. with open("graph_workflow.png", "wb") as f:
  30. f.write(app.get_graph().draw_mermaid_png())
  31. print(" Graphique du workflow généré sous : graph_workflow.png")
  32. except Exception as e:
  33. print(f" Erreur génération image : {e}")"""