AI-agenter med LangChain og autonome arbeidsflyter · leksjon

Forklaring av dokumentlastere

Oppdag hvordan du laster inn data fra ulike kilder, som PDF-filer, nettsider og databaser, i et format som kan brukes av LangChain

Leksjon 1 av 411 trinn

Forklaring av dokumentlastere er en gratis leksjon i AI-agenter med LangChain og autonome arbeidsflyter på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i AI-agenter med LangChain og autonome arbeidsflyter, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i AI-agenter med LangChain og autonome arbeidsflyter inneholder totalt 4 leksjoner.

Data for smartere LLM-er

Store språkmodeller (LLM-er) er kraftige, men kunnskapen deres er begrenset til treningsdataene. For at AI-agenter virkelig skal være nyttige, trenger de ofte tilgang til oppdatert, ekstern informasjon.

  • Forestill Dem en agent som må svare på spørsmål om dagens nyheter.
  • Eller en agent som oppsummerer et bestemt dokument fra bedriftens interne lagringsområde.

Det er her datalasting kommer inn.

Hva er dokumentlastere?

Dokumentlastere er LangChains måte å hente eksterne data inn i arbeidsflyten til agenten. De fungerer som broer ved å konvertere rådata fra ulike kilder til et standardisert format som LLM-er kan forstå.

Tenk på dem som spesialiserte datakoblinger. De håndterer de kompliserte detaljene ved å lese filer, hente nettsider eller spørre databaser, og presenterer deretter dataene på en ryddig måte for LangChain.

LangChain Document-objektet

Når en laster henter data, pakker den dem inn i et Document-objekt. Dette er LangChains universelle beholder for data.

Hvert Document har vanligvis to hoveddeler:

  • page_content: Det faktiske tekstinnholdet som er hentet ut fra kilden (for eksempel teksten fra en PDF-side eller en nettartikkel).
  • metadata: En ordbok som inneholder ekstra informasjon om dokumentet (for eksempel kilde-URL, sidetall, filbane eller opprettelsesdato).

Laste inn lokale tekstfiler

En av de enkleste måtene å laste inn data på er fra en ren tekstfil på datamaskinen. LangChain tilbyr TextLoader til dette formålet.

Den tar imot en filbane, leser innholdet og oppretter et Document-objekt. La oss se hvordan det fungerer, ved å opprette en midlertidig fil og laste den inn.

TextLoader i praksis

Dette eksempelet oppretter en midlertidig tekstfil, skriver inn litt innhold, bruker deretter TextLoader til å lese den og skriver ut resultatet.

from langchain_community.document_loaders import TextLoader
import os
import tempfile

if __name__ == "__main__":
    # Create a temporary file
    with tempfile.NamedTemporaryFile(mode='w', delete=False, encoding='utf-8') as temp_file:
        temp_file.write("Hello CoddyKit!\nThis is a test document.")
        temp_file_path = temp_file.name

    print(f"Created temp file: {temp_file_path}")

    try:
        # Load the document using TextLoader
        loader = TextLoader(temp_file_path)
        documents = loader.load()

        # Print the content of the loaded document
        for doc in documents:
            print("--- Document Content ---")
            print(doc.page_content)
            print("--- Metadata ---")
            print(doc.metadata)
    finally:
        # Clean up the temporary file
        os.remove(temp_file_path)
        print(f"Cleaned up temp file: {temp_file_path}")

Nettinnhold med WebBaseLoader

Hva om dataene Deres ligger på internett? WebBaseLoader egner seg perfekt til å hente innhold direkte fra nettsider.

Den er intelligent nok til å trekke ut hovedinnholdet i teksten og ignorere navigasjon, annonser og andre irrelevante elementer. De trenger bare å oppgi URL-en!

Eksempel på WebBaseLoader

Slik henter De innhold fra en enkel eksempelnettside. Merk: Denne lasteren krever vanligvis at beautifulsoup4 og lxml er installert.

