Uygulamayı aç
Moonborn — Developers

Persona hafızasını (memory) ürün ihtiyacına göre ayarla

Üç katmanlı (tiered) hafıza mimarisini (kısa vadeli pencere, uzun vadeli geri çağırma, soğuk arşiv) ve oturumlar arası (cross-session) opt-in seçeneğini ürün yüzeyine göre yapılandır.

Moonborn'un hafıza (memory) mimarisi üç katmanlıdır: kısa vadeli pencere (son N tur istemde — prompt'ta — aynen yer alır), uzun vadeli geri çağırma (özetlenmiş ve vektörlere — embedding — dönüştürülmüş eski turlar), soğuk arşiv (cold archive) (eski parçalar — chunks — yavaş depolamaya taşınır). Üstünde de bir opt-in çıkış yolu (escape hatch) var: oturumlar arası hafıza (cross-session memory) — bir persona'nın oturumlar arası bilgi taşımasına izin verir.

Dördü de yapılandırma (config) maddeleri ile yönetilir. Doğru ayar ürün yüzeyine göre değişir: bir müşteri destek oturumu uzun bir destek geçmişini hatırlamalıdır; yaratıcı bir RPG sahnesi her oturuma temiz başlamalıdır. Bu rehber dört kolu somut değerlerle gezer.

Bu rehberi bitirdiğinde

  • Kısa vadeli pencere (window_turns) ile maliyet / hatırlama ödünleşmesini (trade-off) yönetebileceksin.
  • Uzun vadeli geri çağırma (long-term retrieval) için ürün yüzeyine uygun top_k ve strateji seçebileceksin.
  • Soğuk katmanın (cold tier) ne zaman devreye girdiğini ve nasıl geçersiz kılındığını (override) bileceksin.
  • Oturumlar arası hafızayı mahremiyet (privacy) sonuçlarıyla birlikte etkinleştirebileceksin.
  • Belirli bir bilgiyi persona'nın hafızasından elle (manuel olarak) silebileceksin.

Ön koşul: API anahtarı + en az bir sohbet (chat) oturumu deneyimi. Sohbet akışı yeniyse önce Bir persona ile sohbet oturumu kur.

1. Kısa vadeli pencere

Son N tur isteme aynen girer. Persona bu pencereyi tam bilgi olarak görür.

DeğerDavranışMaliyet
8Hafif hafıza; çok uzun oturumda eski tur kaybolurDüşük token
12 (varsayılan)Dengeli; çoğu sohbet ürünü için makulOrta token
16Geniş bağlam; uzun destek dizileri (threads) içinYüksek token
24+Uzun yapılandırılmış görüşmeler (mülakat tarzı)Çok yüksek token
await client.config.setItem({
  key: 'chat.memory.short_term.window_turns',
  value: 16,
  scope: 'workspace',
  scopeId: 'ws_...',
});

2. Uzun vadeli geri çağırma

Penceredeki son N tur dışındaki eski turlar özetlenir, vektörlere dönüştürülür (embed) ve pgvector'de saklanır. Her yeni tur en yakın K ilgili parçayı (chunk) geri çağırır (retrieve) ve isteme ekler (inject).

İki ana parametre:

Yapılandırma maddesiVarsayılanAnlamı
chat.memory.long_term.top_k4Her turda kaç parça geri çağrılır
chat.memory.long_term.retrieval_strategyhybridGeri çağırma algoritması

top_k ayarı

await client.config.setItem({
  key: 'chat.memory.long_term.top_k',
  value: 8,
  scope: 'workspace',
  scopeId: 'ws_...',
});
Yüzeytop_kNeden
Uzun müşteri destek dizileri8Geçmiş bildirimi (ticket) kapsayan geri çağırma
Varsayılan sohbet ürünü4Dengeli
Yaratıcı oyun (her sahne taze başlasın)2Az geri çağırma, tutarlılık önceliği yok
Araştırma paneli görüşmeleri6Önceki yanıtları tutarlı tutacak geri çağırma

Geri çağırma stratejisi

StratejiDavranış
hybrid (varsayılan)Anlamsal (semantic) benzerlik + BM25 + yeniden sıralayıcı (reranker) + MMR çeşitlilik (diversity)
semanticYalnız vektör uzaklığı — basit, hızlı
bm25Yalnız anahtar kelime eşleşmesi (keyword match) — voyage-3-large vektörlerini istemiyorsan

