---
title: "Vektör Veritabanını Bilgi Getirme Değil, Bellek Olarak Kullanan Bir Python Ajanı İnşa Ettim"
url: https://blog.edumints.com/vektor-veritabanini-bilgi-getirme-degil-bellek-olarak-kullan-r1alq1p8
category: "LLM"
date: 2026-06-18T09:06:16.905Z
publisher: Edumints Blog
lang: tr-TR
source_name: "dev.to"
source_url: https://dev.to/gerimate/i-built-a-python-agent-that-uses-a-vector-db-as-memory-not-retrieval-135e
---

# Vektör Veritabanını Bilgi Getirme Değil, Bellek Olarak Kullanan Bir Python Ajanı İnşa Ettim

Vektör veritabanları genellikle RAG (Retrieval-Augmented Generation) bağlamında, statik belgeleri sorgulamak için kullanılır. Ancak yapay zekâ ajanlarına dinamik bir bellek kazandırmak istiyorsak, veritabanını sadece bilgi getirmek için değil, ajanın kendi geçmişini yazıp okuduğu aktif bir hafıza katmanı olarak konumlandırmalıyız.

## Fikir
Geleneksel RAG sistemlerinde veri kümesi statiktir; ajan veriyi sorgular ama değiştiremez. Bu çalışmadaki temel yaklaşım ise ajanın kendi etkileşimlerini vektörleştirip yazması ve ihtiyaç duyduğunda geçmiş konuşmalarını semantik olarak aramasıdır. Ajan, kendi bilgi tabanının yazarı haline gelmektedir.

## Teknoloji Yığını
Sistem, veri gizliliğini korumak amacıyla tamamen yerel (local-first) olarak çalışmaktadır:
- **Actian VectorAI DB** (Vektör deposu ve semantik arama)
- **Ollama + Llama 3.2** (Yerel LLM)
- **BAAI/bge-small-en-v1.5** (Yerel gömme modeli)
- **Python** (Entegrasyon)

*Pratik Çıkarım:* Tamamen yerel bir teknoloji yığını kullanmak, veri güvenliğini artırırken ağ gecikmelerini ve API maliyetlerini sıfıra indirir.

## Nasıl Çalışıyor?
Ajan, kullanıcıdan gelen her mesajda şu dört adımlı akışı takip eder:
1. Gelen kullanıcı mesajını vektörleştirir.
2. VectorAI DB üzerinden geçmişe yönelik semantik arama yapar.
3. Bulunan ilgili anıları sistem istemine (system prompt) dahil eder.
4. Yanıtı ürettikten sonra, bu yeni etkileşimi de hafızaya kaydeder.

*Öğrenme Çıkarımı:* Bu akış, LLM'lerin sınırlı bağlam pencerelerini (context window) yönetmek ve oturumlar arası kalıcılık sağlamak için mükemmel bir yazılım tasarımı örneğidir.

## Geliştirme Sürecinde Karşılaşılan Engeller
Gömme modelinin ilk çalışmada HuggingFace'ten otomatik indirilmesi local-first yapıyı bozmuştur. Modelin `local_files_only=True` ile yüklenmesi ve ilk çalıştırmadan önce manuel indirilmesiyle bu sorun çözülmüştür. Çevrimdışı çalışabilirlik hedefleyen projelerde, dış bağımlılıkların yönetimi kritik öneme sahiptir.

## Bellek Aşınması (Unutma) Problemi
Belleğin sınırsız büyümesi performansı düşürür. Yazar, bu sorunu çözmek için yaş, erişim sıklığı ve kosinüs benzerliğini ağırlıklandıran bir **"unutma" (decay)** algoritması geliştirmiştir. Sık erişilen yakın anılar korunurken, eski ve alakasız anılar elenir.

*Geliştirici Yorumu:* Yapay zekada veri yığınını yönetmek için insan hafızasını taklit eden matematiksel ağırlıklandırma formülleri kullanmak oldukça verimli bir yaklaşımdır.

## Halüsinasyon Problemi
Ajanın uydurduğu (hallucination) hatalı bilgileri hafızaya kaydedip sonraki oturumlarda gerçek gibi çağırması ciddi bir risktir. Yazar bunu engellemek için sohbet geçmişinin önem derecesini (importance=0.3) düşürmüş, açık gerçekleri (0.9) yukarıda tutmuştur. Ayrıca arama eşik değerleri yükseltilmiştir.

*Yazılım Pratiği:* Bir ajanın kendi ürettiği veriyi doğrulamadan doğrudan belleğe alması hata döngülerine yol açar. Bu yüzden veri katmanları arasında kesin yetki hiyerarşisi kurulmalıdır.

## Elde Edilen Bulgular
Vektör veritabanlarının sadece hazır doküman sorgulama aracı olmadığı, çalışma zamanında dinamik olarak büyüyen ve kendi kendini güncelleyen bir kalıcı bellek katmanına dönüşebileceği gösterilmiştir.

## Sırada Ne Var?
Gelecekte belleğin uzun vadeli kalitesinin ölçülmesi ve sohbet robotlarının ötesinde, otonom görev yürüten ajanlar için bu mimarinin nasıl kullanılacağı araştırılacaktır.

[Orijinal kaynağa buradan ulaşabilirsiniz.](https://dev.to/gerimate/i-built-a-python-agent-that-uses-a-vector-db-as-memory-not-retrieval-135e)

---

**Kaynak:** [dev.to](https://dev.to/gerimate/i-built-a-python-agent-that-uses-a-vector-db-as-memory-not-retrieval-135e)
**Yayıncı:** [Edumints Blog](https://blog.edumints.com) · Alıntılarken bu URL'ye bağlantı verin: https://blog.edumints.com/vektor-veritabanini-bilgi-getirme-degil-bellek-olarak-kullan-r1alq1p8
