Metlivi Blog

Karakter Sohbetinin Oturumlar Arasında Kullanıcı Düzeltmesini Hatırlaması Nasıl Sağlanır?

Bir kullanıcı kurgusal bir karakterin ayrıntılarını düzelttiğinde, sohbet düzeltilen sürümü kapsamıyla birlikte kaydetmeli, çelişen eski sürümlerin yerine yenisini koymalı ve kaydedilen notu görünür ve düzenlenebilir hale getirmelidir. Ayrıca, kalıcı kullanıcı tercihlerini yalnızca tek bir hikaye sahnesinde geçerli olan bilgilerden ayırt etmelidir. Hatırlanan bir ayrıntıyı daha sonra kullanmadan önce sistem, bunun ilgili ve güncel olup olmadığını kontrol etmeli; kanıtlar net değilse, ortak bir geçmiş uydurmak yerine sormalıdır. Bu rehber, anlık bir yanlış anlamaya nasıl yanıt verileceğine değil, bu kalıcılık ve çakışma çözme görevine odaklanmaktadır.

27 Eylül 20268 dk okumaOkuma, sanat ve kültürYazan: Metlivi Editorial Team
Bölüm 1

Bir karakter sohbeti neleri hatırlamalıdır?

Açıklayıcı bir örneği ele alalım: Bir kullanıcı, "Mira'nın gözleri mavi değil, yeşil" diyor. Bu düzeltme kalıcı bir karakter ayrıntısına, belirli bir rol yapma oyunundaki Mira'nın geçici bir versiyonuna veya yalnızca kullanıcının Mira'nın nasıl tasvir edilmesini istediğine ilişkin tercihine atıfta bulunabilir. Yalnızca "gözler: yeşil" bilgisini saklayan bir hafıza, bu bilgiyi yararlı kılan bağlamı kaybeder.

Pratik bir bellek kaydı en azından özneyi, düzeltilen ayrıntıyı, kapsamı ve kullanıcının bunun kalıcı olmasını amaçlayıp amaçlamadığını içermelidir. Örneğin:

Bu yapı, araştırmalar tarafından öngörülen bir biçim değil, bir ürün tasarımı önerisidir. Amacı, yerel bir sahne ayrıntısının sessizce genel bir gerçeğe dönüşmesini önlemektir. Sahneye özgü bir düzeltme bunun yerine "Kış balosu sahnesinde Mira yeşil bir pelerin giyiyor" şeklinde kaydedilebilir. Bu not, onun genel kıyafetinin veya görünümünün üzerine yazılmamalıdır.

Özne: Mira, kurgusal karakter
Ayrıntı: Yeşil gözler
Kapsam: Mira'nın genel karakter tasviri
Durum: Güncel; önceki "mavi gözler" notunun yerini alır
Kaynak: Kullanıcı düzeltmesi
Bölüm 2

Bir düzeltme eski hafızanın yerini nasıl almalıdır?

Net bir düzeltmeyi, her iki sürümü de etkin bırakan ek bir bilgi olarak değil, ilgili bilginin güncellenmesi olarak ele alın. Sistem hem "Mira mavi gözlüdür" bilgisini korur hem de "Mira yeşil gözlüdür" bilgisini eklerse, daha sonraki çağırma işlemlerinde ikisinden biri öne çıkabilir. Güncellenen kayıt, eski değeri geçersiz kılınmış olarak işaretlemeli veya aktif kullanımdan kaldırmalı, ancak ürün bir bellek günlüğü sunuyorsa değişikliği açıklayacak kadar geçmişi korumalıdır.

