Doküman parçalama (chunking): doğru strateji nasıl seçilir?
Beceri rehberi

Doküman parçalama (chunking): doğru strateji nasıl seçilir?

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

RAG sistemlerinde doküman parçalama (chunking) nasıl yapılır: sabit boyut, özyinelemeli, yapıya duyarlı, anlamsal ve ana-çocuk stratejileri ile seçim ölçütleri.

Chunking neden RAG kalitesini belirler?

Geri getirmeyle zenginleştirilmiş üretim (RAG) sisteminde bir soru geldiğinde, sistem doküman koleksiyonundan ilgili parçaları bulur ve dil modeline bağlam olarak verir. Dokümanlar bütün halinde değil, parçalar halinde indekslenir; bu parçalara chunk denir. Parçalamanın nasıl yapıldığı, hangi bilginin bulunabileceğini ve modele hangi bağlamın ulaşacağını doğrudan belirler.

Parçalar çok büyük olursa tek bir parça birden fazla konuyu içerir; arama sonuçları bulanıklaşır, modele gereksiz metin gider ve bağlam penceresi boşa harcanır. Parçalar çok küçük olursa cümle bağlamı kopar; bulunan parça tek başına anlam taşımaz ve cevap eksik kalır. Bir tablonun ortasından, bir adım listesinin yarısından ya da bir maddenin koşullarından kesilen parça, yanlış ya da eksik yanıtlara yol açar.

Bu yüzden chunking, teknik bir ön işlemden fazlasıdır. Embedding modeli, vektör veritabanı ve dil modeli ne kadar güçlü olursa olsun, kötü parçalanmış bir doküman havuzu kaliteli yanıt vermez. RAG iyileştirme çalışmaları sıklıkla parçalama stratejisini gözden geçirmekle başlar.

Parçalamadan önce: ayrıştırma ve temizlik

Chunking ham metin üzerinde değil, ayrıştırılmış ve temizlenmiş metin üzerinde yapılır. Bu adım atlanırsa parçalama stratejisi ne kadar iyi olursa olsun sonuç bozulur.

PDF, Word, e-posta, web sayfası ya da tarama görüntüsü gibi farklı kaynaklar farklı ayrıştırma gerektirir. Tarama belgelerde karakter tanıma gerekir. Çok sütunlu PDF'lerde okuma sırası bozulabilir. Sayfa üstbilgisi, altbilgisi ve sayfa numaraları her sayfada tekrarlanıp parçaların içine karışabilir; temizlenmelidir. Tablolar düz metne çevrilirken satır ve sütun ilişkisi kaybolabilir; tabloyu ayrı bir birim olarak ele almak veya yapılandırılmış biçimde saklamak gerekir.

Ayrıştırma sırasında başlık hiyerarşisi, liste yapısı, tablo ve kod blokları gibi yapı bilgilerinin korunması, sonraki yapıya duyarlı parçalama için değerlidir. Normalizasyon (karakter kodlaması, boşluk ve satır sonu düzeni, tekrar eden içerik) ayrıca yapılır.

Temel parçalama stratejileri

  • Sabit boyutlu parçalama: Metin belirli bir karakter ya da token uzunluğunda kesilir. Uygulaması kolaydır ve öngörülebilirdir, ama cümle ya da anlam sınırlarını hesaba katmaz.
  • Özyinelemeli (ayırıcı tabanlı) parçalama: Önce büyük ayırıcılarla (bölüm, paragraf), sığmıyorsa daha küçüklerle (cümle, sözcük) bölünür. Doğal sınırlara uyduğu için genel amaçlı iyi bir başlangıçtır.
  • Yapıya duyarlı parçalama: Başlık, alt başlık, madde ya da HTML ve Markdown etiketleri gibi doküman yapısına göre bölünür. Yönetmelik, el kitabı ve teknik dokümantasyon gibi düzenli yapıdaki belgelerde çok başarılıdır.
  • Cümle ve paragraf tabanlı parçalama: Birim cümle ya da paragraftır; birkaç birim gruplanarak parça oluşur.
  • Anlamsal parçalama: Ardışık cümlelerin embedding benzerliği izlenir ve konu değiştiğinde yeni parça başlatılır. Konu geçişleri belirsiz, uzun akıcı metinlerde işe yarar; ama ek hesaplama maliyeti vardır.
  • Ana-çocuk (küçükten büyüğe) parçalama: Arama küçük parçalarla yapılır, bulunan parçanın bağlı olduğu daha büyük ana parça modele verilir. Hem hassas arama hem geniş bağlam sağlar.

