E Elecay
5.3.1.2 Tip: mekanizma

Belge Parçalama (Chunking) Stratejileri

Parça boyu yanlış kurulmuş bir sorudur. Belgenin kendi sınırlarını bulun, sonra iki şeyi ölçün: cevap kaç birime yayılıyor, birim yalnız okununca doğru mu?

Seviye
Orta
Ön koşul
RAG Nedir ve Hangi Problemi Çözer? · Kişisel Bilgi Tabanı: Modelin Bilmediği Tek Şey Sizin Kararlarınız (isteğe bağlı)
Okuma süresi
~10 dakika

Bir sözleşmeyi 500 karakterlik dilimlere bölün. Sonra sisteme sorun: bu maddede kim, neyi taahhüt ediyor? Cevap gelir. Akıcı gelir. Ve büyük olasılıkla yanlış gelir, çünkü maddenin öznesi bir dilim geride kaldı.

Aynı belgeyi bu kez maddelerin kendi sınırlarından bölün. Şimdi başka bir şey bozulur: bir madde tek başına “4.2’de tanımlanan Taraf” diyor ve o tanım tamamen başka bir parçada duruyor.

İki denemede de kod çalıştı, hata mesajı çıkmadı, sistem ayakta kaldı. Parçalama böyle bir karardır: yanlış yapıldığında size haber vermez, yalnızca cevapları sessizce kötüleştirir.

Parçalamak neden bir tasarım kararı

Getirim, bir belgeyi değil bir parçayı getirir. Yani sistem, ancak sizin kestiğiniz sınırlar içinde bir cevap bulabilir. Cevap iki parçaya bölünmüşse, getirimi ne kadar iyileştirirseniz iyileştirin bütün cevap bir daha asla tek seferde gelmez.

Bu, boru hattındaki diğer kararlardan iki bakımdan ayrılır. Birincisi yukarıda durur: kendisinden sonraki her katman onun bıraktığı sınırları miras alır. İkincisi geri alması pahalıdır. Parçalamayı değiştirmek, o güne kadar hesaplanmış bütün sayıları çöpe atmak ve tüm külliyatı baştan işlemek demektir. → Gömme Modeli Seçimi ve Vektör Veritabanları

Bu yüzden parça boyu bir ayar düğmesi gibi görünse de aslında bir mimari karardır. Ayar düğmelerini sonradan çevirirsiniz; bunu çeviremezsiniz.

Sezgi: belgenin kendi dikiş yerleri

Bir kitabı fotokopiciye götürdüğünüzü düşünün. “Bunu tek tek dağıtabileceğim sayfalara böl” diyorsunuz. Fotokopici iki şey yapabilir.

Ya cetvelle ölçüp her otuz satırda bir keser. Hızlıdır, her kitapta aynı şekilde çalışır, ve bazı sayfalar cümlenin ortasında başlar. Ya da kitaba bakar: burası bölüm başı, burası madde sonu, burası yeni bir konu. O dikiş yerlerinden keser. Yavaştır, her kitapta ayrı düşünmek gerekir, ve eline geçen sayfalar kendi başına okunabilir.

Doğru kesim bir uzunluk değildir. Belgenin zaten kırıldığı yerdir. Her belge türünün kendi dikiş yeri vardır: bölüm, madde, soru, satır, mesaj, gün.

Benzetme şurada bozuluyor: fotokopi alan kişi sayfa numarasına bakıp bir öncekini isteyebilir. Getirimde böyle bir imkân yok. Parça, komşusuz ve numarasız gelir; içinde ne varsa cevap ondan çıkar. Elinizdeki sayfa eksikse, onu tamamlayacak kimse yok.

Yerleşik ölçüt ve nerede yanılttığı

Bu işin literatüründe yerleşmiş bir ölçüt var ve neredeyse her yerde aynı biçimde geçiyor: parça, kendi başına anlaşılacak kadar büyük olmalı; fazladan bağlam taşımayacak kadar da küçük.

