LoslegenKostenlos loslegen

Dokumente rekursiv splitten

Das Splitten nach einem einzelnen Zeichen ist einfach und vorhersehbar, führt aber oft zu suboptimalen Abschnitten. In dieser Übung wendest du rekursives Zeichensplitting auf das Paper Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks an, das du in einer früheren Übung geladen hast.

Denk daran: Beim rekursiven Zeichensplitting wird über eine Liste von Zeichen iteriert und nacheinander an jedem Zeichen gesplittet, um zu prüfen, ob Abschnitte unterhalb der chunk_size-Grenze erstellt werden können.

Diese Übung ist Teil des Kurses

Retrieval Augmented Generation (RAG) mit LangChain

Kurs anzeigen

Anleitung zur Übung

  • Definiere einen rekursiven LangChain-Textsplitter, der rekursiv über die Zeichenliste ['\n', '.', ' ', ''] splittet, mit einer Abschnittsgröße (chunk size) von 75 und einer Überlappung (chunk overlap) von 10.
  • Splitte document mit dem von dir definierten text_splitter über eine passende Methode.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

loader = PyPDFLoader("rag_paper.pdf")
document = loader.load()

# Define a text splitter that splits recursively through the character list
text_splitter = ____(
    ____,
    chunk_size=75,  
    chunk_overlap=10  
)

# Split the document using text_splitter
chunks = text_splitter.____
print(chunks)
print([len(chunk.page_content) for chunk in chunks])
Code bearbeiten und ausführen