AI 캐릭터는 사람처럼 "잊은" 게 아니다. (a) 응답을 생성한 시점에 그 정보가 컨텍스트 윈도우에 없었거나, (b) 윈도우 안에 있었지만 손을 뻗지 않았거나—둘 중 하나다. 다른 문제는 다른 대처가 필요하다.
이 글은 Reverie 기억이 실제로 어떻게 동작하는지, 긴 아크에서 무엇이 살아남고 무엇이 사라지는지, 사용자/크리에이터로서 무엇을 할 수 있는지에 대한 쉬운 설명이다.
기억의 세 층
Reverie의 캐릭터 기억은 단일 양동이가 아니다. 다층 구조고, 층마다 동작이 다르다:
대화 컨텍스트 - 응답 생성 시 모델이 직접 볼 수 있는 최근 메시지들. 토큰 예산 상한이 있다. 오래된 것부터 떨어져 나간다.
대화 요약 - 스레드가 길어지면 시스템이 오래된 부분을 압축한 서술 요약을 쓰고, 전체 원문 대신 요약을 컨텍스트에 넣는다. 스토리라인은 잃지 않지만 원문 한 자 한 자는 잃는다.
장기 기억 - 세션을 넘어 지속되는 당신과 관계에 대한 견고한 사실들: 이름, 핵심 개인 정보, 선호, 중요한 사건, 관계의 이정표.
3주 후에 캐릭터가 "당신 생일을 기억한다"면 그건 장기 기억. 이번 세션 안에서 일찍 있었던 다툼은 이야기할 수 있지만 정확한 대사는 인용 못 한다면 그건 요약이 일하는 모습이다.
자동으로 기억되는 것
Reverie는 장기 기억 항목을 스스로 만든다. 흔한 것들은 아무것도 안 해도 남는다:
개인 정보 - 이름, (언급했다면) 나이, 산다고 말한 곳, 직업.
선호 - 대화 세계 안의 것이든 캐릭터에 대한 것이든, 좋아한다/싫어한다고 말한 것.
관계 이정표 - 첫 키스, 다툼, 화해, 고백.
캐릭터 자신의 성장 - 당신이 확립한 캐릭터 상태의 변화(취직, 금주, 마침내 어머니에게 전화).
이 항목들을 둘러보고, 편집하고, 삭제할 수 있다. 대부분의 사용자가 한 번도 열지 않은, 가장 큰 ROI의 기능이다. 캐릭터가 "이름을 자꾸 틀린다", "헤어진 걸 잊었다"면, 대화에서 다시 설명하지 말고 1분이면 직접 기억 항목을 편집해서 고칠 수 있다.
자동 요약이 보존하는 것, 희생하는 것
대화가 Reverie의 메시지/토큰 임계를 넘으면 시스템이 오래된 부분을 서술 요약으로 쓴다. 요약이 보존하도록 설계된 것:
관계의 현재 상태.
감정의 역학("X에 대해 아직 화나 있다").
열려 있는 계획, 풀리지 않은 실들.
:
관련 게시물
희생하도록 설계된 것
원문 한 자 한 자. 200메시지 전 당신의 대사를 인용하지 않는다.
정확한 날짜, 구체적 숫자, 세세한 논리 디테일.
지나가며 언급한 조연.
실용적 함의: 어떤 대사·약속·디테일이 나중 전개에 중요하다면 요약에 맡기지 마라. 직접 장기 기억 항목으로 고정해라. 30초 작업이 이후 50메시지의 연속성을 사준다.
전역 기억 vs 캐릭터별 기억
Reverie에는 두 가지 범위가 있다:
캐릭터 기억 - 이 캐릭터가 당신에 대해 아는 것. 기본값.
전역 기억 - 당신이 상호작용하는 모든 캐릭터에 적용되는 사실("they/them을 쓴다", "해산물 알레르기", "소설 쓰는 중" 등).
전역 기억은 "어떤 캐릭터를 열었는가"에 의존해선 안 되는 사실용이다. 절제해서, 당신에 관한 것, 특정 관계에 관한 게 아닌 것만 넣어라. "4장에서 키스했다"를 전역에 넣지 마라—그건 캐릭터별, 아크별 사항이다.
페르소나는 당신이 누구인지를 바꾸지, 기억을 바꾸지 않는다
Reverie의 기능이 정하는 것은 캐릭터가 누구와 이야기한다고 여기는지다—이름, 배경, 장면 속 당신의 역할. 페르소나를 바꾸면 그 메시지부터 캐릭터가 당신을 다르게 읽는다.
페르소나가 하지 않는 일은 기억을 쪼개는 것이다. 범위는 둘뿐이다—이 캐릭터, 그리고 전역. "바텐더 미라"로 한 아크를, "선장 은"으로 SF RP를 같은 캐릭터와 돌려도 두 아크는 같은 기억 항목을 끌어다 쓴다.
페르소나로 두 이야기를 갈라 두려 한다면 알아 둘 점이다. 한 아크에만 속하는 것은 그 페르소나 설명에 넣어라. 거기서는 기록된 사실이 아니라 당신이 누구인지의 일부다. 한 아크의 항목이 자꾸 다른 쪽으로 새어 나오면 해결책은 기억 패널이다—아니면 캐릭터를 따로 두는 것. 자기만의 양동이를 갖는 건 그쪽이다.
포크는 대화를 가르지, 기억을 가르지 않는다
하면 새 분기는 포크 지점까지의 복사본으로 시작해 거기서부터 제 길을 간다. 갈라지는 건 대화고, 기억은 갈라지지 않는다. 기억은 당신과 캐릭터의 것이지 스레드의 것이 아니다—두 분기가 같은 항목을 읽고 같은 항목에 쓴다. 대안 장면에서 캐릭터가 적어 둔 것은 원본 분기도 안다.
그러니 포크는 장면의 샌드박스지 사실의 샌드박스가 아니다. 실험의 흔적을 정말 남기고 싶지 않다면, 끝난 뒤 기억 패널을 열고 가져가고 싶지 않은 것을 지워라.
무언가가 확실히 기억되게 하려면
어떤 순간이 정말 중요하다면 네 가지를 겹쳐서 확률을 올려라:
다음 몇 턴 안에 다시 참조한다. 최신성으로 원시 컨텍스트에 더 오래 남고, 요약기가 가중치를 줄 가능성이 커진다.
당신의 말로 캐릭터에게 되돌려준다. "그러니까 돌아온다는 말, 진심이었던 거지." 이제 당신 메시지에 등장하므로 놓치기 어렵다.
수동으로 기억 항목으로 고정. 기억 관리 패널을 열고 한 줄 추가. 이게 견고한 해결이다.
크리에이터: 시나리오 또는 영속 컨텍스트에 적기. (.) 시나리오에 적힌 것은 영원히 존재한다—기억이 아니라 캐릭터의 일부다.
무언가가 기억되지 않게 하려면
반대편도 똑같이 중요하다. 캐릭터가 묻고 싶은 일을 자꾸 꺼낼 때.
해당 기억 항목을 편집한다. 직접 해결.
다시 언급하지 않는다. 부정도 참조로 계산되어 요약기가 가중치를 준다.
일회성 실험은 포크, 그다음 패널 확인. 분기는 장면을 본 줄기 밖에 두지만 기억은 분기 사이에 공유된다. 거기서 기록된 것은 손으로 지워야 한다.
기억의 흔한 실수
고정하는 대신 반복한다. 같은 사실을 세 번 상기시켰다면, 문제는 "더 세게 상기시키기"가 아니라 "그 사실이 장기 기억에 도달하지 못했다"는 것. 패널을 열어라.
AI가 당신이 아는 것을 안다고 가정한다. 모델은 마음을 읽지 못하고, 당신이 안 쓴 건 보지 못한다. 화면 밖에서 일어난 배경은 직접 기억 항목으로 적어라.
"잊었다"와 "표류"의 혼동. 긴 아크에서 캐릭터가 천천히 목소리와 입장을 옮길 수 있다. 그건 보통 기억 상실이 아니라 더 긴 요약 전체에서 모델이 평균화하는 것. 온도를 낮추거나, 대화에서 캐릭터에게 입장을 다시 한 번 말하게 한다.
플롯을 전역 기억에 둔다. 플롯은 캐릭터별. 전역은 당신의 것이다.
Reverie의 다른 기능과 조합
- 실험적 장면을 위한 별도 타임라인. 기억은 공유된 채로.
- 절대로 잊혀선 안 되는 것은 여기에. 대화에 넣지 마라.
- 캐릭터가 누구와 이야기한다고 여길지 정한다.
잘 쓴 캐릭터 - 명확한 목소리와 명시적인 "안 함" 목록을 가진 캐릭터()는 평균화될 모호함이 적어 덜 표류한다.
멘탈 모델
"AI가 기억하느냐"는 생각을 그만둬라. 대신: 이 캐릭터는 지금 눈앞에 무엇을 두고 있고, 세션 사이에 우리에 대한 어떤 사실을 옮기고 있는가?
전자는 유한하고 굴러간다. 후자는 편집 가능하지만 대부분 만진 적이 없다.
두 가지 차이를 이해하는 데 쓰는 1시간이, 당신의 긴 아크가 무너지지 않게 만드는 1시간이다.
역동적인 AI 대화를 경험할 준비가 되셨나요?
이미 Reverie에서 무한한 개성과 매력적인 상호작용을 탐색하고 있는 수천 명의 사용자들과 함께하세요.