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
Instructions
- Utilisez
.add_node()
pour ajouter le nœud"chatbot"
au graphe, en le reliant à la fonctionchatbot
. - Créez un site
ToolNode()
avecwikipedia_tool
en tant quetools
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 detools_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()))