Graph- und Agenten-States
Du wurdest beauftragt, einen einfachen Chatbot zu erstellen, der Fragen innerhalb einer Schul-App für die Oberstufe beantworten kann. Die Schule möchte, dass du eine Version von ChatGPT von OpenAI als LLM verwendest. Du hast entschieden, dass du diese Aufgabe effizient mit LangGraph lösen kannst, indem du einen Chatbot-Agenten mit Nodes aufbaust. Zuerst definierst du einen Agenten-State(), um die Daten des Agenten zu speichern, und richtest ein StateGraph()-Objekt ein, um den Workflow des Agenten zu steuern.
Die benötigten Module wurden für diese und die folgenden Übungen bereits importiert:
from langchain_openai import ChatOpenAI
from typing import Annotated
from typing_extensions import TypedDict
from langgraph.graph import StateGraph, START, END
from langgraph.graph.message import add_messages
Diese Übung ist Teil des Kurses
<Kurs>Agentische Systeme mit LangChain entwerfen</Kurs>Übungsanweisungen
- Richte das
llmmitChatOpenAI()und dem Modell"gpt-4o-mini"ein. - Definiere die Klasse
StatemitTypedDict, um die Daten des Chatbots zu verwalten. - Gib
messagesalsAnnotated-listunter Verwendung vonadd_messagesan. - Initialisiere eine
StateGraph-Instanz mitState, um den Workflow des Chatbots zu strukturieren.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Define the llm
llm = ____(model="____", api_key="OPENAI_API_KEY")
# Define the State
class State(____):
# Define messages with metadata
messages: ____[____, ____]
# Initialize StateGraph
graph_builder = ____(____)