Ölçüt yanlış değil. Ama tek bir talimat gibi okunuyor, oysa iki ayrı talimat ve ikisi ancak belge anlamını düzyazıda taşıdığında aynı yöne bakar. Anlamın bir kısmı yapıda duruyorsa, ikisi ters yöne çeker. Üç somut yerde bu çatışma görünür.

Sözleşme ve mevzuatta iki yarı da “küçük” der ve ikisi de yanılır. Doğal birim bir maddedir, kısacıktır. Ama madde metni referansla doludur: “bu madde”, “yukarıdaki taraf”, “işbu sözleşme”. Küçük parça hem doğal hem yalnız okunamaz.

Tabloda, katalogda ve kayıt dosyasında iki yarı birbirini keser. Doğal birim bir satırdır. Satırı yalnız başına anlamlı yapmanın tek yolu başlık satırını her parçaya kopyalamaktır — yani ölçütün ikinci yarısının gereksiz bağlam dediği şeyi yapmaktır.

Konuşma ve destek kayıtlarında doğal birim çok büyüktür. Anlamlı olan tek şey konuşmanın tamamıdır; tek bir mesaj “evet, o zaman öyle yapalım” der ve hiçbir şey ifade etmez.

Ölçütün kusuru yanlışlık değil, eksik tarif. Boyu soruyor, oysa karar sınırlarla ilgili.

İki soru: yayılım ve yalnızlık

Ölçütün yerine geçen şey daha uzun değil, daha ölçülebilir. Parçaya değil soruya bakar, çünkü bu sistemin işi soru cevaplamaktır.

Birinci soru — yayılım. Tipik bir kullanıcı sorusunun cevabı kaç doğal birime yayılmış? Bir maddede mi duruyor, yoksa üç bölümü birleştirmek mi gerekiyor?

İkinci soru — yalnızlık. O birim, komşusu olmadan tek başına okunduğunda hâlâ doğru anlaşılıyor mu? Yoksa bir yere işaret edip orada boşluk mu bırakıyor?

İkisi de tahminle değil, bir öğleden sonrada elle ölçülür. Yöntemi şu: kullanıcıların gerçekten soracağı on soru yazın. Her birinin cevabını belgenin içinde elle bulun. Sonra iki sayı kaydedin.

  • n — cevabı eksiksiz vermek için kaç doğal birim gerekti. On sorunun ortancasını alın.
  • r — o birimleri komşusuz okuduğunuzda kaçı hâlâ doğru anlaşılıyor. Doğru anlaşılan sayı bölü toplam.

Burada geçen doğal birim, sizin icat ettiğiniz bir uzunluk değil. Belgeyi yazan kişinin koyduğu sınırdır: başlık, madde, satır, mesaj, hücre. Onu bulursunuz, kurmazsınız.

Dört belge sınıfı ve her birinin kuralı

İki sayı dört durum üretir ve dördünün kuralı farklıdır. Dikkat edin: hiçbir hücrede karakter sayısı yok. Çıkan şey bir sınır kuralı ile bir kalıtım kuralıdır.

r yüksek (birim yalnız okunur)r düşük (birim komşusuz yanıltır)
n = 1 (cevap tek birimde)Parça = doğal birim. Örtüşmeye gerek yok. Örnek: SSS sayfası, sözlük, madde madde politikaParça = birim + başlık zinciri. Örnek: sözleşme, mevzuat, teknik şartname
n > 1 (cevap yayılmış)Parça = n birimlik pencere, sınır yine birimde. Örnek: kurulum kılavuzu, adım adım prosedürEn zoru: hem pencere hem kalıtım. Örnek: uzun rapor, akademik metin, toplantı kaydı

Sağ alt köşe dürüstlük ister. O sınıfta parçalama tek başına yetmez; kaçınılmaz olarak bir şey kaybedersiniz ve kaybı azaltmanın yolu boru hattının başka katmanlarından geçer.

