LangChain-Architektur und LCEL
LangChain-Komponenten, LCEL-Pipe-Syntax, Chains, Runnable-Schnittstellen, Streaming-Chains.
LangChain-Architektur und LCEL ist eine kostenlose Learn AI with Python-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Learn AI with Python-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.
Was ist LangChain?
LangChain ist ein Framework zum Erstellen von LLM-Anwendungen, indem wiederverwendbare Bausteine wie Prompts, Modelle, Parser, Retriever und Memory miteinander kombiniert werden. Statt API-Aufrufe manuell zu verdrahten, erstellen Sie Chains, die Daten von einer Komponente zur nächsten weitergeben.
pip install langchain langchain-openaiDie zentralen Bausteine
In fast jeder Chain kommen drei Komponenten vor: ein PromptTemplate (formatiert Eingaben zu einem Prompt), ein Chat-Modell (das LLM) und ein Output-Parser (bereinigt das Ergebnis). LangChain verbindet sie zu einer Pipeline.
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParserEin Prompt-Template erstellen
Ein Prompt-Template enthält Platzhalter, die zur Laufzeit gefüllt werden. Verwenden Sie die Syntax {variable}. Wenn Sie die Chain mit einem Dict aufrufen, werden diese Schlüssel eingesetzt.
prompt = ChatPromptTemplate.from_template(
"Explain {topic} to a {audience} in two sentences."
)LCEL: Die Pipe-Syntax
LCEL (LangChain Expression Language) kombiniert Komponenten mit dem Pipe-Operator |. Die Ausgabe jedes Schritts fließt in den nächsten ein – von links nach rechts wie bei einer Unix-Pipeline.
model = ChatOpenAI(model="gpt-4o")
chain = prompt | model | StrOutputParser()Warum StrOutputParser?
Ein Chat-Modell gibt ein Nachrichtenobjekt und keinen einfachen String zurück. StrOutputParser() extrahiert den Text aus .content, sodass die Chain einen sauberen String liefert. Ohne ihn würden Sie eine strukturierte Nachricht zurückerhalten.
Die Chain aufrufen
Führen Sie die Chain mit chain.invoke() aus und übergeben Sie ein Dict, das die Variablen des Templates füllt. Das Ergebnis ist die geparste String-Ausgabe.
result = chain.invoke({"topic": "vectors", "audience": "beginner"})
print(result)Eine Chain streamen
Für eine Ausgabe in Echtzeit rufen Sie statt invoke die Methode chain.stream() auf. Sie gibt einen Generator zurück, der die Ausgabe in Chunks liefert, sobald das Modell sie erzeugt – genau wie beim Streaming über die rohe API.
for chunk in chain.stream({"topic": "RAG", "audience": "engineer"}):
print(chunk, end="", flush=True)Mehrere Eingaben bündeln
Verarbeiten Sie viele Eingaben effizient mit chain.batch(). Übergeben Sie eine Liste von Eingabe-Dicts. LangChain führt sie nebenläufig aus und gibt eine Liste von Ergebnissen in derselben Reihenfolge zurück.
inputs = [
{"topic": "loops", "audience": "kid"},
{"topic": "recursion", "audience": "kid"}
]
results = chain.batch(inputs)RunnablePassthrough
RunnablePassthrough leitet seine Eingabe unverändert weiter. Das ist wichtig, wenn eine Chain die ursprüngliche Eingabe zusammen mit einem transformierten Wert behalten muss – etwa bei RAG, wo sowohl die Frage als auch der abgerufene Kontext weitergegeben werden.
from langchain_core.runnables import RunnablePassthrough
chain = (
{"context": retriever, "question": RunnablePassthrough()}
| prompt | model | StrOutputParser()
)Mit Dictionaries kombinieren
Wenn ein Schritt ein Dict ist, wird jeder Wert parallel ausgeführt, und die Ergebnisse bilden die Eingabe für den nächsten Schritt. So entstehen die Multi-Input-Prompts für Retrieval-Pipelines, wobei jeder Schlüssel einem Runnable oder einem Passthrough zugeordnet wird.
parallel = {
"context": retriever,
"question": RunnablePassthrough()
}
# parallel feeds {"context": ..., "question": ...} downstreamWarum LCEL wichtig ist
LCEL-Chains bieten Streaming, Batching und Async ohne zusätzlichen Aufwand, sind leicht zu lesen und lassen sich wie Lego zusammenstecken. Dieselbe Pipe-Syntax reicht von einem einzeiligen Prompt bis zu einem vollständigen RAG-System.
Kurzer Test
Testen Sie Ihr Verständnis von LCEL.
Zusammenfassung: Architektur und LCEL
Sie haben LangChain-Komponenten mit dem Pipe-Operator kombiniert: prompt | model | StrOutputParser(). Sie haben Chains mit invoke ausgeführt, mit stream gestreamt und mit batch viele Eingaben verarbeitet. Mit RunnablePassthrough und der Dict-Komposition können Sie Multi-Input-Pipelines für RAG erstellen.
Häufig gestellte Fragen
Ist die Lektion „LangChain-Architektur und LCEL“ kostenlos?
Ja — der vollständige Text von „LangChain-Architektur und LCEL“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Learn AI with Python-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Learn AI with Python-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „LangChain-Architektur und LCEL“?
LangChain-Komponenten, LCEL-Pipe-Syntax, Chains, Runnable-Schnittstellen, Streaming-Chains. Du übst Learn AI with Python mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Learn AI with Python zu starten?
Keine Vorkenntnisse erforderlich. Learn AI with Python auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „LangChain-Architektur und LCEL“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Learn AI with Python-Lektion Code schreiben und ausführen?
Ja. Jede Learn AI with Python-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- LangChain-Architektur und LCEL
- Dokumente laden, aufteilen und mit Embeddings versehen
- Vektorspeicher: Chroma und FAISS
- Ein RAG-Frage-Antwort-System von Anfang bis Ende erstellen