Ensemble ilişkileri
Personalar arasında tipli, çift-yönlü kenarlar — friend, ex-lover, mentor, rival, parent-child — chat runtime'ı çok karakterli sahne prompt'larına enjekte eder.
Ensemble'lar, Moonborn'un çok karakterli sahneleri nasıl ele aldığıdır. Açık ilişkiler olmadan, aynı oturumdaki iki persona birbirine doğru kayar; sesleri yakınsar, arka planları bulanıklaşır. Ensemble katmanı, runtime'a tur başına prompt'u oluşturduğunda danışacağı bir grafik vererek bunu önler.
Bir ilişki nedir
{
"personaId": "persona_mert",
"with": "persona_leyla",
"type": "ex-lover",
"note": "Aynı çeyrekte bir şirketi ve bir ortaklığı bölen kurucular.",
"bidirectional": true
}type yerleşik ilişki sözlüğünden biri:
friend,ex-friend,acquaintancefamily,parent-child,siblingromantic-partner,ex-lover,spousecolleague,boss,subordinatementor,mentee,rival,adversarystranger
Özel tipler engine.ensemble.types.{name} config item'ları
üzerinden (Team+).
Runtime nasıl kullanır
Birden fazla persona ile bir oturum açtığında (ensemble: [...]),
her turun prompt birleştirmesi mevcut konuşmacıya bitişik ilişki
kenarlarını içerir. Mert konuşur → runtime "Mert eski sevgilisi Leyla
ile konuşuyor" artı note'u ekler.
Bu kasıtlı olarak hafif: LLM ilişkiyi düz yazı olarak görür, embedding olarak değil. Daha ağır sahne durumu — kimin sırası, sahne fazı, dallanma anlatı — tüketicinin sorumluluğundadır.
API
POST /v1/personas/{id}/relationships— kenar oluştur.GET /v1/personas/{id}/relationships— personanın ensemble'ını listele.DELETE /v1/personas/{id}/relationships/{otherId}— kenar kaldır.GET /v1/personas/{id}/ensemble— bu personadan erişilebilir tam alt grafik, sahneleri görselleştirmek için kullanışlı.
Tarife
İlişki grafiği + çok personalı chat oturumları için Pro ve üzeri.
Dürüst kapsam
Ensemble'lar bir ilişki katmanıdır, sahne motoru değil. Sıra yönetimi, sahne durumu veya dallanma anlatısı yönetmiyoruz. Moonborn'un ensemble'ını kendi orkestrasyon framework'ünle eşleştir — bkz. Çok karakterli sahneler.