Bir külliyatın tek sınıfa düşmesi de gerekmiyor. Şirket içi bir depoda sözleşmeler sol alt, SSS sayfaları sol üst, toplantı kayıtları sağ alt hücreye düşer. Hepsini aynı kuralla kesmek, en kolay üç dosya için doğru olanı geri kalan her şeye dayatmaktır. Parçalama kararı külliyat başına değil, belge türü başına verilir.

Örtüşme mi, başlık kalıtımı mı

Yalnızlık sorununun bilinen iki çaresi var ve aynı şeyi yapmıyorlar.

Örtüşme, her parçanın bir öncekinin son bölümünü de taşımasıdır. Kaba ama evrensel bir çözümdür: belgenin yapısı hakkında hiçbir şey bilmeden uygulanır. Bedeli iki yerde çıkar. Depoladığınız metin büyür, ve daha kötüsü, getirim büyük ölçüde aynı olan iki parçayı birden döndürebilir. Beş parça getiren bir sistemde bu, beş yerin ikisini aynı bilgiye harcamak demektir.

Başlık kalıtımı, her parçanın kendi başlık yolunu baş tarafına yazmasıdır: “Hizmet Sözleşmesi > 4. Ödeme > 4.2 Gecikme”. Ucuzdur, kısadır, ve tam olarak r’yi düşüren şeyi hedefler. Parça artık neye ait olduğunu kendi içinde söyler.

Seçim ölçütü tek soru: yalnızlık neden düşük? Parça bir başlığa bağlı olduğu için düşükse kalıtım çözer. Bir önceki cümleye bağlı olduğu için düşükse kalıtımın tutunacağı bir yapı yoktur ve örtüşme gerekir. Başlıksız akan metinlerde — konuşma dökümleri, uzun anlatılar — ikincisi tek seçenektir.

İkisini birden uygulamak da meşrudur, ama örtüşme oranını küçük tutmak şartıyla. Kalıtım zaten işin çoğunu yaptıysa geniş örtüşme yalnızca aynı bilgiyi çoğaltır.

Bir kademe derine: sabit boy neden hâlâ yaygın

Sabit boyla kesmek, belge hakkında hiçbir şey bilmeden çalışan tek stratejidir. Külliyatınıza yarın hangi dosya biçimi girerse girsin kural aynı kalır, ve kırılacak bir çözümleyici yoktur. Bu gerçek bir mühendislik gerekçesidir, tembellik değil.

Dürüst hâli şu: sabit boy, külliyatınızı henüz tanımadığınızda doğru başlangıçtır. Yanlış olan onunla başlamak değil, onda kalmaktır. On soruluk ölçüm bir öğleden sonra sürer ve size hangi hücrede olduğunuzu söyler; ölçümden sonra sabit boyda kalmak bir karar olur, varsayılan olmaktan çıkar.

Sabit boyun ikinci ve daha sinsi etkisi soruyu şekillendirmesidir. Araçlar bir parça boyu parametresi sunduğu için insanlar bu işi bir sayı seçme işi sanıyor. Parametre görünür, sınır görünmez. Oysa ölçülebilir olan sınırın nereye düştüğü, seçilebilir olan da odur.

Sınırlar ve yanlış anlamalar

Parçalama, kötü belgeyi düzeltmez. Kaynak metin çelişkiliyse ya da eskiyse en iyi kesim bile o yanlışı taşır. Parçalama bir düzenleme işi değil, bir bölme işidir.

Tek doğru parça boyu yok — ve olsaydı bile karakterle ölçülmezdi. Bu yazıda bilerek bir sayı verilmedi. Verilebilecek her sayı belge türüne, dile ve soru biçimine göre değişir; başka bir külliyattan alınan sayı sizinkinde ölçüm değil, tahmindir.

Parça boyunu yalnız siz belirlemiyorsunuz. Parçayı sayıya çeviren modelin bir girdi sınırı var ve o sınır aşıldığında metin sessizce kırpılabilir. Yani kâğıt üzerinde seçtiğiniz boy, bir sonraki adımda kesilebilir. → Gömme Modeli Seçimi ve Vektör Veritabanları

