Laddare, splitters och vektorlager
Använd DocumentLoaders för PDF/HTML, TextSplitters för chunking och VectorStores för sökning.
Laddare, splitters och vektorlager är en gratis lektion i AI-agenter på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för AI-agenter, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i AI-agenter innehåller totalt 4 lektioner.
Delar av den här lektionen har ännu inte översatts och visas på engelska.
RAG:s tre grundpelare i LangChain
- Dokumentladdare — läser in rådata till Documents
- Textdelare — delar upp Documents i mindre delar
- Vektorlagringar — bäddar in och indexerar delar
Dokumentladdare
LangChain har över 100 laddare. Exempel:
from langchain_community.document_loaders import PyPDFLoader, WebBaseLoader, TextLoader
pdf_docs = PyPDFLoader('handbook.pdf').load()
web_docs = WebBaseLoader('https://example.com').load()
md_docs = TextLoader('README.md').load()Dokumentobjektet
Varje laddare returnerar en lista med Documents:
doc = pdf_docs[0]
print(doc.page_content) # the text
print(doc.metadata) # {'source': 'handbook.pdf', 'page': 1}Vanliga laddare
- PyPDFLoader, UnstructuredFileLoader — PDF-filer
- WebBaseLoader, SitemapLoader — webbsidor
- NotionLoader, GoogleDriveLoader — SaaS
- GitLoader — kodarkiv
- SQLDatabaseLoader — databaskolumner
Textdelare
Konvertera Documents till mindre delar:
from langchain.text_splitter import RecursiveCharacterTextSplitter
splitter = RecursiveCharacterTextSplitter(
chunk_size=800,
chunk_overlap=100,
separators=['\n\n', '\n', '. ', ' ']
)
chunks = splitter.split_documents(pdf_docs)Specialiserade delare
- MarkdownHeaderTextSplitter — delar upp efter rubrik
- RecursiveCharacterTextSplitter — tar hänsyn till stycken och meningar
- HTMLHeaderTextSplitter — tar hänsyn till HTML
- Språkspecifika (Python, Markdown, LaTeX)
Tokenmedveten uppdelning
Använd modellens tokenizer för tokenexakta uppdelningar:
splitter = RecursiveCharacterTextSplitter.from_tiktoken_encoder(
encoding_name='cl100k_base',
chunk_size=400,
chunk_overlap=50
)Vektorlagringar
Bädda in och lagra delarna:
from langchain_openai import OpenAIEmbeddings
from langchain_community.vectorstores import Chroma
embeddings = OpenAIEmbeddings(model='text-embedding-3-small')
store = Chroma.from_documents(
documents=chunks,
embedding=embeddings,
persist_directory='./db'
)Retrieval
retriever = store.as_retriever(search_kwargs={'k': 4})
results = retriever.invoke('What is our return policy?')
for d in results:
print(d.page_content[:200])Persistens
Chroma sparar på disk om Ni anger persist_directory. Så här läser Ni in det igen:
store = Chroma(persist_directory='./db', embedding_function=embeddings)Andra vektorlagringar
Samma gränssnitt, annan backend:
from langchain_community.vectorstores import FAISS, Pinecone, Qdrant, Weaviate
store = FAISS.from_documents(chunks, embeddings)
store.save_local('./faiss_db')MultiVectorRetriever
Indexera små delar men hämta stora överordnade delar:
from langchain.retrievers import MultiVectorRetriever
# Use the parent-child pattern automatically.Self-query-retrievers
Låt LLM generera metadatafilter från naturligt språk:
from langchain.retrievers.self_query.base import SelfQueryRetriever
# 'What did Alice say in 2023?' -> filter={author: 'Alice', year: 2023}Retrieverns utdata
Vad returnerar en LangChain-retriever?
Sammanfattning
Laddare + delare + vektorlagringar = en komplett RAG-stack. Nästa steg: komponera dem med LCEL till en komplett kedja.
Lär dig AI-agenter 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
- 60
- Lektioner
- 239
Vanliga frågor
Är lektionen ”Laddare, splitters och vektorlager” gratis?
Ja – hela texten till ”Laddare, splitters och vektorlager” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i AI-agenter, kan Ni uppgradera till CoddyKit PRO. Kursen i AI-agenter innehåller totalt 4 lektioner.
Vad lär jag mig i ”Laddare, splitters och vektorlager”?
Använd DocumentLoaders för PDF/HTML, TextSplitters för chunking och VectorStores för sökning. Ni övar på AI-agenter 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 AI-agenter?
Du behöver inga förkunskaper. Utbildningen i AI-agenter 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 2 av 4.
Hur lång tid tar lektionen ”Laddare, splitters och vektorlager”?
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 AI-agenter-lektionen?
Ja. Varje AI-agenter-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
- LangChain-arkitektur: modeller, prompter och kedjor
- Laddare, splitters och vektorlager
- LCEL (LangChain Expression Language)
- Bygg en RAG-kedja från början till slut