RAG 구축으로 최신 사내 규정과 근거 찾아주기
규정 PDF의 업로드·확인·게시부터 시행일과 대체 문서 연결, 검색 색인 갱신과 삭제 검증까지, 최신 규정 검색을 위한 RAG 구축과 문서 자동화의 개발 범위를 설명합니다.
핵심 요약
1. 담당자가 규정 PDF를 올리고 확인한 뒤 게시하는 문서관리 기능을 만듭니다. 2. FastAPI, LlamaIndex, pgvector를 연결해 파일 접수부터 문서 정보 관리와 검색까지 구현합니다. 3. 시행일·폐기일·대체 문서에 따른 검색 대상 선정과 교체·삭제 검증은 직접 개발합니다.
사내 규정 검색과 답변을 위한 RAG 구축에서는 ‘지금 적용되는 규정’의 기준부터 정해야 합니다. 가장 나중에 올린 파일이라도 시행일이 다음 달이면 오늘의 답변 근거로 사용해서는 안 됩니다. 아래는 담당자의 업로드·확인·게시와 문서 자동화를 연결할 때 필요한 구현 범위입니다.
FastAPI로 PDF 업로드와 확인 화면 만들기
FastAPI의 UploadFile은 업로드 파일을 받는 기능을 제공합니다. 이를 접수 창구로 사용하고, 담당자가 규정명·문서번호·시행일·폐기일·대체할 문서를 입력하는 화면을 붙입니다. 파일 형식, 필수 입력값, 업로드 권한과 원본 보관 방식은 업무에 맞게 직접 구현합니다.
파일을 받으면 담당자에게 PDF 원본과 추출한 본문을 나란히 보여 줍니다. 담당자는 조항 누락이나 표의 순서 오류를 확인한 뒤 ‘게시’ 버튼을 누릅니다. 확인 전 파일이 검색에 노출되지 않는지, 오류가 있는 파일은 수정 후 다시 확인하도록 안내하는지가 검수 기준입니다.

LlamaIndex로 시행일과 대체 문서 연결하기
LlamaIndex는 문서와 문서 조각인 노드에 메타데이터라는 설명 정보와 관계를 함께 저장할 수 있습니다. 이를 활용해 검색용 문서 조각마다 문서번호와 개정본 식별값, 시행일, 폐기일을 연결합니다. 새 규정이 어떤 문서를 대체하는지도 기록해 담당자가 이전 규정과 변경 관계를 확인하게 만듭니다.
날짜 입력만으로 대체 관계까지 결정하지는 않습니다. 기존 규정 전체를 바꾸는지 일부 조항만 바꾸는지 담당자가 확인하도록 하고, 적용 범위를 직접 저장합니다. 폐기일을 적용 종료일로 볼지 그날부터 제외할지도 정해야 하며, 검수에서는 시행 전날과 시행 당일의 검색 대상을 비교합니다.
pgvector 검색에 적용 규정 기준 더하기
pgvector는 PostgreSQL에서 벡터라는 숫자 데이터를 저장하고 유사도 검색을 수행하는 확장입니다. 질문과 관련된 문서를 찾는 데 활용하되, 업무상 적용 가능한 규정인지 판단하는 규칙은 별도로 만듭니다. 게시 여부, 질문의 기준일, 시행일과 폐기일을 확인해 검색 가능한 문서 범위를 제한합니다.

일반 검색 화면은 오늘을 기준으로 하고, 과거 규정 조회가 필요하면 별도 메뉴에서 기준일을 받습니다. 새 파일을 미리 게시했더라도 시행 전에는 기존 규정이 선택되도록 처리합니다. 적용 가능한 근거가 없을 때는 폐기 문서로 답을 채우지 않고 ‘해당 기준일에 적용할 규정을 확인할 수 없습니다’라는 결과를 표시합니다.
PDF 교체 후 색인과 인용 함께 갱신하기
PDF 교체 화면에서는 담당자가 새 파일과 교체 대상 문서를 지정합니다. 새 본문을 추출하고 검색에 사용할 문서 조각을 만든 뒤, 문서번호와 조항 연결이 맞는지 확인하는 절차를 둡니다. 검색용 데이터인 색인을 갱신할 때도 새 자료의 준비와 확인이 끝난 후 검색 대상을 전환하도록 직접 개발합니다.
답변의 인용에는 문서명, 개정본, 조항과 해당 원본 링크를 함께 표시합니다. 이전 답변이 가리키던 링크를 새 PDF로 바꾸면 인용한 문장과 열리는 파일이 달라질 수 있으므로, 개정본별 링크를 구분합니다. 교체 검수에서는 같은 질문을 다시 입력해 새 답변의 문장·인용·열리는 PDF가 모두 같은 개정본을 가리키는지 확인합니다.

폐기 문서 삭제와 검색 제외 검증하기
‘검색에서 제외’와 ‘원본까지 삭제’는 담당자가 구분해 선택하도록 만듭니다. 보관이 필요한 폐기 문서는 과거 조회에만 남기고, 완전 삭제를 선택하면 원본과 검색용 조각 등 제거할 대상을 먼저 보여 줍니다. 실제 삭제 권한과 보관 기준도 자체 로직으로 적용하며, 과거 답변의 링크에는 원본 삭제 안내가 나오도록 처리합니다.
실패 사례는 폐기된 ‘출장비 규정 2차 개정본’에만 있는 문장을 질문했는데 최신 답변의 근거로 다시 등장하는 경우입니다. 검수용 자료에 이 문장을 넣고 교체·폐기·삭제를 각각 수행해 검색 결과와 인용을 확인합니다. 갱신 도중 오류가 나더라도 신구 본문이 섞여 공개되지 않는지 함께 점검해야 문서 자동화의 완료 기준을 정할 수 있습니다.
개정 전후 ‘출장비 규정’ PDF와 시행일·폐기일·대체 문서번호가 담긴 규정관리대장을 준비해 주세요. 업로드 확인·게시 화면부터 색인 갱신과 삭제 검증까지 연결하는 사내 규정 검색 서비스 개발을 문의해 주세요. 트램스 AI 제작 문의 (https://trams.co.kr/ai-si/contact/#inquiry)
참고 자료
비슷한 AI 서비스를
사업에 적용하고 싶으신가요?
아이디어와 필요한 기능을 알려주시면 제작 범위와 방법을 검토합니다.