Memisah berdasarkan karakter
Proses penting dalam menerapkan Retrieval Augmented Generation (RAG) adalah memecah dokumen menjadi potongan (chunk) untuk disimpan dalam basis data vektor.
Tersedia beberapa strategi pemecahan (splitting) di LangChain, sebagian memiliki rutinitas yang lebih kompleks daripada yang lain. Pada latihan ini, Anda akan menerapkan character text splitter, yang memecah dokumen berdasarkan karakter dan mengukur panjang chunk berdasarkan jumlah karakter.
Ingat bahwa tidak ada strategi pemecahan yang ideal; Anda mungkin perlu bereksperimen dengan beberapa pendekatan untuk menemukan yang paling tepat bagi kasus penggunaan Anda.
Latihan ini adalah bagian dari kursus
Mengembangkan Aplikasi LLM dengan LangChain
Petunjuk latihan
- Impor kelas
CharacterTextSplitterdarilangchain_text_splitters. - Buat instance
CharacterTextSplitterdenganseparator="\n",chunk_size=24, danchunk_overlap=10. - Gunakan metode
.split_text()untuk memecahquotelalu cetak chunk beserta panjang chunk-nya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Import the character splitter
from langchain_text_splitters import ____
quote = 'Words are flowing out like endless rain into a paper cup,\nthey slither while they pass,\nthey slip away across the universe.'
chunk_size = 24
chunk_overlap = 10
# Create an instance of the splitter class
splitter = CharacterTextSplitter(
separator=____,
chunk_size=____,
chunk_overlap=____)
# Split the string and print the chunks
docs = splitter.____(quote)
print(docs)
print([len(doc) for doc in docs])