8 Jenis Chunking Untuk Sistem Rag - Analytics Vidhya
Membuka kuasa Chunking dalam Generasi Retrieval-Augmented (RAG): menyelam yang mendalam
dengan cekap memproses jumlah data teks yang besar adalah penting untuk membina sistem generasi pengambilan semula (RAG) yang kuat dan berkesan. Artikel ini meneroka pelbagai strategi chunking, penting untuk mengoptimumkan pengendalian data dan meningkatkan prestasi aplikasi berkuasa AI. Kami akan menyelidiki pendekatan yang berbeza, menonjolkan kekuatan dan kelemahan mereka, dan menawarkan contoh praktikal.
Jadual Kandungan
- apa yang dipotong dalam kain?
- kepentingan chunking
- Memahami Senibina Rag dan Chunking
- Cabaran Biasa dengan Sistem RAG
- Memilih Strategi Chunking Optimal
- Teks berasaskan watak Chunking
- teks watak rekursif berpecah dengan langchain
- Chunking khusus dokumen (HTML, Python, JSON, dll.)
- Chunking semantik dengan Langchain dan Openai
- Chunking Agentic (Chunking yang didorong oleh LLM)
- Chunking berasaskan seksyen
- chunking kontekstual untuk pengambilan semula yang dipertingkatkan
- terlambat untuk memelihara konteks jarak jauh
- Kesimpulan
Apa yang ada di dalam kain?
Chunking adalah proses membahagikan dokumen teks besar ke unit yang lebih kecil dan lebih mudah diurus. Ini penting untuk sistem RAG kerana model bahasa mempunyai tingkap konteks yang terhad. Chunking memastikan bahawa maklumat yang relevan kekal dalam had ini, memaksimumkan nisbah isyarat-ke-bunyi dan meningkatkan prestasi model. Matlamatnya bukan hanya untuk membahagikan data, tetapi untuk mengoptimumkan persembahannya kepada model untuk peningkatan dan ketepatan yang dipertingkatkan.
mengapa chunking penting?
Anton Troynikov, pengasas bersama Chroma, menekankan bahawa data yang tidak relevan dalam tetingkap konteks mengurangkan keberkesanan aplikasi. Chunking sangat penting untuk:
- mengatasi had tetingkap konteks: memastikan maklumat utama tidak hilang kerana sekatan saiz.
- Meningkatkan nisbah isyarat-ke-bunyi: menapis kandungan yang tidak relevan, meningkatkan ketepatan model.
- Meningkatkan kecekapan pengambilan semula: memudahkan pengambilan maklumat yang lebih cepat dan lebih tepat.
- Pengoptimuman khusus tugas: Membolehkan strategi penyesuaian untuk keperluan aplikasi tertentu (mis., Summarization vs. Soalan-Answering).
seni bina rag dan chunking
- Data mentah dibahagikan kepada ketulan yang lebih kecil dan bermakna. embedding:
- ketulan ditukar menjadi embeddings vektor. Pengambilan & Generasi:
- Ketulan yang relevan diambil berdasarkan pertanyaan pengguna, dan LLM menghasilkan respons menggunakan maklumat yang diambil.
sistem kain menghadapi beberapa cabaran:
- isu pengambilan semula:
- pengambilan maklumat yang tidak tepat atau tidak lengkap. kesukaran penjanaan:
- halusinasi, output yang tidak relevan atau berat sebelah.
Masalah Integrasi:Kesukaran menggabungkan maklumat yang diambil secara koheren. - memilih strategi chunking yang betul
Strategi chunking yang ideal bergantung kepada beberapa faktor: jenis kandungan, model embedding, dan pertanyaan pengguna yang dijangkakan. Pertimbangkan struktur dan ketumpatan kandungan, batasan token model embedding, dan jenis soalan pengguna mungkin bertanya.
1. Teks berasaskan watak Chunking
Kaedah mudah ini memisahkan teks ke dalam ketulan saiz tetap berdasarkan kiraan aksara, tanpa mengira makna semantik. Walaupun mudah, ia sering mengganggu struktur dan konteks kalimat. Contoh Menggunakan Python:
2. Teks watak rekursif berpecah dengan langchain
text = "Clouds come floating into my life..." chunks = [] chunk_size = 35 chunk_overlap = 5 # ... (Chunking logic as in the original example)
Pendekatan ini secara rekursif memisahkan teks dengan menggunakan pemisah berganda (mis., Double newline, satu garis baru, ruang) dan menggabungkan ketulan yang lebih kecil untuk mengoptimumkan saiz aksara sasaran. Ia lebih canggih daripada chunking berasaskan watak, menawarkan pemeliharaan konteks yang lebih baik. Contoh Menggunakan Langchain:
3. Chunking khusus dokumen
# ... (LangChain installation and code as in the original example)
Kaedah ini menyesuaikan diri dengan format dokumen yang berbeza (HTML, Python, Markdown, dll.) Menggunakan pemisah khusus format. Ini memastikan bahawa Chunking menghormati struktur dokumen yang wujud. Contoh menggunakan langchain untuk python dan markdown disediakan dalam respons asal.
4. Semantik Chunking dengan Langchain dan Openai
Chunking semantik membahagikan teks berdasarkan makna semantik, menggunakan teknik seperti embeddings ayat untuk mengenal pasti titik putus semulajadi. Pendekatan ini memastikan bahawa setiap bahagian mewakili idea yang koheren. Contoh Menggunakan Langchain dan Openai Embeddings:
5. Agentic Chunking (LLM yang didorong oleh LLM)
# ... (OpenAI API key setup and code as in the original example)
Chunking Agentic menggunakan LLM untuk mengenal pasti titik putus semulajadi dalam teks, menghasilkan ketulan yang lebih kontekstual. Pendekatan ini memanfaatkan pemahaman bahasa dan konteks LLM untuk menghasilkan segmen yang lebih bermakna. Contoh Menggunakan Openai API:
text = "Clouds come floating into my life..." chunks = [] chunk_size = 35 chunk_overlap = 5 # ... (Chunking logic as in the original example)
6. Chunking berasaskan bahagian
Kaedah ini memanfaatkan struktur yang wujud dokumen (tajuk, subheadings, bahagian) untuk menentukan ketulan. Ia amat berkesan untuk dokumen berstruktur seperti kertas penyelidikan atau laporan. Contoh Menggunakan PymUpdf dan Laten Dirichlet Peruntukan (LDA) untuk Chunking berasaskan topik:
# ... (LangChain installation and code as in the original example)
7. Kontekstual Chunking
Chunking kontekstual memberi tumpuan kepada memelihara konteks semantik dalam setiap bahagian. Ini memastikan bahawa maklumat yang diambil adalah koheren dan relevan. Contoh Menggunakan Langchain dan Prompt Custom:
# ... (OpenAI API key setup and code as in the original example)
8. Lewat Chunking
kelewatan penangguhan lewat sehingga selepas menghasilkan embeddings untuk keseluruhan dokumen. Ini mengekalkan ketergantungan kontekstual jarak jauh, meningkatkan ketepatan embeddings dan pengambilan semula. Contoh Menggunakan Model Jina Embeddings:
# ... (OpenAI API key setup and code as in the original example)
Kesimpulan
Chunking yang berkesan adalah yang paling penting untuk membina sistem RAG yang berprestasi tinggi. Pilihan strategi chunking memberi kesan yang signifikan terhadap kualiti pengambilan maklumat dan kesesuaian respons yang dihasilkan. Dengan berhati -hati dengan mempertimbangkan ciri -ciri data dan keperluan khusus aplikasi, pemaju boleh memilih kaedah chunking yang paling sesuai untuk mengoptimumkan prestasi sistem RAG mereka. Ingatlah untuk sentiasa mengutamakan mengekalkan integriti dan kaitan kontekstual dalam setiap bahagian.Atas ialah kandungan terperinci 8 Jenis Chunking Untuk Sistem Rag - Analytics Vidhya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











