Cara Membuat Obrolan Karakter Mengingat Koreksi Pengguna Lintas Sesi
Ketika pengguna mengoreksi detail karakter fiksi, obrolan harus menyimpan versi yang telah dikoreksi beserta cakupannya, menggantikan versi lama yang bertentangan, serta membuat catatan yang disimpan dapat dilihat dan diedit. Sistem juga harus membedakan preferensi pengguna yang bertahan lama dari fakta yang hanya berlaku di dalam satu adegan cerita. Sebelum menggunakan detail yang diingat di kemudian hari, sistem harus memeriksa apakah detail tersebut relevan dan mutakhir; jika buktinya tidak jelas, sistem harus bertanya alih-alih mengarang masa lalu bersama. Panduan ini berfokus pada persistensi dan tugas penyelesaian konflik tersebut, bukan pada cara menanggapi kesalahpahaman saat itu juga.
Apa yang harus diingat oleh obrolan karakter?
Perhatikan contoh ilustrasi berikut: seorang pengguna berkata, “Mata Mira berwarna hijau, bukan biru.” Koreksi tersebut bisa merujuk pada detail karakter permanen, versi sementara Mira dalam permainan peran tertentu, atau sekadar preferensi pengguna mengenai cara Mira digambarkan. Memori yang hanya menyimpan “mata: hijau” akan kehilangan konteks yang membuat fakta tersebut berguna.
Catatan memori yang praktis harus mencakup setidaknya subjek, detail yang dikoreksi, cakupan, dan apakah pengguna bermaksud menjadikannya permanen. Sebagai contoh:
Struktur ini merupakan rekomendasi desain produk, bukan format baku yang ditentukan oleh studi penelitian. Tujuannya adalah untuk mencegah detail adegan lokal berubah secara diam-diam menjadi fakta global. Koreksi spesifik adegan mungkin dapat dicatat sebagai “Dalam adegan pesta dansa musim dingin, Mira mengenakan jubah hijau.” Catatan tersebut tidak boleh menimpa pakaian atau penampilan umumnya secara keseluruhan.
Bagaimana koreksi seharusnya menggantikan memori lama?
Perlakukan koreksi yang jelas sebagai pembaruan pada fakta yang relevan, bukan sebagai fakta tambahan yang membiarkan kedua versi tetap aktif. Jika sistem mempertahankan “Mira bermata biru” dan menambahkan “Mira bermata hijau,” pencarian data di kemudian hari dapat memunculkan salah satunya. Catatan yang diperbarui harus menandai nilai lama sebagai telah digantikan atau menghapusnya dari penggunaan aktif, sembari tetap menyimpan riwayat yang cukup untuk menjelaskan perubahan jika produk menyediakan log memori.
Perbedaan ini penting karena informasi dapat berubah seiring waktu. Dalam *[Keep Me Updated! Memory Management in Long-term Conversations](https://aclanthology.org/2022.findings-emnlp.276/)*, Bae dan rekan-rekan memperkenalkan sebuah tugas dan himpunan data untuk melacak informasi yang diperbarui tentang pengguna di berbagai sesi percakapan. Mereka merepresentasikan memori sebagai deskripsi teks dan mengusulkan eliminasi selektif terhadap informasi yang tidak valid atau mubazir. Eksperimen mereka membandingkan pendekatan ini dengan dasar acuan (baseline) yang membiarkan memori tersimpan tidak berubah. Studi ini membahas memori percakapan jangka panjang; studi ini tidak secara spesifik menguji obrolan karakter fiksi atau menetapkan satu desain memori universal.
Untuk obrolan karakter, terapkan logika pembaruan umum yang sama secara hati-hati: koreksi langsung seperti “bukan biru—hijau” adalah bukti kuat bahwa nilai lama salah dalam cakupan yang disebutkan. Detail adegan baru tidak serta-merta menjadi bukti bahwa fakta karakter yang permanen telah berubah. Ketika cakupan tidak ada dan perbedaannya berpengaruh di kemudian hari, ajukan pertanyaan tindak lanjut singkat seperti, “Apakah saya harus mengingat mata hijau untuk Mira di setiap cerita, atau hanya di versi ini?”
Bagaimana sistem dapat memisahkan preferensi pengguna dari fakta cerita?
Simpan preferensi dan fakta dunia fiksi dalam kategori yang berbeda. Preferensi bisa berupa “Pengguna lebih suka dialog Mira disampaikan secara ringkas.” Fakta cerita bisa berupa “Dalam adegan ini, Mira baru saja tiba di stasiun.” Keduanya menjawab pertanyaan yang berbeda: preferensi memandu bagaimana obrolan merespons, sementara fakta cerita membantu menjaga kesinambungan dalam sebuah narasi.
Tambahkan cakupan pada keduanya. Preferensi dapat berlaku di seluruh obrolan, untuk satu karakter, atau hanya pada permainan peran saat ini. Fakta cerita dapat berlaku untuk satu adegan, satu alur cerita, atau profil umum karakter. Jangan menyimpulkan preferensi yang luas dari satu koreksi saja. Jika pengguna mengatakan “Mata Mira berwarna hijau,” hal itu tidak serta-merta berarti pengguna ingin setiap karakter bermata hijau, atau detail tersebut berlaku untuk setiap versi alternatif Mira.
Urutan keputusan sederhana dapat membantu:
Langkah-langkah ini merupakan alur kerja yang diusulkan dan diturunkan dari masalah menjaga kemutakhiran informasi percakapan. Langkah-langkah ini bukan klaim bahwa produk obrolan tertentu menerapkannya persis seperti ini.
Bagaimana seharusnya sistem menangani memori yang bertentangan?
Selesaikan konflik dengan membandingkan subjek, cakupan, dan waktu—bukan dengan semata-mata mengutamakan kalimat mana yang paling mudah diambil. Koreksi yang jelas dan lebih baru dari pengguna umumnya harus diprioritaskan di atas versi fakta lama dalam cakupan yang sama. Detail dari permainan peran yang berbeda tidak boleh menimpa detail saat ini. Jika sistem tidak dapat memastikan apakah dua catatan merujuk pada versi karakter yang sama, sistem harus memisahkannya atau menanyakannya.
Sebagai contoh, anggaplah memori lama menyatakan, “Mira bermata biru,” sementara pesan berikutnya mengatakan, “Untuk cerita alam semesta alternatif ini, Mira bermata hijau.” Pernyataan terakhir memperbarui penampilan Mira untuk cerita tersebut, tetapi tidak serta-merta mengubah profil karakter bawaan. Jika pengguna mengatakan, “Sebenarnya, jadikan hijau sebagai warna matanya mulai sekarang,” cakupannya menjadi lebih luas dan catatan bawaan dapat diperbarui. Jangan menggabungkan versi yang kontradiktif secara diam-diam menjadi klaim bahwa pengguna selalu mendeskripsikan Mira dengan cara yang sama.
Sistem memori juga membutuhkan cara untuk menangani ketidakpastian. Jika dua catatan memiliki tanggal atau cakupan yang tidak jelas, tandai konflik tersebut sebagai belum terselesaikan daripada menyajikan salah satu detail dengan percaya diri. Pertanyaan singkat lebih disukai daripada ingatan yang percaya diri tetapi tidak berdasar.
Bagaimana pengguna dapat melihat dan mengontrol apa yang diingat?
Setelah menyimpan koreksi, konfirmasikan perubahan spesifik tersebut: “Dimengerti—saya akan mengingat Mira bermata hijau dalam profil karakter umumnya, menggantikan detail mata biru sebelumnya.” Jika sistem menyimpan fakta yang lebih sempit, nyatakan demikian: “Saya akan menyimpan jubah hijau sebagai detail untuk adegan ini.” Konfirmasi tersebut memberi pengguna kesempatan untuk langsung menyadari jika terjadi kesalahan cakupan.
Tampilan memori harus memperlihatkan rumusan teks yang disimpan dan cakupannya dalam bahasa yang lugas, disertai cara untuk mengedit atau menghapusnya. Jika produk dapat menampilkan entri yang telah digantikan, produk harus melabelinya sebagai usang alih-alih menampilkannya sebagai data yang sama-sama mutakhir. Hal ini memudahkan pengguna untuk memahami mengapa obrolan karakter memunculkan detail tertentu dan memperbaiki catatan tanpa perlu mengulang keseluruhan cerita.
Hindari memberi kesan bahwa sebuah memori ada padahal belum disimpan, atau mengklaim karakter mengingat percakapan masa lalu yang tidak dapat diverifikasi oleh sistem. Karakter dapat berbicara secara alami sementara antarmuka atau responsnya tetap jujur tentang informasi apa yang sebenarnya disimpan.
Bagaimana pengingatan kembali di kemudian hari harus diuji?
Uji persistensi lintas sesi, bukan hanya dalam percakapan yang sama tempat koreksi dibuat. [Studi pemahaman situasional oleh Yang dan Ettinger](https://aclanthology.org/2023.emnlp-main.394/) mengevaluasi ChatGPT menggunakan lingkungan sintetis yang dirancang untuk menguji apakah model melacak dan melaporkan perubahan status lingkungan. Penulis melaporkan adanya kesalahan dalam mempertahankan status dari waktu ke waktu dan membahas memori dalam-konteks (in-context) yang non-persisten serta kerentanan terhadap pembaruan halusinasi sebagai faktor dalam pengaturan mereka. Ini adalah studi terkontrol terhadap ChatGPT dalam lingkungan tersebut yang diterbitkan pada tahun 2023; ini bukan bukti mutlak tentang setiap model, produk, atau sistem karakter fiksi saat ini.
Pengujian terfokus untuk obrolan karakter dapat menggunakan sekumpulan kecil percakapan berulang:
Beri nilai pada setiap pengujian berdasarkan cakupan yang dimaksudkan: pengambilan data yang benar, penggantian informasi lama yang tepat, pemisahan antara fakta adegan dan fakta umum, serta penanganan ketidakpastian yang jujur. Sertakan kasus-kasus di mana jawaban yang diharapkan adalah meminta klarifikasi. Sistem yang secara andal menolak untuk menebak ketika catatan yang disimpan ambigu menangani kasus tersebut dengan lebih baik daripada sistem yang mengarang kesinambungan.
Jalur yang andal dari koreksi ke pengingatan kembali
Koreksi harus melalui jalur yang jelas: mengidentifikasi subjeknya, mempertahankan cakupannya, memperbarui memori yang bertentangan, menampilkan perubahan yang disimpan, dan memverifikasi bahwa respons berikutnya mengambilnya kembali tanpa memperluasnya menjadi riwayat yang tidak berdasar. Urutan tersebut memberi obrolan karakter cara praktis untuk tetap konsisten di berbagai giliran dan sesi sembari menyerahkan kendali dunia fiksi kepada pengguna. Penelitian mendukung pentingnya pembaruan memori dan pelacakan status secara serius; alur kerja spesifik di sini merupakan rekomendasi desain, dan perilakunya harus diperiksa langsung pada produk tempat alur ini akan digunakan.
