지식 소스: Retrieval 에이전트와 Router 에이전트
Knowledge Retrieval(지식 검색)과 Knowledge Router(지식 라우터)는 장면에 필요할 때만 로어북의 사실을 채팅으로 끌어옵니다. 모든 세부 설정을 매번 프롬프트에 넣지 않아도 됩니다. 두 에이전트는 Roleplay 채팅에서만 작동하며, 둘 다 기본으로 꺼져 있습니다.
사용하는 이유
로어북은 세계관이나 캐릭터에 관한 메모 묶음입니다. 메모 하나하나를 항목이라고 합니다. 매 턴 모든 항목을 보내면 토큰(모델이 읽고 비용이 매겨지는 작은 텍스트 조각)이 낭비되고 AI가 헷갈릴 수도 있습니다.
이 에이전트들은 검색 증강 생성(RAG, retrieval-augmented generation)을 사용합니다. Marinara가 지금 장면에 맞는 항목을 찾아 그 턴의 프롬프트에 그 항목만 덧붙입니다.
Retrieval과 Router 중 고르기
| 질문 | Knowledge Retrieval | Knowledge Router |
| 내용을 넣는 방식 | 소스를 먼저 요약합니다 | 고른 항목을 글자 그대로 넣습니다 |
| 턴당 비용 | 높음 | 낮음 |
| 업로드한 파일 읽기 | 가능 | 불가능 |
| 어울리는 용도 | 작은 소스, 또는 깔끔한 요약 | 항목 설명이 잘 적힌 대형 로어북 |
- Knowledge Retrieval은 선택한 로어북에서 활성화된 모든 항목과 업로드한 파일을 읽고, 최근 메시지에 맞는 사실을 요약해 달라고 AI에 요청합니다. AI가 원본 텍스트를 모두 읽기 때문에 비용이 더 듭니다.
- Knowledge Router는 항목을 모은 작은 목록을 만듭니다. 목록의 한 줄에는 ID, 이름, 키워드 몇 개, 짧은 요약이 들어갑니다. AI가 이 목록에서 항목을 고르면 Marinara가 그 항목을 전부 넣습니다. AI가 모든 항목을 읽지는 않으므로 로어북이 커도 라우터는 저렴하게 유지됩니다.
두 에이전트를 한 채팅에 함께 추가할 수도 있지만, 내용이 겹치고 비용이 올라갑니다. 둘 다 설정하면 에이전트 편집기가 경고를 표시합니다. 하나만 고르세요.
채팅에 Knowledge 에이전트 추가하기
시작하기 전에: Agent Organizer에서 에이전트를 설치하세요. 에이전트: 채팅을 도와주는 AI를 참고하세요.
- Roleplay 채팅에서 Chat Settings(채팅 설정)를 여세요.
- Agents(에이전트) 섹션을 찾아 Enable Agents(에이전트 활성화)를 켜세요.
- Add Agent(에이전트 추가)를 클릭하세요.
- Writer Agents(작성 에이전트) 그룹을 열고 Knowledge Retrieval 또는 Knowledge Router를 고르세요.
- 설정 창에서 소스를 고르세요(아래 참고).
그러면 Agents에 에이전트의 설정 카드가 나타나고, 새 턴마다 에이전트가 실행됩니다. Knowledge Retrieval이 작업하는 동안 진행 표시에 Retrieving knowledge...가 나타날 수 있습니다.
참고: 이 에이전트들은 새 턴에서만 실행됩니다. 답변을 재생성할 때는 다시 실행되지 않습니다.
소스 고르기
두 에이전트는 같은 소스 컨트롤을 사용합니다.
- Use chat-active lorebooks(채팅 활성 로어북 사용)는 기본으로 켜져 있습니다. 에이전트 편집기에서는 같은 토글을 Use this chat's active lorebooks(이 채팅의 활성 로어북 사용)라고 부릅니다. 이 토글이 켜져 있고 고정 로어북을 하나도 고르지 않으면, 에이전트는 현재 채팅에서 활성화된 로어북을 읽습니다.
- Fixed source override(고정 소스 설정)는 에이전트가 고른 로어북만 읽도록 고정합니다. 설정 창에서는 같은 항목이 Fixed Source Lorebooks(고정 소스 로어북)로 표시됩니다. 고정 선택은 이 에이전트를 쓰는 모든 채팅에서 채팅 활성 로어북보다 항상 우선합니다.
에이전트 하나가 항상 같은 참고용 로어북을 읽어야 한다면 고정 소스를 쓰세요. 채팅이 쓰는 로어북을 그대로 따르게 하려면 토글을 켜 두고 고정 선택은 비워 두세요.
파일 업로드하기(Knowledge Retrieval 전용)
Knowledge Retrieval 설정에서 Upload file(파일 업로드)을 클릭하세요. 업로드한 파일은 Knowledge Retrieval을 쓰는 모든 채팅에서 사용할 수 있습니다.
지원하는 형식은 .txt, .md, .csv, .json, .xml, .html, .htm, .log, .yaml, .yml, .tsv, .pdf입니다. 다른 형식은 파일 선택 창에서 막습니다. 파일마다 이름과 크기, 삭제 버튼이 표시됩니다.
- PDF를 뺀 모든 파일은 일반 텍스트로 읽습니다. 확장자만
.txt로 바꾼 이미지처럼 텍스트가 아닌 파일도 업로드는 되지만, 읽을 수 없는 내용이 들어갑니다. - 스캔한 PDF나 이미지만 담긴 PDF에는 텍스트 층이 없습니다. 에이전트는 내용 대신 자리 표시자를 넣습니다. 텍스트를 선택할 수 있는 PDF를 사용하세요.
좋은 항목 설명 쓰기
이 부분은 항목을 Description(설명)으로 고르는 Knowledge Router에서 가장 중요합니다.
- 로어북 편집기에서 항목을 여세요.
- Description에 항목이 다루는 내용을 짧고 구체적으로 요약해 적으세요.
라우터는 설명을 항목을 고르는 데만 씁니다. 이야기 내용으로 메인 AI에 전달되지는 않습니다. 설명이 없으면 라우터는 항목 내용의 앞부분을 대신 쓰며, 이 방식은 정확도가 떨어집니다.
라우터의 소스 로어북을 고르면 Fixed source override 옆에 75% described (9/12) 같은 커버리지 배지가 나타납니다. 점의 색은 75% 이상이면 초록색, 25%에서 74%까지는 주황색, 25% 미만이면 빨간색입니다. 빈 로어북에는 No entries yet(항목 없음)이 표시됩니다. 초록색을 목표로 하세요.
선택 사항: 의미로 후보 추리기
Knowledge Router는 키워드뿐 아니라 의미로도 후보 항목을 찾을 수 있습니다. 여기에는 임베더가 쓰입니다. 임베더는 글을 숫자로 바꿔 Marinara가 의미를 비교할 수 있게 하는 작은 모델입니다. 임베더가 없어도 라우터는 작동합니다.
- 로어북 편집기를 열고 Semantic search (embeddings)(시맨틱 검색)를 찾으세요.
- 임베딩 모델이 있는 계정을 고르세요. Connections → Defaults(연결 → 기본값)에서 Embeddings(임베딩) 기본값을 정해 두었다면, 이전에 다른 소스를 고르지 않은 한 그 기본값이 자동으로 선택됩니다.
- 채팅 계정과 같은 임베딩 소스를 쓰세요. 크기가 다른 벡터는 건너뜁니다.
- 벡터화 버튼을 클릭하세요. 버튼에는 아직 벡터가 필요한 항목 수가 표시됩니다. Re-vectorize all(모두 재벡터화)은 모든 항목을 다시 처리합니다.
로어북에 벡터가 없거나 쓸 수 있는 임베더가 없으면, 라우터는 키워드만으로 후보 목록을 만듭니다. 문제가 생기지는 않습니다. 로어북 시맨틱 검색을 참고하세요.
관련 가이드
- 로어북 시맨틱 검색
- 로어북 개요
- 에이전트: 채팅을 도와주는 AI