Hei ada, pengekodan ninja! Apa tugas yang berkaitan dengan pengekodan yang anda telah merancang untuk hari itu? Sebelum anda menyelam lebih jauh ke dalam blog ini, saya ingin anda memikirkan semua kesengsaraan yang berkaitan dengan pengekodan anda-lebih jauh menyenaraikan mereka. Selesai? - Let ’

Pengenalan OpenAI telah mengeluarkan model barunya berdasarkan seni bina "strawberi" yang sangat dijangka. Model inovatif ini, yang dikenali sebagai O1, meningkatkan keupayaan penalaran, yang membolehkannya berfikir melalui masalah MOR

Pernyataan Jadual Alter SQL: Menambah lajur secara dinamik ke pangkalan data anda Dalam pengurusan data, kebolehsuaian SQL adalah penting. Perlu menyesuaikan struktur pangkalan data anda dengan cepat? Pernyataan Jadual ALTER adalah penyelesaian anda. Butiran panduan ini menambah colu

Pengenalan Mistral telah mengeluarkan model multimodal yang pertama, iaitu Pixtral-12B-2409. Model ini dibina atas parameter 12 bilion Mistral, NEMO 12B. Apa yang membezakan model ini? Ia kini boleh mengambil kedua -dua gambar dan Tex

Semasa bekerja pada AIS AI, pemaju sering mendapati diri mereka menavigasi perdagangan antara kelajuan, fleksibiliti, dan kecekapan sumber. Saya telah meneroka rangka kerja AI yang agentik dan menjumpai Agno (sebelum ini adalah Phi-

Penanda Aras Bermasalah: Kajian Kes Llama Pada awal April 2025, Meta melancarkan model Llama 4 suite, dengan metrik prestasi yang mengagumkan yang meletakkan mereka dengan baik terhadap pesaing seperti GPT-4O dan Claude 3.5 sonnet. Pusat ke LAUNC

Bolehkah permainan video meringankan kebimbangan, membina fokus, atau menyokong kanak -kanak dengan ADHD? Memandangkan cabaran penjagaan kesihatan melonjak di seluruh dunia - terutamanya di kalangan belia - inovator beralih kepada alat yang tidak mungkin: permainan video. Sekarang salah satu hiburan terbesar di dunia Indus

Buka kunci kekuatan model embedding: menyelam jauh ke kursus baru Andrew Ng Bayangkan masa depan di mana mesin memahami dan menjawab soalan anda dengan ketepatan yang sempurna. Ini bukan fiksyen sains; Terima kasih kepada kemajuan dalam AI, ia menjadi R
