CommencerCommencer gratuitement

Ajouter un outil à un graphique

Votre outil Wikipédia est prêt à l'emploi. Il est maintenant temps de l'incorporer dans le flux de travail graphique de votre chatbot ! Vous modifierez les nœuds et les arêtes du flux de travail graphique afin d'incorporer l'outil en tant que nœud supplémentaire. Vous configurerez le graphique de manière à ce que le chatbot puisse utiliser l'outil uniquement lorsque cela est nécessaire, en fonction de la requête de l'utilisateur. Pour gérer votre nœud d'outil et ses arêtes associées, les modules suivants ont été importés pour vous. Le site wikipedia_tool que vous avez construit est également disponible dans votre environnement. Une fois la construction du graphe terminée, votre graphe sera visualisé sous la forme d'un diagramme LangGraph.

from langgraph.prebuilt import ToolNode, tools_condition

Cet exercice fait partie du cours

Concevoir des systèmes agentiques avec LangChain

Afficher le cours

Instructions

  • Utilisez .add_node() pour ajouter le nœud "chatbot" au graphe, en le reliant à la fonction chatbot.
  • Créez un site ToolNode() avec wikipedia_tool en tant que tools et utilisez .add_node() pour l'ajouter au graphique en tant que "tools".
  • Appliquez .add_conditional_edges() à l'itinéraire de "chatbot" sur la base de tools_condition.
  • Utilisez .add_edge() pour relier "tools" à "chatbot", START à "chatbot", et "chatbot" à END pour compléter le flux de travail.

Exercice interactif pratique

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

# Add chatbot node to the graph
graph_builder.____("____", ____)

# Create a ToolNode to handle tool calls and add it to the graph
tool_node = ____(tools=[____])
graph_builder.____("tools", ____)

# Set up a condition to direct from chatbot to tool or END node
graph_builder.____("____", ____)

# Connect tools back to chatbot and connect START and END nodes
graph_builder.add_edge("____", "____")
graph_builder.add_edge(____, "chatbot")
graph_builder.add_edge("chatbot", ____)

graph = graph_builder.compile()
display(Image(graph.get_graph().draw_mermaid_png()))
Modifier et exécuter le code