SKILL 40 min

AI 비서 만들기 — Claude API + 본인 데이터

이 레슨이 끝나면

  • "RAG"가 정확히 뭐고 왜 필요한지 안다 (일반 ChatGPT와의 차이)
  • 본인 노트·문서·블로그를 base로 한 개인 AI 비서의 큰 그림을 안다
  • /v6-ai-assistant 스킬을 호출해서 본인 자료 100~1000건 기반 AI 비서를 1개 띄운다

누구에게 추천? — 본인이 오래 쌓은 노트·문서가 있는 모든 사람. 작가/연구자/학생/리더에게 특히.

"RAG"가 정확히 뭐예요?

RAGRetrieval-Augmented Generation의 줄임말이에요. 한국어로 풀면 "검색 보강 생성", 더 쉽게 풀면 "AI가 답하기 전에 본인 자료를 먼저 찾아보고 답하는 방식"이에요.

일반 ChatGPT/Claude는 학습 데이터와 본인 질문만 보고 답해요. 본인 독서 노트 1000개, 본인 블로그 500개, 본인 회의록 200개에 대해서는 아무것도 몰라요. RAG는 이 문제를 해결해요. 본인이 "지난주 결정사항 요약해 줘"라고 물으면, AI가 먼저 본인 회의록 중에서 "지난주" 키워드와 비슷한 문서 3~5개를 찾고, 그 문서들을 컨텍스트에 끼워서 답해요.

🎨 생성 (Codex CLI) — 일반 LLM vs RAG 비교 다이어그램. 좌(질문 → LLM → 답) vs 우(질문 → 검색(본인 자료) → 관련 문서 + 질문 → LLM → 답).
RAG는 답하기 전에 "본인 자료 검색" 단계를 한 번 끼워 넣어요.

RAG 부품 3가지

부품 역할 대표 도구
임베딩 모델 텍스트를 "의미 좌표(숫자 벡터)"로 변환. 비슷한 의미는 비슷한 좌표. OpenAI text-embedding-3-small / Voyage AI
Vector DB 의미 좌표를 저장 + 검색(가장 가까운 N개 찾기). Pinecone (클라우드) / ChromaDB (로컬·무료)
생성 LLM 검색된 문서 + 본인 질문을 받아 최종 답변 작성. Claude Sonnet/Opus (한국어 최강)

자료가 100건 미만이면 RAG 안 써도 돼요

Claude Sonnet/Opus는 컨텍스트 200K 토큰(약 한국어 100,000자)을 한 번에 받을 수 있어요. 본인 자료 전체가 그 안에 들어간다면 그냥 system prompt에 통째로 넣고 끝. Vector DB 불필요. 이걸 "긴 컨텍스트 RAG"라고 불러요. 입문 추천.

사례 — 본인 자료 기반 AI 비서

사례 1 — 다독가 D (40세)

10년간 노션에 독서 노트 1200개. "이 책과 비슷한 책 추천해 줘" 또는 "내가 작년에 메모한 자기개발서 3권 요약" 같은 질문에 AI가 본인 노트 기반으로 답. ChromaDB(로컬) + OpenAI 임베딩 + Claude API. 월 운영비 약 1만 원.

사례 2 — 1인 컨설턴트 C (38세)

5년치 회의록 800건 + 클라이언트별 보고서 300건. "X 클라이언트 지난 1년 핵심 이슈 요약" 같은 질문에 AI가 정확히 답. 회의 준비 시간 70% 단축.

사례 3 — 블로거 B (32세)

본인 블로그 글 500편을 base로 "내가 예전에 쓴 글 중 X 주제로 다시 쓰면 좋은 거" 추천. 새 글 아이디어 발굴 시간 80% 단축.

이 스킬을 호출하는 시점

본인 자료가 100건 이상 쌓여 있고, "기억이 안 나서 매번 검색·스크롤"하는 패턴이 반복될 때. 자료가 적으면 그냥 본인이 검색하는 게 빨라요.

Claude Desktop 입력

/v6-ai-assistant

스킬과의 단계별 진행

단계 1 — 자료 위치 + 양 파악

"본인 자료가 어디에 몇 건 있나요? Notion / Google Docs / Obsidian / 마크다운 폴더 등" → 예: "노션 1200건"

단계 2 — 모드 결정 (긴 컨텍스트 vs Vector DB)

자료 100건 미만 + 짧은 글 → 긴 컨텍스트. 100건 이상 또는 긴 문서 → Vector DB.

단계 3 — 자료 추출 + 정제

노션 export / Notion API / 파일 폴더 읽기 등으로 자료를 마크다운/텍스트로 변환. 스킬이 변환 스크립트 자동 작성.

단계 4 — 청크 분할 + 임베딩 + Vector DB 저장

