Rekurzivní dělení dokumentů
Dělení textu na základě jednoho znaku je jednoduché a předvídatelné, ale výsledné bloky často nejsou optimální. V tomto cvičení použiješ rekurzivní dělení textu na článku Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, který jsi načetl/a v předchozím cvičení.
Rekurzivní dělení textu postupně prochází seznam znaků a zkouší na každém z nich rozdělit text tak, aby bloky nepřekročily limit chunk_size.
Toto cvičení je součástí kurzu
Retrieval Augmented Generation (RAG) with LangChain
Pokyny k cvičení
- Definuj rekurzivní splitter textu v LangChainu, který bude procházet seznam znaků
['\n', '.', ' ', '']s velikostí bloku75a překryvem10. - Rozděl
documentpomocí definovanéhotext_splittera vhodné metody.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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])