AI Agents · Ders

Vektörleri Güncelleme ve Silme

Dizini kaynakla eşzamanlı tutun: belge değiştiğinde ekleyip güncelleyin, kaldırıldığında silin ve yeniden gömüntülemeyi yönetin.

3. ders / 415 adım

Vektörleri Güncelleme ve Silme, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Dizin Donmuş Değil

Gerçek belgeler değişir. Dizin de bu değişikliklere ayak uydurmalıdır:

  • Yeni belgeler eklenir
  • Mevcut belgeler düzenlenir
  • Eski belgeler silinir veya arşivlenir

Upsert (Ekleme veya Güncelleme)

Çoğu vektör veritabanı upsert işlemini destekler — vektörü verilen bir ID ile yazar ve varsa eskisinin yerine yenisini koyar:

index.upsert([
    ('doc-42', new_vector, {'source': 'a.pdf', 'updated_at': now})
])
# If doc-42 already exists, it is overwritten.

Belirlenebilir Kimlikler

İçerik karması kimlikleri kullanırsanız "güncelleme" otomatik olarak gerçekleşir — aynı içerik = aynı kimlik = aynı yuva.

UUID'ler kullanırsanız hangi UUID'nin hangi kaynak belgeye ait olduğunu izlemeniz gerekir.

Değişiklikleri Algılama

Bir belge derlemesindeki farkları bulmak için her parçanın karmasını depolayın:

old_chunks = load_existing_chunks(source)
new_chunks = chunk_doc(source)

old_hashes = {c.id for c in old_chunks}
new_hashes = {c.id for c in new_chunks}

to_delete = old_hashes - new_hashes
to_add = new_hashes - old_hashes
# Skip unchanged — saves re-embedding

Filtreye Göre Silme

Çoğu veritabanı filtreye göre silmeyi destekler; bu, "bu kaynaktaki her şeyi silmek" için kullanışlıdır:

index.delete(filter={'source': '/old/file.pdf'})

Delete by ID

index.delete(ids=['doc-1', 'doc-2', 'doc-3'])

Mantıksal Silme

Bazen kaldırmadan "gizlemek" istersiniz — deleted_at bayrağını ayarlayın ve sorgu sırasında bu kayıtları filtreleyin:

index.upsert([('doc-42', vec, {'deleted_at': now})])

# At query time:
results = index.query(vector=query_vec, top_k=5, filter={'deleted_at': {'$exists': False}})

Sıkıştırma

Sık sık yapılan silme işlemleri dizini seyrek bırakır. Performans için düzenli aralıklarla yeniden oluşturun — çoğu veritabanı bunu otomatik olarak yapar; sağlayıcınızın belgelerini kontrol edin.

Model Değişikliğinde Yeniden Gömme

Gömme modelini yükseltirseniz mevcut her vektör uyumsuz hâle gelir. Stratejiler:

  1. Geçiş sırasında eski ve yeni koleksiyonlara çift yazın
  2. Geçiş tamamlandığında okuma trafiğini yeni koleksiyona yönlendirin
  3. Eski koleksiyonu silin

Artımlı Veri İşleme Hattı

Sağlam bir veri alma hattı:

def sync_doc(source_path):
    new_chunks = chunk_and_hash(load(source_path))
    existing_ids = index.fetch_ids_by_source(source_path)

    new_ids = {c.id for c in new_chunks}
    to_add = [c for c in new_chunks if c.id not in existing_ids]
    to_remove = existing_ids - new_ids

    if to_remove:
        index.delete(ids=list(to_remove))
    if to_add:
        index.upsert([(c.id, embed(c.text), c.metadata) for c in to_add])

Sapmayı Denetleme

Dizinin doğru kaynakla eşleştiğini düzenli aralıklarla doğrulayın. Hem veritabanınızda hem de vektör dizininde kaynak başına satır sayılarını karşılaştırın; uyuşmazlık olduğunda uyarı verin.

Webhook Tabanlı Güncellemeler

Belge yönetim sistemlerinde (Notion, Confluence, GDrive), her şeyi yeniden taramaktan çok daha ucuz olan değişiklik tabanlı artımlı eşitlemeyi tetiklemek için webhook'ları kullanın.

Dağıtık Silmeler için Silme İşaretçileri

Dağıtık dizinlerde "silme" işlemi genellikle bir silme işareti yazar. Sıkıştırma çalışana kadar sorgular bu işareti hâlâ görebilir — filtrelerinizi yerinde tutun.

Etkisi Değişmeyen Güncellemeler

Veri almayı yeniden çalıştırmayı güvenli hâle getirmenin en kolay yolu nedir?

Özet

İlk günden itibaren güncellemeleri planlayın: karma tabanlı kimlikler, fark tabanlı veri alımı ve gömme modellerini kesinti olmadan değiştirebileceğiniz bir yol.

Başlamak ücretsiz

Yapay zeka eğitmeniyle AI Agents öğren — ücretsiz

Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.

Kurslar
60
Dersler
239

Sıkça Sorulan Sorular

“Vektörleri Güncelleme ve Silme” dersi ücretsiz mi?

Evet — “Vektörleri Güncelleme ve Silme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.

“Vektörleri Güncelleme ve Silme” dersinde ne öğreneceğim?

Dizini kaynakla eşzamanlı tutun: belge değiştiğinde ekleyip güncelleyin, kaldırıldığında silin ve yeniden gömüntülemeyi yönetin. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Agents öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Vektörleri Güncelleme ve Silme” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Pinecone, Weaviate, Qdrant: Karşılaştırma
  2. Hibrit Arama için Üst Veri Filtreleme
  3. Vektörleri Güncelleme ve Silme
  4. Uzaklık Ölçütlerini Seçme (kosinüs, L2, nokta)
← AI Agents Sayfasına Dön