Stratejilerin biri diğerinden her zaman üstün değildir. Doküman türüne, soru tipine ve modelin bağlam kapasitesine göre seçilir.

Parça boyutu ve çakışma (overlap)

Parça boyutu için tek doğru değer yoktur; bir denge sorunudur. Küçük parçalar belirli bir bilgiyi hassas bulur ama bağlamdan yoksundur. Büyük parçalar bağlam taşır ama arama hassasiyetini düşürür ve bağlam penceresini doldurur. Boyut, embedding modelinin kabul edebildiği uzunluk sınırı ile uyumlu olmalıdır; sınırı aşan metin kesilebilir ve bilgi kaybolur.

Çakışma, ardışık parçaların uç kısımlarının ortak tutulmasıdır. Cümle ya da fikir bir parçanın sonunda kesildiğinde, çakışma bir sonraki parçada o bilginin başlangıcını da tutar. Çakışma bağlam kopukluğunu azaltır; fakat fazla çakışma indeksi şişirir ve aynı bilgiyi birden fazla kez getirerek arama sonuçlarında tekrar yaratır. Yapıya duyarlı parçalamada çakışma sıklıkla gereksizdir, çünkü bölme doğal sınırlardadır.

Boyutu belirlerken soru türüne bakın. Tekil olgu soruları (tek bir tanım, tek bir madde) küçük parçalarla iyi sonuç verir. Çok adımlı açıklama veya karşılaştırma gerektiren sorular daha büyük bağlam ister. Bu ihtiyaçları birlikte karşılamak için ana-çocuk yaklaşımı sıkça tercih edilir.

Meta veri ve doküman türüne göre uyarlama

Her parçayla birlikte meta veri saklamak, aramanın kalitesini ve yanıtın izlenebilirliğini artırır. Yararlı meta veri örnekleri: kaynak doküman adı, bölüm başlığı, sayfa numarası, doküman türü, sürüm, tarih, erişim yetkisi ve dil. Meta veri ile arama filtrelenebilir (örneğin yalnız güncel sürüm) ve yanıtta kaynağa referans verilebilir.

Parça metninin başına bölüm başlığını eklemek, tek başına anlam taşımayan parçaları anlaşılır kılar. Yönetmelik maddesinin hangi bölümde olduğu ya da bir adım listesinin hangi işleme ait olduğu bu şekilde korunur.

Doküman türüne göre uyarlama gerekir: • Hukuki ve mevzuat metinleri: madde ve fıkra sınırlarına göre yapıya duyarlı parçalama. • Teknik dokümantasyon: başlık hiyerarşisi ve kod bloklarını bütün tutma. • Sıkça sorulan sorular: soru-cevap çiftini tek parça yapma. • Tablolu raporlar: tabloyu ayrı birim olarak işleme, açıklayıcı metinle birlikte saklama. • Yazışmalar ve toplantı notları: konuşma dizisi ve konu sınırlarına göre bölme.

Parçalamayı değerlendirme ve bakım

Chunking stratejisi sezgiyle değil ölçümle seçilir. Önce temsilî bir soru kümesi hazırlayın ve her sorunun cevabının hangi dokümanda olduğunu işaretleyin. Sonra farklı stratejileri ve boyutları aynı soru kümesiyle deneyin. Ölçülecek şeyler: doğru parçanın getirilip getirilmediği, doğru parçanın sonuçlarda kaçıncı sırada çıktığı ve üretilen yanıtın doğruluğudur. Sayısal göstergelerin yanında, getirilen parçaları gözle okumak da çok öğreticidir; bozuk kesim, eksik bağlam ve tekrar sıklıkla bu şekilde görülür.

