📌 Ders -18 – Vektörel Veritabanı Kurmak – Bölüm 2

Bu derste bir dokümanı Google Drive’dan alıp vektöre dönüştürerek Pinecone index’ine yükleyen akışın uçtan uca nasıl çalıştığını pratik olarak test ediyoruz.


Akışın Amacı

  • Drive’a yüklenen her dokümanı otomatik olarak işlemek,
  • Metni anlamlı parçalara (chunk) bölmek,
  • Embedding (vektör) üretip Pinecone index’ine upsert etmek,
  • RAG senaryolarında sorgulanabilir bir bilgi deposu oluşturmak.

Adım Adım Çalışma

  1. Google Drive Trigger
    • Drive’daki belirli klasör dakikada bir taranır (Schedule).
    • Klasöre yeni bir dosya gelirse akış tetiklenir.
  2. Google Drive – Download File
    • Trigger’dan gelen fileId ile dosya indirilir.
    • Node çıktısı: binary içerik + temel metadata (ad, mime type vb.).
  3. Dokümanı İşlenebilir Hâle Getirme
    • Document Loader binary veriyi okunabilir metne çevirir.
    • PDF/Word gibi formatlardaki içerik normalize edilir.
  4. Metni Parçalara Bölme (Chunking)
    • Recursive Character Text Splitter ile metin küçük parçalara ayrılır.
    • Örnek: chunkSize = 500, overlap = 100.
    • Bu örnekte dosya 25 parça olarak ayrıldı (chunk sayısı doküman uzunluğuna göre değişebilir).
  5. Embedding Üretimi
    • Seçili embedding modeli (ör. Gemini Embeddings) her chunk için vektör oluşturur.
    • Seçilen modele uygun dimension kullanılır (ör. 768).
  6. Pinecone’a Upsert
    • Üretilen vektörler, metadata (dosya adı, sayfa vb.) ile birlikte index ve namespace’e gönderilir.
    • Her chunk bir record olarak kayda geçer → Bu örnekte 25 kayıt eklendi.

Test Etme ve Doğrulama

  • Drive klasörüne yeni bir doküman yükleyin → Akış otomatik tetiklenecektir.
  • n8n’de Executions panelinden çalışmayı anlık izleyin (başlama, bitiş, hata vb.).
  • Pinecone panelinde ilgili index & namespace için record count’un arttığını gözlemleyin.

Artık Ne Yapabiliriz?

  • Bu index’i RAG deposu olarak kullanıp AI Agent’lara “önce ara → sonra cevapla” mantığı ekleyebiliriz.
  • Aynı akışa yeni dokümanlar eklendikçe bilgi tabanı genişler ve sorgu kalitesi yükselir.

İyi Uygulamalar & İpuçları

  • Dimension Eşleşmesi: Embedding modelinizin boyutu ile Pinecone index boyutu birebir aynı olmalı.
  • Kimliklendirme: Aynı chunk’ın tekrar yüklenmesi durumunda upsert id’lerini istikrarlı üretin (ör. ${fileId}-${chunkIndex}) → duplicated record’ları önler.
  • Chunk Ayarı: Daha uzun belgelerde küçük chunk + küçük overlap; teknik metinlerde daha büyük overlap bağlam korur.
  • Active/Inactive: Canlıya alırken workflow’u Active yapmayı unutmayın; testte Inactive tutmak faydalı olabilir.

🎯 Bu Dersin Özeti

  • Drive’daki yeni dosya → Akışı tetikledi.
  • Dosya indirildi, metin hâline getirildi ve 25 chunk’a bölündü.
  • Her chunk için embedding üretildi ve Pinecone index’ine upsert edildi.
  • Drive’a yeni dosya yükleyerek akışı tekrar test edebilir; Pinecone’da kayıt sayısının arttığını görebilirsiniz.
  • Oluşan index, RAG tabanlı AI Agent’lar için sorgulanabilir bir bilgi deposu olarak hazır.