Parçalama doğruyken de alakasız sonuç gelir. Ölçümü yapıp doğru hücreye yerleştiğinizde bile getirim yanlış parçayı seçebilir; o başarısızlığın kaynağı başka bir katmandadır. → Benzerlik Araması: Neden Bazen Alakasız Sonuç Gelir?

Yeniden parçalama ucuz değil. Sınırları değiştirmek, bütün külliyatı yeniden işlemek demektir. Ölçümü baştan yapmanın sebebi budur: sonra yapmak aynı işi ikinci kez ödetir.

Bu konuda anlaşmazlık: Sabit boy mu, belgenin kendi sınırları mı?

Görüş A → Sabit boy her belgede aynı şekilde çalışır. Belge türü başına çözümleyici yazmak, boru hattına bakımı gereken ve sessizce kırılan yeni bir parça eklemektir. (Savunanlar: boru hattı sadeliğini önceleyenler) Görüş B → Belgenin sınırlarını yok saymak, yazarının bilgiyi yerleştirdiği yapıyı atmaktır. Atılan yapı sonraki hiçbir katmandan geri gelmez. (Savunanlar: belge sadakatini önceleyenler) Durum → 2026 ortası itibarıyla uzlaşma yok. Karar, külliyattaki belge çeşitliliğine ve yapının ne kadar bilgi taşıdığına bağlı.

Özet

Parçalama, RAG boru hattının en yukarıdaki ve geri alması en pahalı kararıdır. Getirim ancak sizin kestiğiniz sınırlar içinde bir cevap bulabilir.

Yerleşik ölçüt — yeterince büyük, yeterince küçük — iki ayrı talimattır ve belge anlamını yapıda taşıdığında ikisi ters yöne çeker. Sözleşmede, tabloda ve konuşma kaydında bu çatışma görünür hâle gelir.

Yerine iki ölçülebilir soru geçer: cevap kaç doğal birime yayılıyor, ve birim komşusuz okunduğunda doğru anlaşılıyor mu. On gerçek soruyu elle izleyerek iki sayı çıkar; o iki sayı dört belge sınıfından birini ve o sınıfın sınır kuralını verir. Çıkan cevap bir karakter sayısı değil, bir sınır kuralı ile bir kalıtım kuralıdır. Ölçüm belge türü başına yapılır, külliyat başına değil.

Sık sorulanlar

Belge parçalama ne demek?

Bir metni, getirim sisteminin tek tek bulup taşıyabileceği küçük bölümlere ayırmaktır. Bu bölümlerin her birine parça deniyor ve sistem yalnızca bu bölümleri getirebilir.

Parça boyu kaç karakter olmalı?

Bu soru yanlış birimde kuruluyor. Kararın kendisi karakter değil sınır seçimidir: metni belgenin kendi bölümlerinden mi, yoksa sabit uzunlukta mı keseceğiniz. Doğru sınırı on soruluk elle ölçüm gösterir.

Örtüşme şart mı?

Hayır. Örtüşme yalnızca bir parçanın komşusu olmadan yanlış anlaşıldığı durumlarda gerekir. Sorun bir başlığa bağlıysa başlık yolunu parçanın başına yazmak daha ucuz ve daha kesin bir çözümdür.

Tabloları ve kod bloklarını nasıl bölmeli?

Bunlarda doğal birim satır ya da fonksiyondur ve tek başına anlaşılmaz. Her parçanın başına başlık satırını ya da dosya yolunu kopyalamak, bölmeyi bozmadan eksik bağlamı geri verir.

Parçalamayı sonradan değiştirebilir miyim?

Değiştirebilirsiniz ama bedeli var: yeni sınırlar eski sayıları geçersiz kılar ve tüm külliyat baştan işlenir. Bu yüzden ölçüm işin başında yapılır.

İlgili yazılar