사내 RAG 시스템 구축에 앞서 우리 회사 문서 구조부터 점검해야 하는 이유

사내 RAG 시스템 구축의 성패는 어떤 모델을 쓰느냐보다 우리 회사 문서가 검색에 적합한 구조인지에 달려 있습니다. 제목·표·최신성·메타정보가 정리된 문서는 검색이 잘 되고, 스캔 이미지와 옛 버전이 뒤섞인 문서는 좋은 모델도 살릴 수 없습니다. 구축 전에 문서 적합도부터 점검하는 것이 가장 싼 투자입니다.
사내 RAG 시스템 구축이란 우리 회사가 가진 문서를 검색 가능한 형태로 색인해 두고, 질문이 들어오면 관련 문서를 찾아 그 내용을 근거로 답하게 만드는 작업을 말합니다. 많은 조직이 "어떤 LLM을 쓸까"부터 고민하지만, 제가 여러 사내 문서봇 프로젝트를 지켜보며 확인한 것은 품질을 가르는 진짜 변수가 모델이 아니라 문서라는 점입니다. 이 글은 도입 검토 단계에서 우리 자료가 RAG에 맞는 구조인지 점검하는 방법을 정리합니다.
사내 RAG 시스템 구축, 왜 모델 선택보다 문서가 먼저일까?
RAG(검색증강생성, Retrieval-Augmented Generation)는 2020년 메타 AI 연구진(Lewis 외)이 제안한 개념으로, 사전학습된 언어모델에 외부 지식 검색을 결합해 더 정확하고 최신인 답을 만드는 구조입니다. 즉 모델이 "기억"으로만 답하는 게 아니라, 매번 관련 문서를 찾아 그 근거 위에서 답을 씁니다.
RAG는 결국 검색이 8할이다
그래서 RAG의 답변 품질은 검색 품질에 종속됩니다. 현업 분석들이 공통적으로 지적하는 원칙이 "쓰레기를 넣으면 쓰레기가 나온다(garbage in, garbage out)"인데, 여러 실무 정리(Towards Data Science, kapa.ai)는 어떤 LLM을 쓰든 검색 품질이 가장 결정적이며, 정제 안 된 원본을 그대로 벡터DB에 넣으면 초기 테스트는 통과해도 실전에서 무너진다고 봅니다.
결론적으로 RAG의 성패는 모델이 아니라 문서 구조에서 갈립니다.
RAG는 우리 회사 문서를 어떻게 읽고 답을 찾을까?
점검 기준을 세우려면 RAG가 문서를 다루는 순서를 알아야 합니다. 크게 문서를 잘게 나누고(청킹), 숫자 벡터로 바꾼 뒤(임베딩), 질문과 가까운 조각을 찾아(검색) 모델에 넘기는 흐름입니다.
문서를 잘게 나누는 ‘청킹’이라는 첫 관문
RAG는 문서를 통째로 쓰지 않고 작은 조각(청크)으로 잘라 색인합니다. 문제는 이 자르는 방식입니다. 여러 청킹 가이드(RAGFlow 정리, kapa.ai)에 따르면, 글자 수만 세어 기계적으로 자르면 표가 페이지 중간에서 끊기거나 머리말·꼬리말이 본문에 섞여 저품질 조각이 대량으로 만들어집니다. 반대로 제목·문단 같은 자연 경계에서 자르면 조각이 하나의 완결된 의미 단위가 됩니다.
임베딩과 유사도 검색의 원리
잘린 조각은 임베딩 모델을 거쳐 숫자 벡터가 되고, 질문도 같은 방식으로 벡터가 됩니다. 검색은 질문 벡터와 가장 가까운(코사인 유사도가 높은) 상위 몇 개 조각을 골라 오는 방식입니다(Karpukhin 외, 2020). 조각 크기는 사실 검색용으로 보통 200~500단어 안팎이 균형점으로 알려져 있습니다(청킹 실무 가이드, 2026).
어떤 문서가 RAG에 강하고, 어떤 문서가 발목을 잡을까?
이 원리를 뒤집으면 어떤 문서가 검색에 유리한지 보입니다. 핵심은 "기계가 구조를 알아볼 수 있는가"입니다.
구조가 살아 있는 문서의 공통점
구조 기반 청킹은 마크다운·HTML처럼 형식이 살아 있는 문서에서 잘 작동하고, 제목·표·목록이 자연스러운 자르기 기준이 됩니다(청킹 전략 분석). 마크다운의 ## 제목을 의미 경계로 삼으면 각 조각이 자족적인 단위가 된다는 연구 사례도 있습니다(arXiv, 2025).
검색을 방해하는 문서 유형
반대로 구조 단서가 없는 줄글 뭉치는 일관된 자르기가 어렵고, 스캔·손글씨 PDF는 텍스트 추출 단계에서부터 오류가 섞입니다.
사내 문서에서 가장 자주 검색을 망치는 것이 표입니다. 표를 캡처 이미지로 박아 두면 텍스트 추출이 안 되고, 고정 크기 청킹은 그 표를 행 중간에서 잘라 버립니다. 표는 이미지가 아니라 텍스트(또는 마크다운) 형태로 두고, 부득이하게 나눌 때도 행 단위로 나눠 열 제목을 함께 유지해야 합니다.
| 구분 | RAG에 강한 문서 | 검색을 방해하는 문서 | 왜 그런가 |
|---|---|---|---|
| 제목·구조 | 제목·소제목으로 위계가 잡힘 | 제목 없이 줄글만 길게 | 구조 청킹이 제목을 의미 경계로 삼음 |
| 표·목록 | 표·목록이 텍스트로 정리됨 | 표가 이미지로 박혀 있음 | 이미지 표는 추출·검색이 안 됨 |
| 문장 완결성 | 한 문단이 하나의 완결 내용 | 한 주제가 여러 곳에 흩어짐 | 반토막 조각은 임베딩 품질 저하 |
| 최신성 | 최신본만 남기고 이력 관리 | 옛 버전·중복본이 혼재 | 낡은 문서가 검색돼 오답 유발 |
| 메타정보 | 작성일·부서·출처 표기 | 파일명·출처 불명 | 메타데이터가 필터·출처표기 근거 |
| 파일 형식 | 텍스트 추출 가능한 문서 | 스캔·손글씨 PDF | OCR 오류가 그대로 유입 |
우리 회사 자료의 RAG 적합도, 어떻게 점검할까?
이제 우리 문서함을 실제로 열어 점검할 차례입니다. 아래 다섯 항목은 구축 견적을 받기 전에 운영자가 직접 확인할 수 있습니다.
문서 단위로 던져야 할 질문
① 주요 문서에 제목·소제목 위계가 있는가 ② 핵심 표가 이미지가 아니라 텍스트인가 ③ 같은 내용의 옛 버전·중복본이 정리됐는가 ④ 문서마다 작성일·출처가 붙어 있는가 ⑤ 누가 어떤 문서를 볼 수 있는지 권한이 정의됐는가. 이 다섯 가지가 흔들리면 모델을 바꿔도 검색은 나아지지 않습니다.
| 점검 항목 | 확인 질문 | 통과 기준 |
|---|---|---|
| 제목 구조 | 문서에 제목·소제목 위계가 있는가? | 주요 문서 대부분이 제목 구조 보유 |
| 표·이미지 | 표가 텍스트로 추출되는가? | 핵심 표가 텍스트 형태 |
| 중복·버전 | 옛 버전·중복본이 정리됐는가? | 최신본만 남아 있음 |
| 메타정보 | 작성일·부서·출처가 붙어 있는가? | 최소한 작성일·출처 확인 가능 |
| 접근 권한 | 문서별 열람 권한이 정의됐는가? | 민감 문서 접근 통제 명확 |
(아래는 이해를 돕기 위한 가상 사례입니다.) 한 회사가 정리가 잘 된 사내 위키를 믿고 문서봇을 붙였는데, 같은 규정의 2019년·2022년·2024년 버전이 함께 남아 있고 승인 절차 표가 캡처 이미지로 박혀 있었습니다. 봇은 자꾸 옛 규정을 근거로 답했습니다. 옛 버전을 아카이브로 내리고 표를 텍스트로 바꾸자, 모델은 그대로 두었는데도 오답이 눈에 띄게 줄었습니다.
문서를 어떻게 정비해야 검색이 잘 될까?
점검에서 구멍이 보였다면, 전면 재작성보다 검색에 영향이 큰 것부터 손대는 편이 효율적이라고 생각합니다.
제목·구조부터 살리고, 표·목록은 형태를 지켜서
제목이 없는 긴 문서에는 소제목을 넣어 위계를 만들고, 중복·구버전은 최신본만 남깁니다. 표와 목록은 이미지가 아닌 텍스트로 두고, 문서마다 작성일·출처를 붙입니다. 조각을 나눌 때 앞뒤를 조금 겹치게 하는 것(오버랩 10~20% 권장)도 경계에서 맥락이 끊기는 것을 막아 줍니다(청킹 전략 분석). 한 분석에서는 의미 단위로 자르는 방식이 단순 방식보다 검색 재현율(recall)을 최대 9%가량 높였다고 보고하기도 했습니다(Firecrawl, 2026). 정비는 자주 쓰는 문서 묶음부터 우선순위를 두길 권장합니다.
사내 RAG 시스템 구축은 어떤 순서로 준비해야 할까?
문서가 어느 정도 정비됐다면, 구축은 작은 범위에서 검증하며 넓히는 순서가 안전합니다.
전사 문서를 한꺼번에 넣지 말고, 가장 질문이 많은 업무 한두 개(예: 인사 규정, 제품 매뉴얼)의 문서부터 정비해 파일럿 범위로 정합니다. 이 단계에서 제목·표·버전·메타정보를 앞서 본 기준으로 손봅니다.
우리 회사에서 실제로 나올 법한 까다로운 질문 20~30개를 만들어, 봇이 옳은 문서를 찾아 근거로 답하는지 확인합니다. 틀린 답이 나오면 대개 모델이 아니라 어떤 조각이 검색됐는지를 먼저 봐야 합니다. 여기서 문서 문제가 다시 드러나는 경우가 많습니다.
도입 전 흔히 하는 착각은 무엇일까?
마지막으로, 사내 RAG 시스템 구축을 검토할 때 자주 빠지는 오해 두 가지를 짚겠습니다.
임베딩도 시간이 지나면 낡는다
한 번 색인하면 끝이라는 생각은 위험합니다. 문서 내용이 바뀌었는데 벡터를 갱신하지 않으면, 오래된 임베딩이 낡은 답을 계속 내놓는 ‘임베딩 부패(embedding rot)’가 생깁니다(현업 운영 사례). 2026년 들어 사내 지식봇 수요가 빠르게 늘고 있지만, 제가 보기에 성공과 실패를 가르는 지점은 여전히 화려한 모델이 아니라 이런 기본기입니다.
자주 묻는 질문
문서가 정리 안 돼 있으면 RAG 도입을 미뤄야 하나요?
미룰 필요는 없습니다. 다만 전사 확대보다 질문이 많은 문서 한두 묶음을 먼저 정비해 파일럿으로 시작하는 편이 실패 위험이 낮습니다.
어떤 파일 형식이 RAG에 유리한가요?
텍스트가 추출되는 워드·한글·마크다운 등이 유리합니다. 스캔본이나 표를 이미지로 넣은 PDF는 추출 단계에서 오류가 생기기 쉽습니다.
표는 어떻게 넣는 게 좋나요?
캡처 이미지 대신 텍스트나 마크다운 표로 두는 것이 좋습니다. 큰 표는 행 단위로 나누되 열 제목을 함께 유지해야 검색이 정확해집니다.
문서 정비 없이 좋은 모델만 쓰면 안 되나요?
검색 품질이 답을 좌우하므로 한계가 있습니다. 정제 안 된 원본을 그대로 넣으면 어떤 모델이라도 잘못 찾은 근거로 답하는 경향이 있습니다.
메타데이터는 꼭 필요한가요?
출처 표기, 최신 문서 우선 검색, 오답 추적에 쓰이므로 사실상 필요합니다. 최소한 작성일과 출처만이라도 붙여 두길 권장합니다.
한 번 만들면 유지 없이 쓸 수 있나요?
아닙니다. 문서가 바뀌면 다시 색인해야 하고, 그러지 않으면 낡은 답이 나옵니다. 재색인 주기를 정해 두는 것이 안전합니다.
정리하며
사내 RAG 시스템 구축은 모델을 고르는 일이 아니라 우리 문서를 검색 가능한 상태로 만드는 일에 더 가깝습니다. 제목·표·최신성·메타정보라는 기본기가 갖춰진 문서는 평범한 모델로도 좋은 답을 내고, 그렇지 않은 문서는 최신 모델로도 오답을 냅니다. 결국 가장 확실한 투자는 더 비싼 모델이 아니라, 구축 전에 문서 구조를 점검하고 정비하는 일이다. 작은 범위에서 실제 질문으로 검증하며 넓혀 가는 순서를 지킨다면, 도입은 실패가 아니라 점진적 개선의 과정이 된다고 생각합니다.
참고 출처
- Lewis 외, "Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks", Meta AI(FAIR)·NeurIPS, 2020.
- Karpukhin 외, "Dense Passage Retrieval for Open-Domain QA", 2020.
- Towards Data Science, "Six Lessons Learned Building RAG Systems in Production"(검색 품질이 최우선·임베딩 부패), 2025.
- kapa.ai, "RAG Gone Wrong: 7 Most Common Mistakes"(고정 청킹·데이터 정제), 2026.
- 청킹 전략·문서 구조 분석 종합(구조 기반 청킹, 청크 크기 200~500단어, 오버랩 10~20%, 의미 청킹 recall 최대 9% — Airbyte·Latenode·Firecrawl), 2026.
- arXiv, 마크다운
##기준 의미 청킹 사례 연구, 2025. - RAGFlow 개발 노트(문서 구조 이해·"맥락 품질을 먼저"), 2026.
AI 노출 이제 피할 수 없어요. 그런데 블로그, 매일 쓸 시간이 없으신가요?
키워드만 정해두면 매일 SEO 최적화 글이 자동으로 발행됩니다. 지금 읽으신 이 글처럼요.