CommencerCommencer gratuitement

Créez le flux de travail graphique pour plusieurs outils

Vos éléments de base pour créer votre graphique de chatbot sont maintenant prêts ! Vous réunirez tous vos nœuds dans un flux de travail unique en utilisant des arêtes pour gérer les connexions entre eux. Pour commencer, votre flux de travail graphique a déjà été mis en place pour vous avec MessagesState et le cursus StateGraph() pour suivre les mises à jour des messages du chatbot. La fonction display() pour rendre votre graphique sous forme de diagramme LangGraph a également été mise en place et le site MemorySaver a été importé pour vous.

from langgraph.graph import StateGraph
from langgraph.checkpoint.memory import MemorySaver

workflow = StateGraph(MessagesState)

Cet exercice fait partie du cours

Concevoir des systèmes agentiques avec LangChain

Afficher le cours

Instructions

  • Ajoutez call_model en tant que nœud en utilisant l'étiquette "chatbot" et ajoutez tool_node avec l'étiquette "tools".
  • Définissez une arête reliant le nœud START au nœud "chatbot".
  • Ajoutez des arêtes conditionnelles du nœud "chatbot" aux nœuds "tools" et END à l'aide de should_continue, avant de relier le nœud "tools" au nœud "chatbot".
  • Créez une instance MemorySaver() et compilez le flux de travail dans une application avec la mémoire checkpointer.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Add nodes for chatbot and tools
workflow.add_node("____", ____)
workflow.add_node("____", ____)

# Define an edge connecting START to the chatbot
workflow.add_edge(____, "____")

# Define conditional edges and route "tools" back to "chatbot"
workflow.add_conditional_edges("____", ____, ["____", ____])
workflow.add_edge("____", "____")

# Set up memory and compile the workflow
memory = ____()
app = workflow.____(checkpointer=____)

display(Image(app.get_graph().draw_mermaid_png()))
Modifier et exécuter le code