Erstelle den Grafik-Workflow für mehrere Werkzeuge
Deine Bausteine für die Erstellung deines Chatbot-Graphen sind jetzt fertig! Du fügst alle deine Knoten in einem einzigen Arbeitsablauf zusammen und verwendest Kanten, um die Verbindungen zwischen ihnen zu verwalten. Um loszulegen, wurde dein Graph-Workflow bereits mit MessagesState und dem StateGraph() eingerichtet, um die Nachrichtenaktualisierungen des Chatbots zu verfolgen. Die Funktion display() zum Rendern deines Diagramms als LangGraph-Diagramm wurde ebenfalls eingerichtet und die MemorySaver wurde für dich importiert.
from langgraph.graph import StateGraph
from langgraph.checkpoint.memory import MemorySaver
workflow = StateGraph(MessagesState)
Diese Übung ist Teil des Kurses
Agentensysteme mit LangChain entwerfen
Anleitung zur Übung
- Füge
call_modelals Knoten mit dem Label"chatbot"hinzu und fügetool_nodemit dem Label"tools"hinzu. - Definiere eine Kante, die den Knoten
STARTmit dem Knoten"chatbot"verbindet. - Füge mit
should_continuebedingte Kanten vom Knoten"chatbot"zu den Knoten"tools"undENDhinzu, bevor du den Knoten"tools"wieder mit dem Knoten"chatbot"verbindest. - Erstelle eine
MemorySaver()Instanz und kompiliere den Workflow in eine Anwendung mit dem Speichercheckpointer.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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()))