3. Soğuk katman (cold tier)

Belirli bir süreden eski hafıza parçaları soğuk depolamaya (cold storage) taşınır — varsayılan geri çağırma bunları atlamak ister, çünkü çok eski bilgi genelde alakasızdır.

await client.config.setItem({
  key: 'chat.memory.long_term.cold_tier_after_days',
  value: 90,
  scope: 'workspace',
  scopeId: 'ws_...',
});

Varsayılan 90 gündür. Bu süreden eski parçalar yavaş depolamaya taşınır ve varsayılan geri çağırma tarafından atlanır — yine var, ama sorgu performansını yavaşlatmazlar.

Soğuk parçayı sorgulamak

Kullanıcı açıkça eski bir şeye referans verirse ("geçen yıl konuştuğumuz şu konuyu hatırlıyor musun?"), çalışma zamanı (runtime) soğuk katmanı da sorguya dahil eder. Bu davranış chat.memory.long_term.include_cold_on_reference ile kontrol edilir (varsayılan true).

4. Oturumlar arası hafıza (Team ve üzeri)

Varsayılanda hafıza oturum kapsamlıdır (session-scope) — bir persona bir oturumdan diğerine bilgi taşımaz. Oturumlar arası sürekliliği isteğe bağlı (opt-in) olarak etkinleştirebilirsin:

await client.config.setItem({
  key: 'chat.memory.cross_session.enabled',
  value: true,
  scope: 'workspace',
  scopeId: 'ws_...',
});

Kullanıcı başına ve çalışma alanı başına kapsam

await client.config.setItem({
  key: 'chat.memory.cross_session.scope',
  value: 'user', // 'user' veya 'workspace'
  scope: 'workspace',
  scopeId: 'ws_...',
});
  • user (önerilen): Hafıza aynı kullanıcı kimliği için oturumlar arası taşınır, farklı kullanıcılar hafıza paylaşmaz.
  • workspace: Hafıza tüm çalışma alanı (workspace) genelinde paylaşılır — sadece tek bir kullanıcının kullandığı dahili (internal) araç veya CI çalıştırıcısı için.

5. Elle (manuel olarak) unutma

Belirli bir hafıza parçasını silmek için:

await client.chat.sessions.memory.delete({
  sessionId: 'ses_01H...',
  chunkId: 'mem_01H...',
});

Persona o belirli bilgiyi oturum için unutur. Oturumlar arası hafıza etkinse, aynı silme işlemi diğer oturumlar için de geçerli olur (parça karması — chunk hash — ile eşleştirilir).

Hangi yapılandırmayı nereden değiştir

DeğişiklikTipik kapsam
window_turnsworkspace — tüm sohbet ürünüm için
top_k, retrieval_strategyworkspace — genel (global) ayar
cold_tier_after_daysworkspace — alan bazlı saklama
cross_session.enabledworkspace — isteğe bağlı (opt-in) özellik
cross_session.scopeworkspace — kullanıcı seviyesi zorunlu

Daha ayrıntılı (granular) davranış için persona kapsamında geçersiz kılma mümkündür — bir destek botu için top_k: 8, bir yaratıcı NPC için top_k: 2 aynı çalışma alanında yan yana.

Plan gereksinimi

  • Kısa vadeli + uzun vadeli hafıza: her plan
  • Soğuk katman yönetimi: Pro ve üstü
  • Oturumlar arası hafıza: Team ve üstü
  • Özel vektör modeli (custom embedding model) geçersiz kılma: Enterprise

İlgili

Uzun vadeli hafıza kavramı

Üç katmanlı mimarinin teknik anatomisi: parçalama (chunking), vektör çıkarma (embedding), geri çağırma hattı.

Open →
Bir persona ile sohbet oturumu kur

Hafıza ve konuşma kaydının oturum içinde nasıl göründüğü.

Open →
Drift detection kavramı

Hafıza uzadığında karakter sesinin nasıl izlendiği.

Open →
Akış (streaming) desenleri

Uzun hafıza + akış kombinasyonunda kullanıcı deneyimi desenleri.

Open →