Membagi dokumen secara rekursif
Membagi berdasarkan satu karakter itu sederhana dan mudah diprediksi, tetapi sering kali menghasilkan potongan yang kurang optimal. Pada latihan ini, Anda akan menerapkan pembagian karakter secara rekursif untuk membagi makalah Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks yang Anda muat pada latihan sebelumnya.
Ingat bahwa pembagian karakter secara rekursif melakukan iterasi pada daftar karakter, membagi pada masing-masing secara berurutan untuk melihat apakah potongan dapat dibuat di bawah batas chunk_size.
Latihan ini adalah bagian dari kursus
Retrieval Augmented Generation (RAG) dengan LangChain
Petunjuk latihan
- Definisikan pemisah teks karakter rekursif LangChain untuk membagi secara rekursif melalui daftar karakter
['\n', '.', ' ', '']dengan ukuran potongan75dan tumpang tindih potongan10. - Bagi
documentmenggunakantext_splitteryang Anda definisikan dengan metode yang sesuai.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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])