로어북 항목: 키, 위치, 타이밍

항목은 로어북에 담긴 사실 하나와, Marinara가 그 사실을 프롬프트에 넣을 시점을 정하는 규칙으로 이루어집니다. 이 가이드에서는 항목을 추가하는 방법, 키와 항목 유형을 고르는 방법, 항목이 들어갈 자리를 정하는 방법, 타이밍을 설명합니다.

시작하기 전에: 로어북을 만들고 여세요. 로어북 개요를 참고하세요.

Entries 탭

Lorebooks(로어북) 패널에서 로어북을 여세요. 편집기에는 Overview(개요)와 Entries(항목) 두 탭이 있습니다. Entries를 클릭하면 목록이 보입니다. 탭의 배지는 항목 수를 나타냅니다.

도구 모음에는 다음 컨트롤이 있습니다.

도구 모음 아래 줄에는 항목 수, 폴더 수, 전체 항목 내용의 예상 토큰 합계가 표시됩니다.

항목 추가와 편집

  1. Add Entry를 클릭하세요. 새 행이 나타납니다.
  2. 행에 이름을 입력하세요. 모든 항목에는 이름이 필요합니다. 이름은 AI가 아니라 직접 찾아볼 때와 검색을 위한 것입니다.
  3. 행이나 행의 화살표를 클릭하세요. 행 아래에 모든 필드가 담긴 패널이 열립니다.
  4. Primary Keys(주요 키워드)에 키를 입력하고 <kbd>Enter</kbd>를 누르세요. 그런 다음 Content(내용)에 AI에게 보낼 글을 쓰세요. 내용과 키를 참고하세요.

편집한 내용은 자동으로 저장됩니다. 드로어에 Autosaving…, Saving…, Saved automatically가 차례로 표시됩니다. 저장에 실패해도 입력한 글은 그대로 남고, 다음에 편집할 때 Marinara가 다시 시도합니다.

항목을 복사하려면 행의 Duplicate entry(항목 복제)를 클릭하세요. 삭제하려면 Delete entry(항목 삭제)를 클릭하고 확인하세요. 컴퓨터에서는 행 위에 마우스를 올리면 이 버튼이 나타납니다.

내용과 키

필드설명
Primary Keys항목을 작동시키는 단어입니다. 키를 입력하고 <kbd>Enter</kbd>를 누르면 추가됩니다. Normal 항목은 키 하나만 일치해도 활성화됩니다.
ContentAI에 보내는 글입니다. 사실을 있는 그대로 쓰세요. 매크로를 쓸 수 있고, 입력란 아래에 토큰 추정치가 표시됩니다.
Secondary Keys(보조 키워드)Selective 항목에서만 쓰는 추가 키입니다.
Description(설명)Knowledge Router 에이전트만 읽는 짧은 요약입니다. 메인 모델에는 절대 전송되지 않습니다. 지식 소스를 참고하세요.

키가 10개를 넘으면 처음 10개만 표시됩니다. 나머지를 보려면 Show N more(N개 더 보기)를 클릭하고, 다시 숨기려면 Collapse(접기)를 클릭하세요. 숨겨진 키도 그대로 일치 여부를 검사합니다.

예를 들어 이름이 Silverhaven이고 키가 Silverhaven과 the capital이며 내용이 Silverhaven is the mountain capital. Its people mine blue crystal and distrust outsiders.인 항목은, 최근 채팅에 두 키 중 하나가 나올 때마다 AI에 전달됩니다.

일치 규칙

기본적으로 키는 최근 채팅 어디에든 나오면 일치하며, 대소문자는 구분하지 않습니다. 이 동작을 바꾸는 컨트롤은 세 가지입니다.

