Zum Inhalt springen

LlamaParse - Document Parsing für RAG Cheatsheet

LlamaParse - Document Parsing für RAG Cheatsheet

LlamaParse ist ein Document-Parsing-Service vom LlamaIndex-Team, speziell für LLM- und RAG-Pipelines gebaut. Der Fokus liegt auf dem schweren Fall: PDFs mit komplexen Tabellen, mehrspaltigem Layout, Abbildungen und eingebetteten Diagrammen, die generische Text-Extractoren in unbrauchbaren Text flachmachen. Er gibt sauberes Markdown aus, das Struktur erhält, und seine unterscheidende Funktion sind natürlichsprachliche Parsing-Anweisungen — du beschreibst, wie das Dokument angeordnet ist und was damit zu tun ist, anstatt Extraktionsregeln zu konfigurieren.

LlamaParse ist ein gehosteter Service mit kostenlosen Tier (API-Schlüssel erforderlich). Für vollständig lokales Parsing siehe Docling oder Marker.

Installation

MethodeBefehl
pippip install llama-parse
Mit LlamaIndexpip install llama-index llama-parse
API-Schlüsselexport LLAMA_CLOUD_API_KEY="llx-..."
Überprüfungpython -c "from llama_parse import LlamaParse; print('ok')"

Grundlegendes Parsing

from llama_parse import LlamaParse

parser = LlamaParse(result_type="markdown")
documents = parser.load_data("./report.pdf")
print(documents[0].text)
ParameterZweck
result_type"markdown" (Struktur-erhaltend) oder "text"
num_workersParallele Seiten-Verarbeitung
verboseProgress-Ausgabe
languageDocument-Sprache-Hinweis
parsing_instructionNatürlichsprachliche Lenkung (unten)

Parsing-Anweisungen (der Differentiator)

parser = LlamaParse(
    result_type="markdown",
    parsing_instruction="""
    Dies ist ein Finanzbericht. Bewahre alle Tabellen als Markdown-Tabellen.
    Für jedes Diagramm, schreibe einen einzigen Absatz, der den Trend zeigt, den es darstellt.
    Ignoriere Seitenkopfzeilen und Fußzeilen.
    """,
)

Du beschreibst das Dokument und die gewünschte Handhabung in normaler Sprache, anstatt Extraktionscode zu schreiben — nützlich für domänenspezifische Layouts (Rechnungen, wissenschaftliche Arbeiten, Verträge), wo generische Parser schlecht abschneiden.

Async & Batch

import asyncio

async def parse_many(paths):
    parser = LlamaParse(result_type="markdown", num_workers=8)
    return await parser.aload_data(paths)

docs = asyncio.run(parse_many(["a.pdf", "b.pdf", "c.pdf"]))
MethodeVerwendung
load_data(path)Single-Datei, synchron
aload_data([paths])Async, mehrere Dateien
get_json_result(path)Strukturiertes JSON mit Seiten-Metadaten
get_images(...)Extrahiere eingebettete Bilder

Unterstützte Inputs

FormatAnmerkung
PDFPrimäres Ziel, einschließlich gescannter (OCR)
DOCX / PPTX / XLSXOffice-Formate
HTMLWeb-Dokumente
BilderPNG/JPEG via OCR

Verdrahtung in eine RAG-Pipeline

from llama_parse import LlamaParse
from llama_index.core import VectorStoreIndex
from llama_index.core.node_parser import MarkdownElementNodeParser

docs = LlamaParse(result_type="markdown").load_data("./manual.pdf")

# Markdown-bewusste Chunking hält Tabellen und Abschnitte intakt
node_parser = MarkdownElementNodeParser()
nodes = node_parser.get_nodes_from_documents(docs)

index = VectorStoreIndex(nodes)

Die Kopplung von Markdown-Ausgabe mit einem Markdown-bewussten Node-Parser ist der Sinn: Tabellen überleben Parsing und Chunking, wo die meisten RAG-Pipelines tabulare Fakten verlieren.

Tabellen gut handhaben

TechnikWarum
result_type="markdown"Tabellen werden Markdown-Gitter
Parsing-Anweisung für TabellenErzwinge konsistente Tabellenhandhabung
MarkdownElementNodeParserHält eine Tabelle in einem Chunk
Reihe-pro-Satz SerialisierungMacht einzelne Zeilen abrufbar

Kosten & Praktische Anmerkungen

ÜberlegungDetail
Gehosteter ServiceDokumente werden zu LlamaCloud gesendet
Kostenlos TierLimitierte Seiten pro Tag
CachingErneutes Parsen der gleichen Datei kann Ergebnisse wiederverwenden
DatenschutzFür sensible Dokumente bevorzuge lokale Parser

LlamaParse vs lokale Parser

AspektLlamaParseDoclingMarker
HostingCloud-ServiceLokalLokal
Komplexe TabellenSehr starkStarkGut
Benutzerdefinierte AnweisungenNatürlichspracheConfigConfig
DatenschutzDaten verlassen deine MachineVollständig lokalVollständig lokal
Bestes fürSchwere Layouts, schnelle ErgebnisseSelf-Hosted RAG IngestionGPU-Bulk-Konvertierung

Für Datenschutz-sensitive Corpora verwende Docling; für Bulk-lokale Konvertierung verwende Marker.

Ressourcen