Adaugă un instrument într-un graf
Instrumentul tău Wikipedia este pregătit. Acum este momentul să îl integrezi în fluxul de lucru al grafului din chatbot! Vei modifica nodurile și muchiile din graful de lucru pentru a incorpora instrumentul ca nod suplimentar. Vei configura graful astfel încât chatbot-ul să poată folosi instrumentul doar când este necesar, în funcție de interogarea utilizatorului. Pentru a gestiona nodul de instrumente și muchiile asociate, următoarele module au fost deja importate pentru tine. wikipedia_tool pe care l-ai construit este de asemenea disponibil în mediul tău. După ce graful este finalizat, acesta va fi vizualizat ca o diagramă LangGraph.
from langgraph.prebuilt import ToolNode, tools_condition
Acest exercițiu face parte din cursul
Proiectarea sistemelor agentice cu LangChain
Instrucțiuni pentru exercițiu
- Folosește
.add_node()pentru a adăuga nodul"chatbot"în graf, legându-l de funcțiachatbot. - Creează un
ToolNode()cuwikipedia_toolcatoolsși folosește.add_node()pentru a-l adăuga în graf cu numele"tools". - Aplică
.add_conditional_edges()pentru a direcționa fluxul din"chatbot"pe bazatools_condition. - Folosește
.add_edge()pentru a conecta"tools"înapoi la"chatbot",STARTla"chatbot"și"chatbot"laEND, pentru a finaliza fluxul de lucru.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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()
try:
display(Image(graph.get_graph().draw_mermaid_png()))
except Exception:
print("Plot generation failed... falling back to cached asset.")
display_fallback()