Zacznij terazZacznij za darmo

Dodaj narzędzie do grafu

Twoje narzędzie Wikipedia jest gotowe do działania. Czas zintegrować je z grafem przepływu pracy chatbota! Zmodyfikujesz węzły i krawędzie w grafie, dodając narzędzie jako dodatkowy węzeł. Skonfigurujesz graf tak, aby chatbot korzystał z narzędzia tylko wtedy, gdy będzie to konieczne – w zależności od zapytania użytkownika. Do zarządzania węzłem narzędzia i powiązanymi krawędziami zaimportowano już dla ciebie następujące moduły. W środowisku dostępne jest też zbudowane przez ciebie narzędzie wikipedia_tool. Po zakończeniu budowania grafu zostanie on zwizualizowany jako diagram LangGraph.

from langgraph.prebuilt import ToolNode, tools_condition

To ćwiczenie jest częścią kursu

Projektowanie systemów agentowych z LangChain

Zobacz kurs

Instrukcje do ćwiczenia

  • Użyj .add_node(), aby dodać węzeł "chatbot" do grafu i połączyć go z funkcją chatbot.
  • Utwórz ToolNode() z wikipedia_tool jako tools i użyj .add_node(), aby dodać go do grafu jako "tools".
  • Zastosuj .add_conditional_edges(), aby kierować ruch z "chatbot" na podstawie tools_condition.
  • Użyj .add_edge(), aby połączyć "tools" z powrotem z "chatbot", START z "chatbot" oraz "chatbot" z END, zamykając w ten sposób przepływ pracy.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod