LLM Wiki 기반 텔레그램 봇 비서
1. 개요
인터넷에 이미 공개된 지식이 아니라, 진짜 내 지식을 기반으로 한 세컨드 브레인을 만들고 싶었다.
생각의 흐름은 이랬다.
- LLM으로 대화하는 비서 챗봇을 만든다
- 챗봇과 나눈 대화 내용을 일기로 남긴다
- 쌓인 대화와 일기로 지식을 축적한다
- 축적된 지식을 RAG로 만들어 LLM이 검색해서 답할 수 있게 한다
“대화 → 기록 → 지식화 → 검색”으로 이어지는 개인용 지식 파이프라인을 만드는 게 목표였다.
2. 사전조사
비슷한 컨셉의 프로젝트가 있는지 찾아봤지만, 정확히 같은 방향의 프로젝트는 찾지 못했다.
- 단순히 일기를 작성해주는 봇 정도는 있었음
- 그나마 방향이 비슷했던 건 Genspark의 SecondBrain Note
참고할 만한 선례가 마땅치 않아서, 구조는 직접 설계하며 만들어야 했다.
3. 구성
- 텔레그램 ↔ 봇 서버: 사용자와의 대화 창구. 명령어 처리와 대화 흐름을 담당
- 봇 서버 ↔ LLM: 사용자 메시지를 LLM(Gemini 또는 Claude, 전환 가능)에게 전달하고 응답을 받아옴
- 저장소: 대화 내용을 옵시디언 일기와 DB에 기록. LLM이 필요하면 과거 기록을 직접 조회하기도 함
- LLM Wiki: 인물·장소 등 압축된 지식을 LLM이 읽기 전용으로 참조 (이 봇이 직접 관리하지는 않음)
- 스케줄러: 정해진 시간에 먼저 말을 걸거나(체크인), 자정에 하루 일기를 자동 생성
“대화 → LLM → 기록”이 기본 축이고, 스케줄러가 능동적인 동작을 더해주는 구조다.
여기서 저장소는 LLM Wiki의 raw 원본 역할을 한다. 안드레 카파시가 제안한 LLM Wiki 구조처럼, 매일 쌓이는 원본 기록(저장소)을 그대로 두지 않고 주기적으로 사람/장소/일 단위로 압축·정리해서 LLM Wiki로 만든다. LLM은 평소엔 압축된 LLM Wiki를 참조하고, 더 자세한 원문이 필요할 때만 저장소(raw)를 직접 뒤져본다.
4. 결과
작성중
5. 아쉬운점
봇이 능동적으로, 그리고 자연스럽게 말을 걸면서 정보를 수집해주길 바랐는데, 실제로는 응답이 다소 기계적이다.
토큰 사용량을 줄이기 위해 프롬프트/문맥을 최소화한 데서 오는 트레이드오프로 보이며, 자연스러움과 비용 사이에서 어쩔 수 없이 감수한 부분이라고 생각한다.
Leave a comment