Strategi chunking yang dapat dipertahankan saat review
Ukuran chunk biasanya ditetapkan oleh default library dan tidak memiliki dasar pertimbangan. Pilih ukuran chunk dari dokumen itu sendiri, dan Anda harus dapat menjelaskan pilihan tersebut kepada orang yang akan menanyakan alasannya.
Mulai dari kegagalan yang Anda cegah
Pengelompokan memiliki tepat dua arah kegagalan. Bagian yang terlalu kecil kehilangan konteks yang diperlukan untuk menafsirkannya, sehingga langkah pengambilan menemukan bagian yang tepat dan model salah membacanya. Bagian yang terlalu besar mengencerkan penyematan, sehingga langkah pengambilan melewatkan bagian karena sebuah paragraf teks yang tidak relevan mendominasi vektor.
Mana arah yang lebih menyakitkan tergantung pada jenis dokumen, dan itu adalah keputusan desain keseluruhan. Dokumen naratif toleran terhadap bagian yang lebih besar karena makna tersebar. Dokumen referensi — kebijakan, kontrak, tabel spesifikasi — memerlukan yang lebih kecil karena setiap klausa adalah mandiri dan harus diambil sendiri.
Potong berdasarkan struktur sebelum Anda potong berdasarkan panjang
Pemisahan berbasis panjang adalah fallback, bukan strategi. Dokumen sudah memiliki struktur: judul, bagian, klausa bernomor, baris tabel. Pemisahan berdasarkan struktur tersebut memberikan bagian yang sesuai dengan unit yang akan dikutip oleh manusia, dan kutipan adalah apa yang jawaban butuhkan untuk terdengar kredibel.
- Potong di judul dan batas klausa terlebih dahulu. Gunakan panjang sebagai konstrain di atas itu, dengan tumpang tindih yang cukup besar untuk membawa kalimat melintasi batas.
- Pertahankan tabel utuh ketika mereka kecil, dan potong mereka per baris dengan header yang diulang ketika mereka tidak. Nilai yang dipisahkan dari header kolomnya lebih buruk daripada nilai yang hilang.
- Jangan pernah memisahkan aturan dari pengecualian. Jika pengecualian adalah kalimat berikutnya atau sub-klausa, mereka termasuk dalam bagian yang sama bahkan jika itu membuatnya lebih panjang dari target.
- Tambahkan jalur bagian ke setiap bagian — judul dokumen, bagian, subbagian. Bagian diambil tanpa konteks dan harus dapat dibaca secara mandiri, dalam jendela konteks model, tanpa aslinya di sekitarnya.
Memilih ukuran, bukan default
Ambil sampel representatif dari dokumen nyata, potong mereka dengan dua atau tiga konfigurasi kandidat, dan periksa bagian yang dihasilkan dengan membacanya. Pertanyaan untuk dijawab saat membaca adalah konkret: apakah orang yang kompeten dapat menjawab pertanyaan dari bagian ini saja? Jika jawabannya tidak untuk bagian yang signifikan, konfigurasi tersebut salah terlepas dari apa yang skor evaluasi katakan.
Kemudian periksa interaksi dengan pengambilan. Bagian yang pendek meningkatkan presisi pada pertanyaan spesifik dan merugikan pertanyaan yang memerlukan konteks sekitar. Jika korpus mengandung kedua jenis pertanyaan, itu adalah argumen jujur untuk pengelompokan struktural dengan ukuran variabel daripada satu nomor global.
Apa yang harus ditulis sehingga pilihan bertahan
- Konfigurasi, alasan untuk itu, dan keluarga dokumen yang dipilih untuknya.
- Dua atau tiga pertanyaan yang memotivasi pilihan, disimpan sebagai item evaluasi sehingga perubahan di masa depan diukur terhadap mereka.
- Apa yang harus dilakukan untuk keluarga dokumen baru, karena konfigurasi adalah keputusan tentang konten, bukan konstanta global.
- Tanggal dan korpus yang digunakan untuk penyetelan, karena pengelompokan yang dikonfigurasi terhadap satu korpus tidak secara otomatis benar untuk korpus lain.
Yang bisa Anda lakukan sekarang
- Lakukan chunking berdasarkan struktur dokumen terlebih dahulu, kemudian panjangnya
- Lampirkan konteks pada setiap chunk sehingga dapat dibaca secara mandiri
- Jangan pernah memisahkan sebuah aturan dari pengecualiannya atau sebuah nilai dari header-nya