Bize Ulaşın
Sonuç bulunamadı.

MCP Bellek Performans Testi ve Eğitim Kılavuzu ile Yapay Zeka Uygulamaları

Cem Dilmegani
Cem Dilmegani
güncellendi Mar 6, 2026
Bakınız etik normlar

Yapay zekâ ajanı oturumları boyunca bağlamı gerçekten koruyup geri çağıran sunucuları ölçmek için dört Model Bağlam Protokolü (MCP) bellek sunucusunu test ettik . LangChain'in ReAct Agent'ını kullanarak her sunucuyu bağladık, standartlaştırılmış çoklu oturum görüşmeleri gerçekleştirdik ve bellek işlemi doğruluğuna göre puanlandırdık.

Ayrıca , Claude ve Cursor'ı OpenMemory MCP aracılığıyla birbirine bağlayan çalışan bir demo da oluşturduk. Bu demo, her iki araç arasında bağlamı kalıcı hale getiren paylaşımlı bir bellek katmanıdır. Demo, belleğin pratikte nasıl çalıştığını gösteriyor: ne depolanıyor, ne zaman alınıyor ve bağlam hangi bilgilerin ortaya çıkacağını nasıl belirliyor .

MCP bellek sunucusu performans testi sonuçları ve metodolojisi

Büyük dil modellerinin (LLM'ler) çok oturumlu konuşmalarda bilgiyi ne kadar iyi yönettiğini, konuşma bağlamını nasıl koruduğunu ve harici bellek sistemlerini kullanarak önemli bilgileri nasıl geri getirdiğini değerlendirdik. Dört farklı MCP sunucu uygulamasını inceledik: Handrails 1 , Bilgi Grafiği 2 , Temel Bellek 3 ve Zine 4 .

Loading Chart

Bu kıyaslama testinin amacı, bir MCP sunucusunun aşağıdaki kapasitelerini ölçmektir:

  • Ders aralarında aynı soruları iki kez sormadan, öğrenilen bilgileri doğru bir şekilde hatırlayın.
  • Uygun zamanlarda doğru bellek işlemlerini (okuma, yazma, güncelleme ve silme) gerçekleştirin.
  • Yanıtları, önceden kaydedilmiş kullanıcı bağlamı ve tercih verileri doğrultusunda değiştirin.

Veri kümesinden MCP'deki örnek etkileşimler

1- Paket yükleme sorunu: Bu örnek, bir kullanıcının yazılım yüklemeye çalışırken sorunlarla karşılaştığı bir durumda sistemin nasıl davrandığını test etmektedir. İşte etkileşimin ayrıntılı açıklaması:

  • 1. Oturum: "25 numaralı paketi yüklemekte sorun yaşıyorum."
  • 2. Oturum: "apt install komutunu denedim ancak erişim reddedildi hatası aldım."
  • 2. oturum devam etti: "İşe yaradı! Teşekkür ederim" (sudo önerisinden sonra)

Beklenen davranış: Sistem, gelecekte benzer durumlar için sudo'nun kurulum sorununu çözdüğünü kaydetmelidir.

2- Kullanıcı beceri uyarlama testi: Bu örnek, sistemin yanıtlarını kullanıcının deneyim seviyesine göre nasıl uyarladığına odaklanmaktadır. İşte etkileşimin ayrıntılı bir açıklaması:

  • 1. Oturum: “Sosyal yardım başvurumda yardıma ihtiyacım var. Bu konuda yeniyim.”
  • Oturum Arası
  • 2. Oturum: "Teşekkürler, ama şu anda giriş yapamıyorum."

Beklenen davranış: Destek temsilcisinin kullanıcının acemi olduğunu hatırlaması ve gelişmiş sorun giderme adımları yerine daha anlaşılır açıklamalar sunması gerekir.

Bellek işlemleri

Her diyalog, sunucunun gerçekleştirdiği belirli bellek işlemlerini içerir ve sunucunun belleğe yazma/saklama , alma/okuma , güncelleme ve temizleme yeteneğini test eder.

  • Yazın: İlk cihaz bilgilerini, belirtileri ve kullanıcı beceri düzeyini kaydedin.
  • Okuyun: Oturumlar yeniden başladığında önceki bağlamı alın.
  • Güncelleme: Çözüm sonuçlarını (başarı veya başarısızlık) takip edin.
  • Sil: Güncelliğini yitirmiş bilgileri kaldırın.

Performans testi nasıl çalışır?

Karşılaştırma testimizde LangChain'in ReAct ajan çerçevesini ve OpenAI'nin GPT-4 modelini temel model olarak kullanıyoruz. Her bir MCP sunucusunu (Bilgi Grafiği, Temel Bellek, Korkuluk, Zine) ayrı ayrı test ediyoruz.

Her senaryo, sistemin bellek kalıcılığını ve çoklu oturum diyalog yönetimini doğrulamak için çalıştırılır. Sistemin belleğini şu şekilde test ettik:

  • Veri kümelerinin doğrulanması ve yüklenmesi: Birden fazla oturumdan gelen konuşmaları JSON formatında yükler ve temel yapıyı doğrular.
  • Aracının başlatılması:
    • MCP sunucusunu bir ReAct aracısına bağlar ve aracı üzerinde bellek işlemleri için özel bir sistem komut istemi ayarlar.
    • İşlemleri ilgili bellek fonksiyonlarıyla sınırlandırmak için bir araç izin listesi kullanır.
  • Sırayla işleme : Her oturumu ayrı ayrı ele alarak konuşma geçmişini korur ve sürekliliği değerlendirmek için oturum duraklamalarını açıkça belirtir.
  • Bellek işlemlerinin uygulanması:
    • Yazma işleminden önce doğrulama gerektirerek kopyaların önlenmesi ve oturum kesintilerinden sonra belleğin okunmasının sağlanması gibi en iyi uygulamaları takip eden güvenlik önlemleri uygular.
    • Güvenlik önlemleri devreye girdiğinde yeniden deneme fırsatları sunar.
  • Araç çağrısı analizi:
    • Tüm araç çağrıları ayıklanır ve kategorize edilir (okuma, yazma, güncelleme, silme).
    • Oturum sınırları boyunca ve konuşma sırası içinde kullanılan araçların sıralanma eğilimlerini inceler.
    • Yazma-güncelleme ve okuma-yazma gibi çeşitli işlem türleri arasındaki değişiklikleri izler.
  • Değerlendirme ve puanlama:
    • Veri kümesi açıklamalarından beklenen işlemleri, gözlemlenen işlemlerle karşılaştırır.
    • Her konuşmanın doğruluğunu belirler ve birçok konuşmadan elde edilen ölçümleri birleştirir.
    • Özellikle özgeçmişte okuma ve yazmadan önce okuma davranışlarını ölçer.
  • Hata analizi: Operasyonel bilgilerle birlikte adım adım ayrıntılı kayıtlar tutar, hataları sınıflandırır, arıza eğilimlerini izler ve performans raporları ve özetleri oluşturur.
  • Çıktı: Karşılaştırma verilerini ve temel ölçütleri içeren özet raporları içeren CSV dosyaları oluşturarak bilgilerin okunmasını kolaylaştırır.

Temel ölçütümüz, modelin beklenen bellek işlemlerini gerçekleştirdiği dönüşlerin yüzdesini ölçen işlem doğruluğudur .

Araçlar arasında paylaşılan bellek olmamasının sorunu

Fikir üretmek için Claude gibi araçlar kullanmak yaygındır. Genellikle bu planı alıp farklı araçlar arasında geçiş yaparım. Ancak, paylaşımlı bellek olmadan, farklı yapay zeka araçları geçmiş kararları, önceki mimari seçimleri veya kod tabanınızın inceliklerini hatırlamaz.

Bu durum çeşitli sorunları beraberinde getiriyor:

  • Araçlar arasında bağlam kayboluyor: Bir araçta değişiklik yaptığınızda, örneğin Claude'da bir planı güncellediğinizde veya teknoloji yığınını ayarladığınızda, Cursor bu değişikliklerden haberdar olmuyor. Tüm ayrıntıları manuel olarak yeniden girmeniz gerekiyor. Örneğin, projeye her döndüğünüzde, kullandığınız çerçeveyi (örneğin, Redux ile React veya Bloc ile Flutter) yeniden açıklamanız gerekiyor.
  • Veri tekrarı: Farklı araçlar arasında bilgileri tekrarlamanız da gerekebilir. Örneğin, uygulamanın teknoloji yığını, düzeni ve özellikleri, Claude'da zaten tanımlanmış olsa bile, Cursor'da yeniden tanımlanmalıdır.
  • Verimlilik düşüşü: Araçlar belleği paylaşmadığı için, aynı bağlamı sürekli olarak yeniden tanıtmak zorunda kalıyorsunuz.

Bellek ve MCP birlikte nasıl çalışır?

Memory MCP sisteminde, tüm yapay zeka araçlarınız ve MCP istemcileriniz (örneğin Cursor), hem bellek hem de model bağlam protokolünü (MCP) kullanarak birlikte çalışır.

  • Bellek , kullanıcı tercihleri ve tekrarlayan görevler hakkında kişiselleştirilmiş, kalıcı bilgiler depolar. Örneğin, Cursor tercih ettiğiniz programlama dillerini, ses tonunu ve iş akışı ayrıntılarını hatırlar.
  • MCP, bir oturum sırasında proje dosyaları veya API'ler gibi dinamik, göreve özgü verilere gerçek zamanlı erişim sağlar. İhtiyaç duyulduğunda güncel, bağlama özgü bilgilerin alınmasını garanti eder.

OpenMemory'ye Giriş

OpenMemory, MemZero tarafından piyasaya sürülen ve birden fazla yapay zeka uygulaması ve ajanı arasında birleşik bir bellek sistemi sağlayan bir araçtır. Bunu, tüm MCP istemcilerinizi tek, sürekli bir bellek alanına entegre eden bir "bellek çipi" olarak düşünebilirsiniz. Yerel olarak veya bulutta kullanılabilir.

OpenMemory'nin kişiselleştirilmiş, bağlam duyarlı sohbet için nasıl kullanıldığına dair üst düzey bir örnek (ChatGPT kullanılarak). 5

Eğitim Videosu: OpenMemory MCP

Gereksinimler

Başlamadan önce, aşağıdakilerin hazır olduğundan emin olun:

  1. Docker : OpenMemory ve MCP sunucularını yerel olarak çalıştırmak için gereklidir ( Docker'ı yükleyin ).
  2. Git : Gerekli depoları klonlamak için kullanılır.
  3. OpenMemory: LLM sunucularıyla yerel olarak etkileşim kurabilmek içinOpenMemory'yi yüklemeniz gerekecek.
  4. API Anahtarı : LLM ile etkileşim kurmak için API anahtarınıza ihtiyacınız olacak. Bu örnekte, bir OpenAI API anahtarı kullanacağız.

OpenMemory'nin Kurulumu

Güvenlik uyarısı: OpenMemory'yi kurarken ve kullanırken, özel API anahtarlarınızı, parolalarınızı veya diğer hassas bilgilerinizi doğrudan kodunuzda veya herkese açık depolarda paylaşmamanız önerilir.

Adım 1: Depoyu klonlayın

OpenMemory GitHub klasörü, ana depo olan mem klasörünün içinde yer almaktadır. OpenMemory'yi edinmek için, mem deposunun tamamını klonlamamız gerekiyor.

1. MemZero deposuna gidin ve depo bağlantısını kopyalayın (https://github.com/mem0ai/mem0.git).

2. Terminalinizi açın ve git clone komutunun ardından GitHub deposunun bağlantısını yazın.

3. Dizinlere gidin : Klonlama işleminden sonra, mem0 klasörünün içine girin (cd mem0 yazın) ve OpenMemory klasörünü bulun (cd openmemory/ yazın). Ardından bu klasöre gidin ve bundan sonraki tüm komutlar oradan gerçekleştirilecektir.

OpenMemory'yi çalıştırmak için hem kullanıcı arayüzünü hem de MCP sunucusunu çalıştırmanız gerekir.

Dolayısıyla, bunları konteynerleştirmek için Docker'ı kurmanız gerekiyor. Docker ile hem kullanıcı arayüzü hem de MCP sunucusu, tüm bağımlılıklarıyla birlikte konteynerlere paketlenebilir ve farklı ortamlarda tutarlı yürütme sağlanabilir.

Bu sayede, manuel yapılandırma konusunda endişelenmenize gerek kalmadan kullanıcı arayüzünü ve MCP sunucusunu kurabilir, çalıştırabilir ve ölçeklendirebilirsiniz.

Adım 2: Docker'ı kurun ve konteynerler oluşturun

Sisteminizde Docker kurulu değilse, Docker'ın web sitesinden indirip kurun.

Docker konteynerlerini oluşturun : Gerekli bağımlılıkları yüklemek için aşağıdaki "make build" komutunu çalıştırarak konteynerleri oluşturun:

Konteynerleri başlatın : Konteynerler oluşturulduktan sonra, "make up" yazarak bunları başlatın.

`make build` komutunu yalnızca bir kez çalıştırmanız yeterli. Ondan sonra, gerektiğinde konteynerleri başlatmak için `make up` komutunu çalıştırmanız yeterli.

Ayrıca, MCP sunucusunu kullanmak için sisteminizde Docker'ın çalışıyor olması gerekir. Buluta erişiminiz olana kadar, yerel olarak çalıştırmak için Docker'ı aktif tutmanız gerekecektir.

"Oluştur" sekmesine giderseniz, OpenMemory MCP sunucusunun artık çalışır durumda olduğunu görebilirsiniz :

OpenMemory MCP sunucusu varsayılan olarak şu adreste çalışmalıdır: http://localhost:8765 .

3. Adım: MCP sunucusunu kurun

Docker artık çalıştığına göre, bir sonraki adım bellek katmanını yönetmek için MCP sunucusunu kurmaktır.

OpenMemory kullanıcı arayüzü varsayılan olarak http://localhost:3000 adresinde çalışır. Docker çalışıyorsa, MCP sunucusu bu adreste yerel olarak çalışır ve erişilebilir olacaktır. Sunucunun düzgün çalıştığından emin olmak için, OpenMemory kontrol panelinde http://localhost:3000 adresine gitmeniz yeterlidir.

Adım 4: İstemcileri yapılandırın (bu örnekte Claude/Cursor)

Claude ve Cursor'ı (veya başka herhangi bir aracı) paylaşımlı bellek sistemine bağlamak için, Cursor'da dizini açın ve terminalinizde Cursor'a dokunun:

OpenAI API anahtarını yapılandırın : Proje yapısındaki API klasörünü açın. Açtığınızda, aşağıdaki gibi bir görünüm elde edeceksiniz ve dosya yapısı şu şekilde olacaktır:

Dosya yapısının içinde, API klasörüne gidin. Orada, av_example adlı bir dosya bulacaksınız.

OpenAI API anahtarınızı bu dosyaya yapıştırmanız gerekiyor. Dosyayı kopyalayın, dosya adından "example" kelimesini kaldırarak .env olarak yeniden adlandırın ve ardından gerçek API anahtarınızı içine yapıştırın.

Bu işlem tamamlandıktan sonra, makyaj komutunu kullanabileceksiniz. Bu adımı ön koşul olarak listelemelerinin nedeni, LLM etkileşimleri için gerekli olmasıdır; bu nedenle Open API anahtarını istiyorlar.

Adım 5: Araçlar bölümünde MCP'yi kurun.

Farklı araçlar için MCP'yi kurmamız gerekiyor. Ayarlarda manuel olarak yapılandırmanız gereken MCP bağlantısı mevcut. Çalıştırdığınızda, MCP otomatik olarak Claude istemcisine eklenir. Cursor için de aynı durum geçerlidir.

Gördüğünüz gibi, bu iki MCP'yi de kurdum. İşte Claude ve Cursor'ın kurulum hali:

Gördüğünüz gibi, Cursor'da zaten çalışır durumda :

Örnek MCP uygulaması

Bu örnek, MCP sunucusunun nasıl kullanılacağını göstermektedir. Claude Desktop'ı açıp farklı uygulama veya çözüm türleri için fikir üretmesini isteyebilirsiniz. Bu örnekte, zaman takibi uygulaması için bir konseptin nasıl oluşturulacağını inceleyeceğiz.

Öncelikle Claude kendi planını sunuyor. Aşağıda listelenen noktalara odaklanarak, uygulanması gereken özellikleri inceleyebilirsiniz.

Değişiklikleri orijinal plana ekledikten sonra, planı "zaman izleme planı" olarak belleğe kaydetmesini isteyebilirsiniz.

OpenMemory kontrol panelindeki sağ uç sekmesinden bellek ayrıntılarını görebilirsiniz. İşte bellek ayrıntıları:

Bu bölümde yer alan tüm görseller AI Labs MCP Eğitiminden alınmıştır. 6

Cursor'a geçecek olursak, ona "Zaman takibi uygulaması oluşturmak istiyorum" gibi bir komut verebilir ve hafızadan ayrıntıları çekip çekemeyeceğini sorabilirsiniz.

Ardından, MCP araçlarını kullanarak hafızayı listeledi ve aradı. Bu özellik, ilgili bilgileri aradığı için son derece kullanışlıdır. Örneğin, zaman takip uygulaması hakkında sorgulama yaptığında, bu konuyla ilgili tüm hafızaları getirdi.

Oradan Next.js, React, TypeScript ve kullanılacak diğer teknolojiler hakkında detayları çekti. Ardından uygulamayı geliştirmeye başladı.

Görevi tamamladıktan sonra, ilerlemeyi belleğe kaydetmesini isteyebilirsiniz ve o da bunu yapacaktır. İlerleme notları ekler, her şeyi yönetilebilir parçalara ayırır ve bunları da kaydeder. Artık tüm güncellemeler bellekte kaydedilmiştir.

Oluşturulan uygulama işte burada:

Uygulama oluşturulduktan sonraki zorluklar

Bir süre sonra, Cursor, bağlam boyutu nedeniyle yeni bir sohbet başlatırken hata verdi. Yeni bir sohbet başlatıldıktan sonra, uygulamanın ilerlemesiyle ilgili anıları getirmesini isteyebilirsiniz. MCP aracını tekrar çağırdı ve uygulamanın nerede çalıştığı ve şimdiye kadar neler yapıldığı gibi ilgili tüm verileri getirdi.

Ardından, bazı React öğelerindeki kontrastın düşük olması ve metnin görünmemesi nedeniyle bir ekran görüntüsü sağlandı. Kullanıcı arayüzünü düzeltmesini isteyebilirsiniz ve o da bunu yaptı.

Bu işlem sırasında, kaynak dizinini bulmaya çalışarak kendini tekrar tekrar çağırdı. Ancak, bir ön uç klasörünün varlığını tespit edemedi.

MCP, Cursor ve Claude'un belleği nasıl geri aldığı ve yönettiği

Şimdi, asıl görmek istediğiniz şey, hafızayı nasıl geri çağırdığı.

Dikkat edilmesi gereken en önemli nokta, bu belleğin aynı oturumda oluşturulan diğer tüm belleklerle bağlantılı olmasıdır. Dolayısıyla, MCP istemcisi "zaman" etiketli bir bellek talep ederse, ilgili bellekleri de getirir.

Her bir hafıza kaydının kaynak uygulamasını kontrol edebilirsiniz. Bazıları Cursor, bazıları ise Claude tarafından oluşturulmuştur. Hafıza kaydını açtığınızda erişim günlüğünü görüntüleyebilir, durumunu değiştirebilir, hatta hafıza kaydının kendisini düzenleyebilirsiniz.

MCP'nin projeler arasında ayrım yapabilme yeteneğini test etme

MCP sisteminin farklı projeler arasında ayrım yapıp yapamayacağını test etmek için, teknoloji yığınını MERN yığınına değiştirin ve Claude Desktop'a bu yeni bilgiyi MCP sunucusuna göndermesi talimatını verin.

Ardından, Cursor'ı açın ve yeni proje için hangi teknoloji yığınının kullanılacağını sorgulayın. Yalnızca MCP'nin kullanılmasını ve ek bağlam için proje dizinini kontrol etmemesini sağlayın.

Test sonuçları:

MCP çağrısı yapıldığında sistem karışıyor ve hem önceki projeden MERN yığınını hem de yeni projeden Next.js'i birlikte çekerek alıyor.

Bu durum, MCP sisteminin iki projenin bağlamlarını birbirinden ayıramadığını göstermektedir.

Dolayısıyla, MCP sistemi oturumlar arasında hafızayı saklayabilse de, zaman zaman farklı projelerden gelen bilgileri karıştırabilir.

Son düşünceler

MCP sistemi güçlü bir başlangıç olsa da, veri çakışmasını önlemek için benzer projeler için daha iyi bellek ayrımına ihtiyaç duyuyor. Tek projeler veya farklı isimlere sahip projeler için iyi çalışıyor, ancak sorgu yürütme ve bellek yönetimindeki iyileştirmeler onu daha da güçlü hale getirecektir.

Memory MCP'nin diğer uygulama alanları nelerdir?

1. Hafıza katmanına sahip çoklu ajanlı araştırma asistanı

Birden fazla LLM ajanı farklı araştırma alanlarında uzmanlaşmıştır (örneğin, akademik makaleler, GitHub depoları, haberler). Her ajan bulgularını bellekte saklar ve ana ajan daha sonra ilgili bağlam için bu bilgileri sorgulayabilir.

Gerçek hayattan bir örnek : İnsan Odaklı Çoklu Ajan Araştırma Sistemi. 7

2. Oturumlar arası kalıcı hafızaya sahip toplantı asistanı

Bir asistan, toplantı özetlerini, eylem maddelerini ve önemli notları saklar ve gelecekteki toplantılar için ilgili bağlamı bulur.

Gerçek hayattan bir örnek : Otter.ai, toplantılarda önemli noktaları kaydeden ve bağlamı korumak için bunları gelecekteki oturumlarda tekrar kullanan bir toplantı asistanıdır. Otter.ai hakkında daha fazla bilgi için bkz: Yapay zeka not alma uygulaması

3. Kullanımla birlikte gelişen, aracı tabanlı kodlama asistanı

Kullanım kalıplarından öğrenen ve tekrar eden sorunlar için çözümler depolayan, geçmiş çözümleri otomatik olarak alıp uygulayarak verimliliği artıran kodlama asistanları.

Gerçek hayattan bir örnek : Geliştiricinin kod stilinden öğrenen bir kodlama asistanı olan GitHub Copilot. Bilişsel ajanlar hakkında daha fazla bilgi için bkz: Yapay zeka ajanı belleği .

Cem Dilmegani
Cem Dilmegani
Baş Analist
Cem, 2017'den beri AIMultiple'da baş analist olarak görev yapmaktadır. AIMultiple, her ay Fortune 500 şirketlerinin %55'i de dahil olmak üzere yüz binlerce işletmeye (benzer Web'e göre) bilgi sağlamaktadır. Cem'in çalışmaları, Business Insider, Forbes, Washington Post gibi önde gelen küresel yayınlar, Deloitte, HPE gibi küresel firmalar, Dünya Ekonomik Forumu gibi STK'lar ve Avrupa Komisyonu gibi uluslararası kuruluşlar tarafından alıntılanmıştır. AIMultiple'ı referans gösteren daha fazla saygın şirket ve kaynağı görebilirsiniz. Kariyeri boyunca Cem, teknoloji danışmanı, teknoloji alıcısı ve teknoloji girişimcisi olarak görev yapmıştır. On yıldan fazla bir süre McKinsey & Company ve Altman Solon'da işletmelere teknoloji kararları konusunda danışmanlık yapmıştır. Ayrıca dijitalleşme üzerine bir McKinsey raporu yayınlamıştır. Bir telekom şirketinin CEO'suna bağlı olarak teknoloji stratejisi ve tedarikini yönetmiştir. Ayrıca, 2 yıl içinde sıfırdan 7 haneli yıllık yinelenen gelire ve 9 haneli değerlemeye ulaşan derin teknoloji şirketi Hypatos'un ticari büyümesini yönetmiştir. Cem'in Hypatos'taki çalışmaları TechCrunch ve Business Insider gibi önde gelen teknoloji yayınlarında yer aldı. Cem düzenli olarak uluslararası teknoloji konferanslarında konuşmacı olarak yer almaktadır. Boğaziçi Üniversitesi'nden bilgisayar mühendisliği diplomasına ve Columbia Business School'dan MBA derecesine sahiptir.
Tam Profili Görüntüle

Yorum yapan ilk kişi olun

E-posta adresiniz yayınlanmayacak. Tüm alanlar gereklidir.

0/450