Regex는 정규식을 알 때만 쓰세요. 각 패턴은 짧은 시간 제한 안에서 실행되고, 너무 오래 걸리는 패턴은 일치하지 않은 것으로 처리되므로 패턴은 단순하게 유지하세요. 예를 들어 \bVlad(?:'s)?\b는 "Vlad"와 "Vlad's"에 일치합니다.

항목 유형 고르기

행의 색점을 클릭하면 유형 메뉴가 열립니다.

Constant 항목은 메시지마다 토큰을 쓰므로 개수를 적게 유지하세요.

Selective 항목에는 Secondary Keys를 추가하고 Logic(논리) 버튼을 고르세요.

논리항목이 작동하는 경우
AND Any보조 키워드 중 하나 이상도 함께 나올 때.
AND All모든 보조 키워드가 함께 나올 때.
NOT Any보조 키워드가 하나도 나오지 않을 때.
NOT All보조 키워드가 한꺼번에 모두 나오지는 않을 때.

예를 들어 주요 키워드가 king, 보조 키워드가 Silverhaven이고 AND Any인 항목은 채팅에 둘 다 언급될 때만 작동합니다.

작동하지 않는 경우: 키가 없는 Normal 항목은 일치할 대상이 없습니다. 키를 추가하거나 Constant로 만드세요. 키가 없는 항목도 의미로 찾을 수는 있지만, 시맨틱 검색이 완전히 설정되어 있을 때만 가능합니다.

위치, 깊이, 순서

이 컨트롤은 활성화된 항목이 프롬프트의 어디에 들어갈지 정합니다. 넓은 화면에서는 간략한 행에 있습니다. 좁은 화면에서는 행의 Entry quick controls(항목 빠른 제어) 버튼을 누르세요.

컨트롤하는 일
Position(위치)항목이 들어갈 자리입니다. 기본값은 Before character definitions(캐릭터 정의 전)입니다.
Before character definitions프롬프트에서 캐릭터 카드 앞입니다. 행 라벨은 ↑Char입니다.
After character definitions(캐릭터 정의 후)캐릭터 카드 뒤입니다. 행 라벨은 ↓Char입니다.
@ Depth(@ 깊이)채팅 기록 안쪽입니다. 행 라벨은 @Depth입니다.
Outlet(아웃렛)자동으로는 어디에도 들어가지 않습니다(아래 참고).
Depth(깊이)@ Depth일 때만 표시됩니다. 가장 최근 메시지에서 몇 개 거슬러 올라간 자리에 항목을 둘지 정합니다. 기본값은 4입니다.
Order여러 항목이 활성화될 때의 순서입니다. 숫자가 작을수록 먼저 들어가고, 예산이 빠듯할 때 잘려 나가지 않습니다. 기본값은 100입니다.

Role(역할)은 빠른 제어가 아니라 펼친 항목 패널에 있습니다. 주입되는 글에 System, User, Assistant 중 하나를 붙이며, @ Depth에서만 의미가 있고 기본값은 System입니다.

항목에 꼭 필요한 경우가 아니면 이 값들은 기본값으로 두세요. @ Depth는 아껴 쓰세요. 글이 최근 메시지 사이에 끼어든 말처럼 들어가므로, 모델이 자꾸 잊는 규칙이나 방금 바뀐 사실에만 쓰세요. 예를 들어 "이제 여관에 불이 났다."를 @ Depth 1에 둡니다.

Outlet

Outlet 항목은 매크로를 넣은 자리에만 나타납니다.

  1. Position을 Outlet으로 설정하세요. Outlet name(아웃렛 이름) 입력란이 나타납니다.
  2. character_rules처럼 대소문자까지 정확한 이름을 입력하세요.
  3. 프리셋의 프롬프트 섹션에 {{outlet::character_rules}}를 넣으세요.

이름이 같은 항목은 Order 순서대로 이어지고, 줄바꿈으로 구분됩니다. Outlet 매크로는 Conversation(대화), Roleplay(롤플레이), Game(게임) 채팅의 프롬프트 섹션에서 작동합니다. 이번 답변에서 활성화된 항목만 나타납니다. 이 항목도 키, 확률, 필터, 타이밍, Entry Limit(항목 제한), Token Budget(토큰 예산)을 그대로 따릅니다. 활성화된 항목이 없으면 매크로는 아무것도 추가하지 않습니다. Outlet 항목은 다른 Outlet 매크로를 호출할 수 없습니다. 이 매크로는 매크로를 참고하세요.

확률과 타이밍

Probability(확률)는 키가 일치했을 때 항목이 작동할 확률입니다. 기본값은 100%입니다. 25%로 설정하면 매번 네 번에 한 번꼴로 작동합니다.

Timing(타이밍) 필드는 여러 메시지에 걸친 동작을 정합니다. 네 필드 모두 처음에는 설정되어 있지 않으며, 이는 꺼짐을 뜻합니다.

필드하는 일예시
Sticky(유지)항목이 작동한 뒤, 키가 일치하지 않아도 이 메시지 수만큼 더 활성 상태를 유지합니다.드러난 비밀을 3으로 두면 메시지 3개 동안 남습니다.
Cooldown(쿨다운)작동한 뒤 이 메시지 수만큼 기다려야 다시 작동할 수 있습니다.전조를 5로 두면 많아야 메시지 5개에 한 번 작동합니다.
Delay(딜레이)채팅이 이 메시지 수만큼 진행되기 전에는 작동할 수 없습니다.반전을 20으로 두면 처음에는 숨겨져 있습니다.
Ephemeral(자동 비활성화)이 횟수만큼 활성화되면 스스로 꺼집니다. 0은 제한 없음을 뜻합니다.도입부 메모를 1로 두면 한 번만 작동합니다.

Sticky, Cooldown, Delay는 메시지 수를 셉니다. Ephemeral은 활성화 횟수를 셉니다.

Decision 활성화

Decision(결정) 필드를 쓰면 예/아니요 질문에 답하는 작은 모델인 Decision 모델이 항목의 적용 여부를 판단합니다. In the latest message, a dragon is physically present처럼 최근 채팅에 관한 문장을 쓰고 모드를 고르세요.

모드효과
Off(사용 안 함)항목이 평소대로 활성화됩니다. 기본값입니다.
Require(필수)항목이 평소대로 활성화되되, 문장도 참일 때만 활성화됩니다. 스쳐 가는 언급을 걸러 냅니다.
Trigger(트리거)문장이 항목을 활성화하는 또 다른 경로가 되어, 키가 없어도 활성화할 수 있습니다. 바꿔 말한 표현과 상황을 잡아냅니다.

문장에는 {{user}}, {{char}} 같은 매크로를 쓸 수 있습니다.

시작하기 전에: Connections(연결) 패널의 Decision model(결정 모델)에서 Decision 모델을 고르세요. Decision 모델이 없거나 답이 없으면 문장은 아니요로 처리됩니다. 설정된 모델이 없으면 편집기가 경고합니다.

중요한 항목에는 일반 경로도 주고, Require는 선택적인 로어를 거르는 데만 쓰세요.

Require는 키, 의미 일치, Constant, 지도 장소로 이미 자격을 갖춘 항목만 확인하고, 문장까지 참일 때만 통과시킵니다. Constant 항목에 쓰면 항목이 상황에 따라 들어가게 됩니다. 예를 들어 전투 규칙에 A fight is happening in the latest message를 씁니다. 쓰지 않는 항목을 모두 스캔하지는 않습니다.

판정문은 모델 요청을 늘리고 Decision statements per turn(턴당 판단문 수) 제한을 함께 씁니다. 표현 요령, 제한, 비용, 답 재사용은 판정문 작성하기, 제한과 비용, 답 재사용을 참고하세요. 모델 설정은 Decision 모델을 참고하세요.

세부 사항은 다음과 같습니다.

그룹, 필터와 기타 옵션

펼친 드로어에는 필드가 더 있습니다.

필드하는 일
Group(그룹)같은 그룹의 항목은 서로 배타적입니다. 답변마다 하나만 활성화됩니다. "오늘 날씨" 항목 세 개처럼 대안끼리 묶을 때 쓰세요. 낮은 Probability와 함께 쓰면 소문이 가끔씩만 나옵니다.
Tag(태그)직접 정리하려고 붙이는 자유 텍스트 라벨입니다. 활성화에는 영향을 주지 않습니다.
Locked(보호)Lorebook Keeper 에이전트가 이 항목을 바꾸지 못하게 합니다. 다운로드 가능한 에이전트 레퍼런스를 참고하세요.
No Vector(벡터 없음)항목을 시맨틱 검색에서 뺍니다. 로어북 시맨틱 검색을 참고하세요.
Recursion(재귀)이 항목의 내용이 다른 항목을 작동시킬 수 있게 합니다. 기본값은 꺼짐입니다. 로어북 토큰 예산과 재귀를 참고하세요.

Context filters & matching sources(컨텍스트 필터 및 일치 소스) 섹션은 항목을 특정 캐릭터, 캐릭터 태그, 생성 유형으로 제한합니다. 캐릭터 설명 같은 추가 카드 필드에서도 항목의 키를 찾게 할 수 있습니다. Individual(개별) 모드의 그룹 채팅에서는 답변마다 그 답변을 쓰는 캐릭터만 따지므로, 캐릭터 필터를 걸면 다른 캐릭터의 답변에는 항목이 들어가지 않습니다. Merged (Narrator)(병합, 나레이터) 답변에서는 채팅에 있는 모든 캐릭터를 따지므로, 필터를 건 캐릭터 중 하나라도 채팅에 있으면 항목이 들어갑니다. 한 캐릭터만 아는 비밀에 쓰세요.

사실에 맞는 설정 고르기

AI가 그 사실을 언제 봐야 하는지 먼저 생각한 다음, 이 표를 참고하세요.

사실설정
항상 참인 사실Constant. 개수는 적게 유지하세요.
이름이 나올 때만 필요한 사실Castle Dracul, the castle, the fortress처럼 구체적인 키를 넣은 Normal.
키가 king이나 home 같은 흔한 단어인 사실Whole Words, 또는 보조 키워드를 넣은 Selective.
중요하지만 이름이 불리는 일은 드문 사실시맨틱 검색을 쓰는 Normal, 또는 더 넓은 키.
함께 나오면 안 되는 여러 버전같은 Group.
모델이 장면 도중에 잊는 규칙1에서 4 정도의 @ Depth.

로어북을 작게 유지하는 습관은 다음과 같습니다.

예를 들어 AI가 잊기 쉬운, 악당을 죽이는 방법에 관한 규칙을 생각해 보세요. 이 항목을 AND Any를 쓰는 Selective로 만들고, Whole Words를 켜고, Order를 10으로 두세요. 주요 키워드는 weakness, kill, destroy, stake, 보조 키워드는 Vlad, the count입니다. 보조 키워드 덕분에 파티가 늑대를 잡을 때는 항목이 조용히 있습니다. Whole Words는 stake가 "mistake"에 일치하지 않게 막습니다. 순서 값이 작으므로 항목이 많이 몰린 장면에서도 잘려 나가지 않습니다.

로어북이 어디에 있느냐에 따라 어떤 채팅에서 볼 수 있는지가 정해집니다. 전역, 연결, 내장 로어북은 로어북 개요와 로어북을 캐릭터와 페르소나에 연결하기를 참고하세요.

항목 내용에서 매크로 쓰기

Content는 전송되기 전에 다른 프롬프트 텍스트처럼 펼쳐집니다. 쓸모 있는 매크로는 다음과 같습니다.

전체 목록은 프롬프트 매크로를 참고하세요.

Recursive(재귀 활성화)를 켜면 Marinara가 활성화된 항목의 펼쳐진 내용을 다시 스캔합니다. 매크로가 만들어 낸 글이 다른 항목을 작동시킬 수 있습니다.

Keyword test 도구

Entries 탭 위쪽의 Keyword test(키워드 테스트) 패널을 쓰면 채팅 없이 키를 확인할 수 있습니다.

  1. Keyword test를 펼치세요.
  2. 입력란에 예시 문단이나 메시지 몇 개를 붙여넣으세요.

일치할 항목에는 초록색 강조와 Would activate(활성화 예정) 칩이 붙습니다. Constant 항목에는 Always active(항상 활성화) 칩이 붙습니다. 개수 줄에는 켜진 항목 중 몇 개가 활성화될지 표시됩니다. Include other lorebooks(다른 로어북 포함) 스위치를 켜면 다른 로어북의 켜진 항목도 확인합니다.

이 테스트는 타이밍, 확률, 캐릭터 필터와 페르소나 필터, 의미 기반 일치를 무시하므로 실제 채팅에서는 결과가 다를 수 있습니다.

항목 폴더

폴더는 로어북 하나 안에서 항목을 묶습니다. Lorebooks 패널의 라이브러리 폴더와는 별개입니다.

폴더가 묶음으로 표시되는 것은 검색 없이 Order로 정렬했을 때뿐입니다. 그 밖의 경우에는 평평한 목록과 함께 Folder view paused (clear search and sort by Order)(폴더 보기가 일시 중지됨(검색을 지우고 순서를 기준으로 정렬하세요)) 안내가 표시됩니다.

문제 해결

증상해결 방법
항목이 아예 작동하지 않습니다.키를 붙이거나 Constant로 만드세요. 로어북이 켜져 있고 그 채팅에서 활성 상태인지 확인하세요.
키가 작동하다가 멈췄습니다.Marinara는 마지막 몇 개의 메시지만 스캔합니다. 이 범위가 Scan Depth(깊이 스캔)이며 기본값은 2입니다. Scan Depth를 올리거나, Sticky를 넣거나, 항목을 Constant로 만드세요.
항목이 엉뚱한 장면에서 작동합니다.Whole Words, Selective 보조 키워드, 또는 캐릭터 필터를 쓰세요.
중요한 로어가 빠집니다.더 작은 Order를 주거나 Token Budget을 올리세요. Chat Settings(채팅 설정)의 Active Context(활성 컨텍스트)에서 무엇이 왜 빠졌는지 볼 수 있습니다. 로어북 토큰 예산과 재귀를 참고하세요.
AI가 항목을 무시합니다.Active Context에서 항목이 활성화되었는지 확인하세요. 가장 최근 메시지에서 멀리 떨어진 사실은 @ Depth로 가장 최근 메시지 가까이에 둔 사실보다 힘이 약합니다.

관련 가이드