Lär Er AI med Python · Lektion

LangChain-arkitektur och LCEL

LangChain-komponenter, LCEL-pipesyntax, kedjor, körbara gränssnitt, streamingkedjor.

Lektion 1 av 413 steg

LangChain-arkitektur och LCEL är en gratis lektion i Lär Er AI med Python på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Lär Er AI med Python, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Lär Er AI med Python innehåller totalt 4 lektioner.

Vad är LangChain?

LangChain är ett ramverk för att bygga LLM-applikationer genom att kombinera återanvändbara delar: prompter, modeller, parsers, retrievers och minne. I stället för att manuellt koppla ihop API-anrop bygger du kedjor som skickar data från en komponent till nästa.

pip install langchain langchain-openai

De centrala byggstenarna

Tre komponenter förekommer i nästan varje kedja: en PromptTemplate (formaterar indata till en prompt), en chattmodell (LLM:en) och en utdata-parser (rensar resultatet). LangChain kopplar ihop dem till en pipeline.

from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser

Bygga en promptmall

En promptmall innehåller platshållare som fylls i vid körning. Använd syntaxen {variable}. När du anropar kedjan med en dict ersätts dessa nycklar.

prompt = ChatPromptTemplate.from_template(
    "Explain {topic} to a {audience} in two sentences."
)

LCEL: Pipesyntaxen

LCEL (LangChain Expression Language) kombinerar komponenter med pipe-operatorn |. Utdata från varje steg flödar vidare till nästa, från vänster till höger som i en Unix-pipeline.

model = ChatOpenAI(model="gpt-4o")

chain = prompt | model | StrOutputParser()

Varför StrOutputParser?

En chattmodell returnerar ett meddelandeobjekt, inte en vanlig sträng. StrOutputParser() extraherar texten i .content, så att kedjan ger en ren sträng. Utan den skulle du få tillbaka ett strukturerat meddelande.

Anropa kedjan

Kör kedjan med chain.invoke() och skicka med en dict som fyller i mallens variabler. Resultatet är den tolkade strängutdatan.

result = chain.invoke({"topic": "vectors", "audience": "beginner"})
print(result)

Strömma en kedja

För utdata i realtid anropar du chain.stream() i stället för invoke. Metoden returnerar en generator som ger utdatabitar allt eftersom modellen producerar dem, precis som vid direkt API-strömning.

for chunk in chain.stream({"topic": "RAG", "audience": "engineer"}):
    print(chunk, end="", flush=True)

Bearbeta flera indata samtidigt

Bearbeta många indata effektivt med chain.batch(). Skicka en lista med indatadictar, så kör LangChain dem samtidigt och returnerar en resultatlista i samma ordning.

inputs = [
    {"topic": "loops", "audience": "kid"},
    {"topic": "recursion", "audience": "kid"}
]
results = chain.batch(inputs)

RunnablePassthrough

RunnablePassthrough vidarebefordrar sin indata oförändrad. Den är nödvändig när en kedja måste behålla den ursprungliga indatan tillsammans med ett transformerat värde, vilket är vanligt i RAG där både frågan och den hämtade kontexten skickas vidare.

from langchain_core.runnables import RunnablePassthrough

chain = (
    {"context": retriever, "question": RunnablePassthrough()}
    | prompt | model | StrOutputParser()
)

Kombinera med dictar

När ett steg är en dict körs varje värde parallellt och resultaten bildar indatan till nästa steg. På så sätt bygger du promptar med flera indata som driver hämtningspipelines, där varje nyckel kopplas till en körbar komponent eller en passthrough.

parallel = {
    "context": retriever,
    "question": RunnablePassthrough()
}
# parallel feeds {"context": ..., "question": ...} downstream

Varför LCEL är viktigt

LCEL-kedjor får strömning, batchbearbetning och asynkron körning på köpet, är lätta att läsa och kan sättas ihop som Lego. Samma pipesyntax kan skalas från en prompt på en rad till ett komplett RAG-system.

Snabbtest

Testa dina kunskaper om LCEL.

Sammanfattning: Arkitektur och LCEL

Du kombinerade LangChain-komponenter med pipe-operatorn: prompt | model | StrOutputParser(). Du körde kedjor med invoke, strömmade med stream och bearbetade många indata med batch. RunnablePassthrough och kombinationer med dictar lät dig bygga pipelines med flera indata för RAG.

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
53
Lektioner
225

Vanliga frågor

Är lektionen ”LangChain-arkitektur och LCEL” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Lär Er AI med Python, inklusive ”LangChain-arkitektur och LCEL”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Lär Er AI med Python innehåller totalt 4 lektioner.

Vad lär jag mig i ”LangChain-arkitektur och LCEL”?

LangChain-komponenter, LCEL-pipesyntax, kedjor, körbara gränssnitt, streamingkedjor. Ni övar på Lär Er AI med Python med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Lär Er AI med Python?

Du behöver inga förkunskaper. Utbildningen i Lär Er AI med Python på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”LangChain-arkitektur och LCEL”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Lär Er AI med Python-lektionen?

Ja. Varje Lär Er AI med Python-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. LangChain-arkitektur och LCEL
  2. Läsa in, dela upp och bädda in dokument
  3. Vektorlagring: Chroma och FAISS
  4. Bygga ett RAG-system för frågor och svar från början till slut
← Tillbaka till Lär Er AI med Python