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_model
als Knoten mit dem Label"chatbot"
hinzu und fügetool_node
mit dem Label"tools"
hinzu. - Definiere eine Kante, die den Knoten
START
mit dem Knoten"chatbot"
verbindet. - Füge mit
should_continue
bedingte Kanten vom Knoten"chatbot"
zu den Knoten"tools"
undEND
hinzu, 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 zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# 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()))