Aan de slagGa gratis aan de slag

Documenten recursief splitsen

Splitsen op één teken is eenvoudig en voorspelbaar, maar levert vaak suboptimale stukken op. In deze oefening pas je recursief tekensplitsen toe op het artikel Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks dat je in een eerdere oefening hebt geladen.

Onthoud dat recursief tekensplitsen over een lijst van tekens itereert en telkens op elk teken splitst om te zien of er stukken kunnen worden gemaakt die onder de chunk_size-limiet blijven.

Deze oefening maakt deel uit van de cursus

Retrieval Augmented Generation (RAG) met LangChain

Cursus bekijken

Oefeninstructies

  • Definieer een recursieve LangChain-tekstspliter die recursief splitst volgens de tekenlijst ['\n', '.', ' ', ''] met een chunkgrootte van 75 en een overlap van 10.
  • Splits document met de door jou gedefinieerde text_splitter en een geschikte methode.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

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 bewerken en uitvoeren