from langchain_community.document_loaders import WebBaseLoader

if __name__ == "__main__":
    # Define the URL to load
    url = "https://www.google.com/search?q=hello"
    print(f"Loading content from: {url}")

    # Initialize the WebBaseLoader
    loader = WebBaseLoader(url)

    # Load the documents
    documents = loader.load()

    # Print the content of the first loaded document
    if documents:
        print("--- Extracted Content (first 200 chars) ---")
        print(documents[0].page_content[:200] + "...")
        print("--- Metadata ---")
        print(documents[0].metadata)
    else:
        print("No documents loaded.")

PDF-er og strukturerte dokumenter

Det er vanlig å ha behov for å laste inn data fra PDF-er. LangChain tilbyr lastere som PyPDFLoader (som bruker biblioteket pypdf) til å håndtere dette.

Disse lasterne er utviklet for å trekke ut tekst fra komplekse formater, og bevarer ofte deler av strukturen. For PDF-er kan hver side bli et separat Document-objekt med metadata som angir sidetallet.

Det finnes også lastere for andre formater, som CSV, JSON og Markdown, samt for bestemte datastrukturer som Notion-databaser eller Confluence-sider.

Utover filer: databaselastere

Dataene Deres kan ligge i databaser. LangChain støtter ulike databaselastere som kobler seg direkte til datakildene Deres:

  • SQL Database Loader: Kobler seg til relasjonelle databaser (for eksempel PostgreSQL og MySQL) for å hente data basert på spørringer.
  • MongoDB Loader: For NoSQL-dokumentdatabaser.
  • Elasticsearch Loader: For å hente data fra Elasticsearch-indekser.

Disse lasterne gjør det mulig for agentene Deres å spørre etter og hente data dynamisk fra den eksisterende datainfrastrukturen.

Kort kontroll

Hvilket av følgende er IKKE et hovedformål med en LangChain Document Loader?

Oppsummering: Dokumentlastere

I denne leksjonen utforsket vi LangChains Document Loaders, viktige verktøy for å hente eksterne data inn i AI-agentene Deres.

  • Loaderne konverterer ulike datakilder (tekstfiler, nettsider, PDF-filer, databaser) til LangChains universelle Document-objekt.
  • Hvert Document inneholder page_content og metadata.
  • Vi så praktiske eksempler med TextLoader for lokale filer og WebBaseLoader for nettinnhold.

Deretter skal vi lære hvordan store dokumenter kan håndteres ved å dele dem opp i håndterbare deler.

Gratis å komme i gang

Lær deg AI-agenter med LangChain og autonome arbeidsflyter med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
50

Ofte stilte spørsmål

Er leksjonen «Forklaring av dokumentlastere» gratis?

Ja – hele teksten i «Forklaring av dokumentlastere» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av AI-agenter med LangChain og autonome arbeidsflyter-kurset, kan du oppgradere til CoddyKit PRO. Kurset i AI-agenter med LangChain og autonome arbeidsflyter inneholder totalt 4 leksjoner.

Hva lærer jeg i «Forklaring av dokumentlastere»?

Oppdag hvordan du laster inn data fra ulike kilder, som PDF-filer, nettsider og databaser, i et format som kan brukes av LangChain Du øver på AI-agenter med LangChain og autonome arbeidsflyter med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med AI-agenter med LangChain og autonome arbeidsflyter?

Ingen tidligere erfaring er nødvendig. AI-agenter med LangChain og autonome arbeidsflyter på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Forklaring av dokumentlastere»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne AI-agenter med LangChain og autonome arbeidsflyter-leksjonen?

Ja. Alle AI-agenter med LangChain og autonome arbeidsflyter-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Forklaring av dokumentlastere
  2. Tekstdelere og embedding-er
  3. Vektordatabaser for gjenfinning
  4. Retrievere og kontekstuell komprimering
← Tilbake til AI-agenter med LangChain og autonome arbeidsflyter