긴 문서를 500자 정도로 쪼개서(청크) 임베딩 변환 → ChromaDB 저장. (긴 컨텍스트 모드는 이 단계 생략.)

단계 5 — 질문 인터페이스 만들기

(a) Claude Desktop에서 매번 호출 / (b) 본인 SaaS 안에 채팅 UI 추가 / (c) 디스코드/카톡 봇 형태(6-3 응용).

단계 6 — 5개 질문으로 정확도 검증

본인이 답을 알고 있는 질문 5개로 테스트. 답이 본인 자료와 일치하면 OK.

긴 컨텍스트 모드 코드 예시 (가장 단순)

app/services/personal_assistant.rb

class PersonalAssistant
  def initialize
    # 본인 자료를 한 덩어리로 (100건 이하 추천)
    @notes = Dir.glob("data/notes/*.md").map { |f| File.read(f) }.join("\n\n---\n\n")
  end

  def ask(question)
    res = HTTP.headers(
      "x-api-key" => ENV["ANTHROPIC_API_KEY"],
      "anthropic-version" => "2023-06-01",
      "content-type" => "application/json"
    ).post("https://api.anthropic.com/v1/messages", json: {
      model: "claude-sonnet-4-5",
      max_tokens: 1500,
      system: "다음은 사용자의 개인 노트 모음입니다. 이 노트만 참고해서 답하세요.\n\n#{@notes}",
      messages: [{ role: "user", content: question }]
    })
    res.parse.dig("content", 0, "text")
  end
end

Vector DB 모드는 위 코드의 @notes를 매번 "질문과 가장 비슷한 청크 5개"로 동적 교체해요. 스킬이 ChromaDB 셋업 + 청크 분할 + 임베딩 변환 + 검색 함수를 모두 자동 작성해 줘요.

🎨 생성 (Codex CLI) — RAG 파이프라인 다이어그램. 자료 → 청크 → 임베딩 → Vector DB → 검색 → LLM → 답.
📷 캡쳐 — Notion API 통합 페이지에서 토큰 발급 화면.
📷 캡쳐 — 본인 SaaS 안의 AI 비서 채팅 UI mockup. 사용자 질문 + 비서 답변(출처 노트 3개 표시).
답변 아래에 "출처: 노트 X, Y, Z"를 함께 보여 주면 신뢰도 ↑.

막히는 지점 — 미리 답

① "벡터", "임베딩"이 무서워요

세부 수학은 몰라도 돼요. 핵심은 한 문장: "텍스트 → 숫자 묶음(좌표) → 비슷한 의미는 좌표가 가까움". 그래서 검색이 키워드가 아닌 "의미"로 가능해요. 예: "주말 매출"과 "토요일 수익"이 의미상 가까워서 같이 잡힘.

② 답변 정확도가 낮아요

(1) 청크를 너무 작게 쪼개면 컨텍스트 부족. 500~1000자 추천. (2) 검색 결과 N을 3에서 5~8로 늘려 보세요. (3) "근거가 자료에 없으면 '확실치 않음'이라고만 답하세요" system prompt 추가.

③ Vector DB 운영이 부담돼요

ChromaDB는 본인 PC/서버에서 SQLite처럼 파일 1개로 동작. 별도 서버 불필요. 자료 1만 건까지 충분. 그 이상이면 Pinecone(클라우드, 월 $0~$70).

④ 자료 갱신이 자주 일어나요

ActiveJob으로 매일 새벽 자동 동기화 (6-2 자동화 응용). 새 자료만 임베딩하고 Vector DB에 추가.

🎨 생성 (Codex CLI) — "긴 컨텍스트 vs Vector DB" 결정 트리. 자료 양/길이/갱신 빈도 기준.
🎨 생성 (Codex CLI) — 비서 활용 시나리오 4가지 카드 (독서 추천 / 회의 요약 / 블로그 아이디어 / 일정 정리).

완료 체크리스트

  • ☐ 본인 자료 위치와 양을 파악했다 (예: 노션 1200건)
  • ☐ 모드 결정 (긴 컨텍스트 / Vector DB)
  • ☐ 자료를 마크다운/텍스트로 추출 완료
  • ☐ Claude API 호출 코드 작성 + 첫 응답 받음
  • ☐ 본인이 답을 아는 질문 5개로 정확도 검증
  • ☐ 매일/매주 자료 동기화 자동화 설계 (선택)

다음 → 6-6 Hermes 에이전트 소개

여기까지가 본인이 직접 만드는 5가지 활용 사례였어요. 6-6/6-7/6-8은 Vuild가 만들어 둔 심화 도구 3가지 소개예요. Hermes(마케팅) / OpenClaw(분기) / Hyperframes(재사용 프레임). 본인 SaaS의 다음 단계에 도움이 될 거예요.

실습하기

로그인하면 스킬을 실습할 수 있습니다