인도 법률 RAG 구축기 4부: 프로덕션 직전 법이 바뀌었을 때
I've been building India's Legal RAG in public — Part 4: When the law itself changes the night before production
핵심 요약
인도 법률 RAG 프로젝트 중 법 개정으로 인해 인덱스를 전면 재구축하며 겪은 기술적 도전과 해결 과정을 공유함.
- 법률 RAG 재구축 — 법 개정에 따라 기존 인덱스를 폐기하고 26개 법령 문서를 기반으로 정확도 중심의 인덱스를 새로 구축함.
- 기술 스택 최적화 — Pinecone, Supabase, FastAPI를 활용하고 Cohere Reranker를 도입해 검색 정확도를 크게 향상함.
- 데이터 파이프라인 — Intent Router와 Reranker를 결합하여 28,000개 벡터에서 가장 관련성 높은 청크를 추출하는 구조로 개선함.
- 1인 개발의 도전 — 팀이나 자금 없이 혼자서 아키텍처 설계부터 프롬프트 튜닝까지 모든 과정을 직접 수행함.
이 시리즈를 계속 지켜보셨다면 아키텍처, 그래프 매칭, 쿼리 유형별 스트레스 테스트를 보셨을 겁니다.
이번 글은 진실의 원천(source of truth) 자체가 하룻밤 사이에 바뀌면 어떤 일이 벌어지는지에 대한 이야기입니다.
2026년 4월 1일. 인도의 새로운 소득세법이 시행되었습니다.
제 전체 인덱스는 구법을 기반으로 구축되어 있었죠.
그래서 몇 주간 튜닝한 끝에 아무도 하고 싶지 않은 일을 했습니다. 인덱스를 폐기했죠. 모든 것을 다시 청킹했습니다. 정확도 중심의 인덱스를 처음부터 새로 구축했습니다.
바뀐 점:
- 기존 인덱스: 범용, 혼합 문서
- 새 인덱스: 26개 문서, 모두 검증된 ACTIVE 상태 ✅, 정확도 중심 청킹 전략
현재 포함된 내용:
26개 문서 | 4,800페이지 이상
Pinecone 내 28,000개 이상의 벡터
Supabase 내 14,700개 이상의 청크 추적
IT Rules 2026 단독 → 5,095개 청크 (976페이지)
범위: 1952년 ~ 2026년 → 인도 세법 74년 치
파이프라인 (업데이트됨):
Query → Intent Router
→ 28,000개 벡터에 대해 병렬 검색 실행
→ Cohere Reranker (상위 15개 → 최적 10개)
→ LLM Generator (자식 청크가 아닌 부모 청크 사용)
리랭커(Reranker)를 추가한 것이 이 프로젝트에서 본 가장 큰 정확도 향상이었습니다. 유사도 검색은 관련된(related) 청크를 찾습니다. 리랭커는 적절한(relevant) 청크를 찾죠. 법률 RAG에 있어서 그 간극은 전부나 다름없습니다.
1인 개발. 팀 없음. 자금 없음.
엣지 케이스가 발생하면 시스템 프롬프트를 수정합니다. 그게 제 일이니까요.
아직 끝나지 않았습니다. 다음은 평가 파이프라인입니다. 진실의 기준(ground truth)이 4,800페이지의 법률일 때 어떻게 정확도를 측정할까요?
스택: LangGraph · Pinecone · Cohere Reranker · Supabase · FastAPI
아키텍처에 대해 무엇이든 물어보세요(AMA) — 깊이 있게 답변해 드리겠습니다.

