LLM의 대형 문서 환각을 막기 위해 레이아웃 인식 검색 시스템을 구축함
built a layout-aware retrieval setup to stop LLMs from halluniciating on big docs
핵심 요약
대형 문서 처리 시 발생하는 LLM의 환각을 방지하기 위해 문서 구조를 파악하는 계층적 검색 시스템을 개발함.
- RAG 환각 방지 — 대형 문서 처리 시 발생하는 정보 누락 및 토큰 낭비 문제를 해결함.
- 계층적 검색 방식 — 문서 구조와 마크다운 스키마를 먼저 파악하여 필요한 부분만 선택적으로 가져옴.
- 비용 및 성능 최적화 — 불필요한 전체 문서 입력을 줄여 토큰 비용을 절감하고 검색 정확도를 높임.
- 다양한 포맷 지원 — MD, PDF, DOCX 등 여러 문서 형식을 지원하며 엑셀 지원을 추가할 예정임.
표준 RAG 파이프라인에 복잡한 팀 문서 라이브러리를 넣었을 때, 엉망진창이면서도 당당하게 틀린 답변만 내놓는 것에 너무 지쳤음. 보통은 베이스 모델의 문제가 아니라, 그냥 거대한 덩어리를 컨텍스트 윈도우에 쏟아붓고 "lost in the middle" 병목 현상에 걸려서 토큰만 낭비하고, 에이전트는 레이아웃 때문에 완전히 혼란에 빠지는 게 문제임.
그래서 더 계층적인 검색 방식을 테스트하려고 로컬 문서 트리를 linkly ai로 라우팅하기 시작했음. 기본적인 top-k 임베딩 덤프 대신, 에이전트가 전체 문서 구조나 마크다운 스키마를 먼저 파싱하고, 부모-자식 노드 관계를 매핑한 다음, 의도에 맞는 특정 세부 섹션만 선택적으로 가져오는 방식임. 내부 테스트 결과 임베딩 검색 오류가 상당히 줄었고, 간단한 질문에도 참조 매뉴얼 전체를 읽지 않아도 돼서 입력 토큰도 엄청나게 아꼈음. 현재 MD, 이미지, docx, PDF, html, PPTX, TXT 형식을 지원해서 꽤 잘 돌아감. 엑셀 파일만 인덱싱할 수 있으면 파이프라인이 거의 완벽해질 듯.

