8. Recall — AI 가 맥락을 가져오는 방식
8.1 한 줄 정의
recall(query, mode, scope, max_tokens) — 사용자의 워크스페이스에서 블록 단위로 매칭 해서, 토큰 예산 안에 가장 관련 있는 블록 + 그 인접 블록 을 묶어 돌려주는 도구. v3 의 핵심 retrieval 채널.
8.2 응답 모드 (token budget)
| mode | 토큰 / hit | 용도 |
|---|---|---|
titles |
~30 | "이 토픽 워크스페이스에 있나" 싸게 probe |
summary |
~150 | 대화에 짧게 인용 |
blocks (default) |
가변 | 매칭 블록 + 인접 블록 — 일반 답변용 |
full |
큼 | 전체 본문 — 사실 검증, 긴 노트 재작성용. 자주 쓰지 말 것 |
8.3 Scope (v3.0 Phase 3)
scope: 'pages'— 페이지(notes)만 검색.scope: 'raws'— 원본(raw_items)만 검색.scope: 'both'(default) — 둘 다. 결과는kind: 'page' | 'raw'로 구분되어 옵니다.
원본은 보통 사용자가 직접 안 봅니다. AI 가 분기 전 원본을 다시 확인 하고 싶을 때만 raws 또는 both 로 부릅니다.
8.4 Hop expansion (그래프 따라가기)
Top hit 의 멘션 칩을 따라 부모/자식/백링크 페이지가 추가로 끌려옵니다. 이게 임베딩 없이도 의미적으로 가까운 페이지를 가져오는 메커니즘. Hop 은 페이지 간에서만 동작합니다 — 원본은 칩이 거의 없으니까.
8.5 mention_md 자동 첨부
모든 hit 에 mention_md 가 따라옵니다. AI 가 페이지 본문을 작성하면서 방금 발견한 페이지를 인용 하려면 그 문자열을 그대로 붙이면 됩니다. UUID 를 손으로 만들지 않습니다.
8.6 사용 패턴 (시스템 프롬프트 권장)
- 사용자가 과거 맥락 을 언급하면 →
recall(query, mode='blocks', max_tokens=8000). - 페이지를 새로 작성하기 직전 →
recall(query=concept names, mode='titles')로 멘션 박을 페이지를 찾기. - 같은 대화 안에서 같은 토픽으로 두 번 부르지 말 것 — 첫 결과를 컨텍스트에 살려두세요.