Bu ayrım önemlidir çünkü bilgiler zamanla değişebilir. *[Keep Me Updated! Memory Management in Long-term Conversations](https://aclanthology.org/2022.findings-emnlp.276/)* adlı çalışmada Bae ve meslektaşları, birden fazla konuşma oturumu boyunca kullanıcılar hakkındaki güncellenmiş bilgileri izlemek için bir görev ve veri seti sunmaktadır. Hatıraları metin açıklamaları olarak temsil ederler ve geçersiz kılınan veya gereksiz bilgileri seçici olarak ortadan kaldırmayı önerirler. Deneyleri, bu yaklaşımı saklanan bellekleri değiştirmeden bırakan temel modellerle karşılaştırmaktadır. Çalışma, uzun vadeli konuşma belleğini konu almaktadır; özellikle kurgusal karakter sohbetlerini test etmez veya evrensel tek bir bellek tasarımı oluşturmaz.

Bir karakter sohbeti için aynı genel güncelleme mantığını dikkatlice uygulayın: doğrudan bir "mavi değil—yeşil" düzeltmesi, eski değerin belirtilen kapsam dahilinde yanlış olduğuna dair güçlü bir kanıttır. Yeni bir sahne ayrıntısı, kalıcı bir karakter bilgisinin değiştiğine dair otomatik olarak bir kanıt değildir. Kapsam eksik olduğunda ve aradaki fark daha sonra önem taşıyacaksa, "Mira'nın yeşil gözlü olduğunu her hikayede mi yoksa sadece bu versiyonda mı hatırlamalıyım?" gibi kısa bir takip sorusu sorun.

Bölüm 3

Sistem, kullanıcı tercihlerini hikaye gerçeklerinden nasıl ayırabilir?

Tercihleri ve kurgusal evren gerçeklerini ayrı kategorilerde saklayın. Bir tercih, "Kullanıcı Mira'nın diyaloglarının kısa ve öz olmasını tercih ediyor" olabilir. Bir hikaye gerçeği ise "Bu sahnede Mira istasyona yeni vardı" olabilir. Bunlar farklı sorulara yanıt verir: Tercih, sohbetin nasıl yanıt vereceğini yönlendirirken hikaye gerçeği, bir anlatı içinde sürekliliğin korunmasına yardımcı olur.

Her ikisine de kapsam ekleyin. Bir tercih sohbetler genelinde, tek bir karakter için veya yalnızca mevcut bir rol yapma oyunu için geçerli olabilir. Bir hikaye gerçeği ise tek bir sahneye, bir hikaye akışına veya karakterin genel profiline uygulanabilir. Tek bir düzeltmeden geniş kapsamlı bir tercih çıkarmayın. Bir kullanıcının "Mira'nın gözleri yeşildir" demesi, kendi başına kullanıcının her karakterin yeşil gözlü olmasını istediği veya bu ayrıntının Mira'nın her alternatif versiyonu için geçerli olduğu anlamına gelmez.

Basit bir karar sırası yardımcı olur:

Bu adımlar, konuşma bilgilerini güncel tutma probleminden türetilmiş önerilen bir iş akışıdır. Belirli bir sohbet ürününün bunları takip ettiğine dair bir iddia değildir.

Düzeltmenin neye atıfta bulunduğunu belirleyin: kullanıcının tercihi, bir karakter özelliği veya mevcut bir sahne durumu.
Kullanıcının belirttiği kapsamı, "bu hikayede" veya "bundan sonra" gibi sınırlamalar da dahil olmak üzere koruyun.
Kapsam belirtilmemişse, yalnızca en dar makul yorumu kullanın veya oturumlar arası bir anıyı kaydetmeden önce sorun.
Aynı özne ve kapsam hakkında daha eski bir hafıza olup olmadığını kontrol edin. Yalnızca yeni ifade gerçekten çeliştiğinde eskisinin yerine geçirin.
İlişkisiz anıları olduğu gibi koruyun. Mira'nın göz rengini değiştirmek yaşını, ilişkilerini veya kullanıcının tercih ettiği yazım tarzını değiştirmemelidir.
Bölüm 4

Çelişen hafızalar nasıl ele alınmalıdır?

Çakışmaları, geri çağrılması en kolay olan cümleyi körü körüne tercih ederek değil; özne, kapsam ve zamanı karşılaştırarak çözün. Kullanıcıdan gelen net ve daha sonraki bir düzeltme, genellikle aynı kapsamdaki aynı gerçeğin daha önceki bir versiyonuna göre öncelikli olmalıdır. Farklı bir rol yapma oyunundaki bir ayrıntı, mevcut olanı geçersiz kılmamalıdır. Sistem, iki kaydın bir karakterin aynı versiyonuna atıfta bulunup bulunmadığını ayırt edemiyorsa, bunları ayrı tutmalı veya sormalıdır.

Örneğin, daha eski bir belleğin "Mira mavi gözlüdür" dediğini, daha sonraki bir mesajın ise "Bu alternatif evren hikayesi için Mira yeşil gözlüdür" dediğini varsayalım. Sonraki ifade Mira'nın bu hikayedeki görünümünü günceller, ancak varsayılan karakter profilini mutlaka değiştirmez. Kullanıcı "Aslında, bundan sonra göz rengini yeşil yap" derse, kapsam daha geniştir ve varsayılan kayıt güncellenebilir. Çelişkili versiyonları sessizce birleştirerek kullanıcının Mira'yı her zaman aynı şekilde tanımladığı yönünde bir iddiaya dönüştürmeyin.

Bellek sistemlerinin belirsizliği ele alma yöntemine de ihtiyacı vardır. İki kaydın tarihleri veya kapsamları net değilse, her iki ayrıntıyı da kendinden emin bir şekilde sunmak yerine çakışmayı çözülmemiş olarak işaretleyin. Kısa bir soru, kendinden emin ancak desteksiz bir hatırlamaya tercih edilir.

Bölüm 5

Kullanıcılar nelerin hatırlandığını nasıl görebilir ve kontrol edebilir?

Bir düzeltmeyi kaydettikten sonra belirli değişikliği onaylayın: "Anlaşıldı—Mira'yı genel karakter profilinde önceki mavi göz ayrıntısının yerine yeşil gözlü olarak hatırlayacağım." Sistem daha dar kapsamlı bir gerçeği kaydediyorsa bunu belirtin: "Yeşil pelerini bu sahne için bir ayrıntı olarak saklayacağım." Bu onay, kullanıcıya olası bir kapsam hatasını hemen yakalama şansı verir.

Bir hafıza görünümü, kaydedilen ifadeyi ve kapsamını sade bir dille göstermeli ve bunu düzenleme veya silme olanağı sunmalıdır. Ürün, geçersiz kılınan girişleri görüntüleyebiliyorsa, bunları eşit derecede güncel olarak göstermek yerine süresi dolmuş olarak etiketlemelidir. Bu, kullanıcıların bir karakter sohbetinin belirli bir ayrıntıyı neden gündeme getirdiğini anlamalarını ve tüm hikayeyi tekrarlamaya gerek kalmadan kaydı düzeltmelerini kolaylaştırır.

Kaydedilmemiş bir hafızanın var olduğunu ima etmekten veya karakterin sistemin doğrulayamayacağı geçmiş bir etkileşimi hatırladığını iddia etmekten kaçının. Karakter doğal bir şekilde konuşurken arayüz veya yanıt, hangi bilgilerin saklandığı konusunda dürüst kalabilir.

Bölüm 6

Daha sonraki hatırlama nasıl test edilmelidir?

Kalıcılığı yalnızca düzeltmenin yapıldığı konuşmada değil, oturumlar arasında da test edin. [Yang ve Ettinger tarafından yapılan durumsal anlama çalışması](https://aclanthology.org/2023.emnlp-main.394/), ChatGPT'yi değişen çevre durumlarını izleyip izlemediğini ve bildirip bildirmediğini test etmek için tasarlanmış sentetik bir ortam kullanarak değerlendirir. Yazarlar, zaman içinde durumları korumada hatalar olduğunu bildirmekte ve kendi ortamlarındaki faktörler olarak kalıcı olmayan bağlam içi belleği ve halüsinasyon ürünü güncellemelere yatkınlığı tartışmaktadır. Bu, ChatGPT'nin söz konusu ortamda 2023 yılında yayımlanmış kontrollü bir çalışmasıdır; mevcut her model, ürün veya kurgusal karakter sistemi hakkında bir kanıt teşkil etmez.

Bir karakter sohbeti için odaklanmış bir test, önceden hazırlanmış küçük bir konuşma seti kullanabilir:

Her testi hedeflenen kapsama göre puanlayın: doğru çağırma, eski bilginin doğru değiştirilmesi, sahne ve genel gerçeklerin ayrılması ve belirsizliğin dürüstçe ele alınması. Beklenen cevabın açıklama istemek olduğu durumları da dahil edin. Saklanan notları belirsiz olduğunda tahmin yürütmeyi tutarlı bir şekilde reddeden bir sistem, bu durumu süreklilik uyduran bir sisteme göre daha iyi yönetiyor demektir.

Varsayılan bir karakter gerçeği belirleyin, bunu düzeltin, oturumu sonlandırın ve yeni bir oturumda bunun hakkında soru sorun.
Yalnızca sahneye özgü bir ayrıntıyı kaydedin ve bunun kalıcı bir karakter özelliğine dönüşmediğini kontrol edin.
Bir tercihi değiştirin ve eski tercihin belirtilen kapsam dahilindeki sonraki yanıtlara artık rehberlik etmediğini doğrulayın.
Aynı karakterin ikinci bir versiyonunu tanıtın ve iki versiyonun birbirinden ayrı kaldığını kontrol edin.
İlişkisiz bir ayrıntı hakkında soru sorun ve düzeltmenin diğer hafızaları değiştirmediğini doğrulayın.
Kullanıcının daha önce ne söylediğini sorun ve sistemin yanıtını haklı çıkarmak için daha önceki bir konuşmayı uydurmadığını kontrol edin.
Bölüm 7

Düzeltmeden hatırlamaya güvenilir bir yol

Bir düzeltme net bir yol izlemelidir: öznesini belirleyin, kapsamını koruyun, çelişen tüm hafızaları güncelleyin, kaydedilen değişikliği gösterin ve sonraki yanıtların bunu desteksiz bir geçmişe genişletmeden çağırdığını doğrulayın. Bu sıralama, kurgusal dünyanın kontrolünü kullanıcıya bırakırken bir karakter sohbetine sıralar ve oturumlar arasında tutarlı kalması için pratik bir yol sunar. Araştırmalar, bellek güncellemelerini ve durum takibini ciddiye almayı desteklemektedir; buradaki özel iş akışı bir tasarım önerisidir ve davranışları kullanılacağı üründe kontrol edilmelidir.

İlgili okumalar

Bu konuyu keşfetmeye devam et