Değişiklikleri tek tek yapın. Hem boyutu hem stratejiyi aynı anda değiştirirseniz sonucun nedenini ayıramazsınız.

Bakım da sürecin parçasıdır. Dokümanlar güncellendiğinde yalnızca değişen kısımlar yeniden parçalanıp indekse alınmalı, eski sürümler kaldırılmalı ya da işaretlenmelidir. Parçalama kurallarının sürümü tutulmalı; kural değiştiğinde indeksin yeniden üretilmesi gerekebilir. Otomatik kalite kontrolleri (çok kısa parça, boş parça, bozuk karakter, aşırı uzun parça) işlem hattına eklenmelidir.

Bu beceriyi Mindset programlarında nerede çalışırsınız?

Doküman İşleme ve Parçalama (Chunking) Pipeline'ı eğitiminde "Doküman Ayrıştırma ve Normalizasyon", "Parçalama Stratejileri", "Metadata, Gömme ve Depolama" ile "Otomasyon, Kalite ve Bakım" modülleri bu konuyu ayrıştırmadan bakıma kadar uçtan uca işler. Retrieval-Augmented Generation (RAG) Sistemleri eğitiminde ise parçalama, belge işleme başlığı altında RAG mimarisinin bir adımı olarak ele alınır; aynı eğitim embedding, geri alma ve değerlendirme konularını da kapsar.

Eğitimler yapay zeka ve veri mühendisleri, yazılım geliştiriciler ve kurum içi bilgi sistemleri kuran ekipler için uygundur; kurumsal ekipler kendi doküman havuzları üzerinde parçalama stratejilerini karşılaştırmalı olarak deneyebilir.

İlgili Mindset programı

Doküman İşleme ve Parçalama (Chunking) Pipeline'ı

Sık sorulanlar

Sık sorulan sorular

Chunking için uygun parça boyutu nedir?

Tek bir doğru boyut yoktur. Doküman türüne, soru tipine ve embedding modelinin uzunluk sınırına bağlıdır. Tekil olgu soruları için küçük, açıklama gerektiren sorular için daha büyük parçalar uygundur. En sağlıklısı, kendi soru kümenizle farklı boyutları deneyip ölçüm yapmaktır.

Chunk overlap her zaman gerekli midir?

Hayır. Sabit boyutlu kesimlerde bağlam kopukluğunu azaltmak için faydalıdır. Ancak yapıya duyarlı parçalamada bölme doğal sınırlarda yapıldığı için sıklıkla gerekmez. Fazla çakışma indeksi büyütür ve aynı bilginin tekrar getirilmesine yol açar. Çakışmayı ölçerek ve dengeli kullanın.

Tablolar ve görseller nasıl parçalanır?

Tabloyu satır ortasından bölmek anlam kaybettirir. Tabloyu ayrı bir birim olarak saklamak, başlıklarıyla birlikte yapılandırılmış biçimde tutmak ve yanına açıklayıcı bir özet eklemek iyi çalışır. Görsellerde ise içerik metne çevrilmeli ya da açıklama metni üretilip ilgili parçayla ilişkilendirilmelidir.

Anlamsal parçalama her zaman daha iyi midir?

Hayır. Konu geçişleri belirsiz, akıcı metinlerde faydalıdır, ancak ek hesaplama gerektirir ve düzenli yapıdaki dokümanlarda yapıya duyarlı parçalamadan üstün olmayabilir. Doküman türünüze uygun stratejiyi, kendi soru kümenizle karşılaştırarak seçin; yöntemin popüler olması yeterli gerekçe değildir.

Doküman güncellendiğinde indeks nasıl yönetilir?

Değişen dokümanın parçaları yeniden üretilmeli, eski parçalar silinmeli ya da sürüm bilgisiyle işaretlenmelidir. Meta veride sürüm ve tarih tutmak, aramanın yalnızca güncel içeriği getirmesini sağlar. Parçalama kuralları değişirse, tüm indeksin tutarlı kalması için yeniden oluşturulması gerekebilir.