Buluttan Bağımsız Bir Zihin Sarayı: Localmind
Yapay zeka asistanlarının bizi anlaması için geçmişi hatırlamaları gerekiyor. Şu an piyasada “AI Hafızası” dendiğinde akla gelen ilk çözümler genellikle bir bulut servisine bağlı çalışıyor. Sohbetleriniz, fikirleriniz, hatta özel proje detaylarınız başkalarının sunucularına, başkalarının vektör veritabanlarına akıyor.
Bir “Sovereign” (dijital bağımsızlığını eline almış) bir kullanıcı olarak bu fikirden nefret ediyorum. Benim zihin sarayım, benim diskimde durmalı. İnternet kablosunu kestiğimde bile asistanım beni hatırlayabilmeli.
İşte bu yüzden Localmind’ı geliştirdim. Tamamen yerel, dışa kapalı, otonom bir dijital hafıza yönetim sistemi.
Nedir Bu Localmind?
Geleneksel “Memory Bank” uygulamaları veya not tutma araçları genelde düz metin dosyalarına dayanır. Localmind ise arka planda oldukça agresif bir teknoloji yığını çalıştırır:
- Model Context Protocol (MCP): Temmuz 2026 standartlarına uygun Stateless (durumsuz) FastMCP altyapısı.
- Semantik Arama (ChromaDB): Siz “elma” dediğinizde kelimeyi değil, “meyve” kavramını bulan vektör veritabanı.
- Knowledge Graph (SQLite): Notlarınızın içinden kişi, kavram ve cihazları otonom olarak çekip birbirine bağlayan ilişkisel ağ.
- Otonom Sınıflandırma (Ollama): Siz notu yazıp bırakırsınız. Arka plandaki yerel dil modeli notu okur ve
mimari,kişiselveyagüvenlikgibi uygun odaya yerleştirir. - Unutma Eğrisi (Ebbinghaus): Uzun süre erişilmeyen önemsiz bilgiler zamanla geriye düşerken, sık kullandığınız anılar daima elinizin altındadır.
MemPalace İlhamı ve Kendi Yolunu Çizmek
Localmind’ın ilk kıvılcımı Milla Jovovich ve Ben Sigman’ın “Memory Palace” metaforuna dayanan MemPalace projesinden geldi. Verilerin buluta gitmeden, yapılandırılmış ve aranabilir şekilde tutulabileceği fikri çok çekiciydi. Ancak MemPalace’ı (veya Mem0, Letta, Zep gibi bulut/agent odaklı çözümleri) birebir almak yerine kendi ihtiyaçlarıma göre baştan tasarladım.
- Claude’a veya tek bir ekosisteme bağımlı kalmamak için genel MCP (Stateless FastMCP) mimarisi üzerine kurdum.
- Sadece bilgiyi pasif şekilde saklamak yerine otonom sınıflandırma (Ollama ile), akıllı upsert ve Ebbinghaus unutma eğrisi ekleyerek “Nasıl daha iyi hatırlarız?” sorusu kadar “Nasıl daha iyi yönetir ve unuturuz?” sorusuna da odaklandım.
Sonuç olarak ortaya çıkan şey ne MemPalace’ın bir klonu ne de bulut hafıza katmanlarının bir kopyası. Bu tamamen yerel, otonom ve kendi zihin sarayımı görsel olarak yönetmek için inşa ettiğim bağımsız bir sistem.
Savaş Yaraları: Gerçek Bir Mühendislik Deneyimi
Her proje kağıt üzerinde kusursuz görünür ama gerçek dünya (ve NixOS) çok daha acımasızdır. Bu sistemi ayağa kaldırırken başımdan geçen bazı sinir bozucu ama öğretici olaylar oldu:
1. 32-Bit Kütüphane Suikastı
Localmind’ın beyni (ChromaDB), C-uzantıları kullanıyor. NixOS’un devasa nix/store klasöründe kütüphane ararken, sistemin yanlışlıkla 32-bit (i686) libstdc++.so.6 kütüphanelerini çekip hafızayı çökerttiğini fark ettim. Çözüm? Dinamik kütüphane bağlayıcı betiğine (bash script) katı bir ! -name "lib32" filtresi eklemek oldu.
2. Open-WebUI ve “Auth Mismatch” Hayaleti
Arayüz olarak Open-WebUI kullanıyordum. MCP sunucusu sorunsuz çalışıyor, backend 200 OK dönüyordu ama chat ekranında inatla Failed to connect to MCP server hatası alıyordum. Yapay zeka asistanımla logları deştik. Sorun ağ izolasyonu (Firejail) değilmiş; Open-WebUI’ın kimlik doğrulama kısmında Bearer seçili kalıp anahtarın boş bırakılmasını kaldıramamasıymış. Bunu Yok (None) yaparak sistemi hayata döndürdük.
3. Pydantic ve Unutkan Modeller
Sistem bağlandıktan sonra 7B (7 milyar parametreli) küçük bir modelle deneme yaptım. Model arama aracını (tool) buldu ama Pydantic anında hata fırlattı: Missing argument: sorgu. Model o kadar heyecanlanmıştı ki, hafızada arama yapmak isteyip “neyi” arayacağını yazmayı unutmuştu. Çözüm çok basitti: Daha zeki olan gemma-4-abliterated:26b modeline geçmek.
Olan Biteni İzlemek: Zihin Sarayının Görselleşmesi
Yapay zekanın arka planda oluşturduğu o devasa bilgi ağını karanlık bir veritabanı dosyasında bırakmak bana göre değildi. Sistemin içine Python tabanlı bir SSE (Server-Sent Events) sunucusu ve D3.js kullanan, Glassmorphism temalı 6 sayfalık bir kontrol paneli ekledim.
Siz Open-WebUI üzerinden asistanla sohbet ederken, arka planda yeni anıların zihin haritasında belirmesini izliyorsunuz. Aynı zamanda kavramlar arası bağların çizilmesi de canlı canlı gerçekleşiyor. Bu sayede yapay zekanın “zihnini” anlık olarak görebilmek mümkün oluyor.
Sonuç: Kendi Zihin Sarayımda Dolaşmak
Daha büyük bir modele geçip “Hafızada ara aracını kullanarak Xiaomi ile ilgili olanları ara” komutunu verdiğimde, o 18 saniyelik bekleme süresi her şeye değdi. Model, haftalar önce kaydettiğim POCO X6 Pro ve KDE Connect notumu bağlamıyla birlikte bulup çıkardı.
Sadece bir arama değil, kendi bilgisayarımda, hiçbir bulut şirketine haraç vermeden inşa ettiğim bir yapay zeka ekosisteminin tıkır tıkır çalışmasıydı bu.
Kodlar Nerede?
Eğer siz de kendi dijital bağımsızlığınızı elinize almak, verilerinizi bulut şirketlerinden kurtarmak isterseniz Localmind tamamen açık kaynak (MIT lisanslı) olarak yayında.
Projeyi fork’layın, parçalayın, kendi zihin sarayınızı inşa edin: Localmind on Codeberg
(Not: Sadece NixOS kullanıcıları için değil, Python çalıştıran her makinede çalışır. Sadece 3 adımda kuruluyor.)