개요
앞선 글에서는 자연어 질문 RAG 검색 및 LLM 기반 Q&A 기능 구현 을 다뤘다. 이번 글에서는 RAG 기반 문서 검색 시스템에 실제 샘플 문서(설비 매뉴얼, 안전지침)를 탑재하고, 전체 파이프라인을 검증한 작업 내용을 정리한다. 문서 메타데이터 정의부터 S3 업로드, 임베딩 생성, Milvus 저장, Q&A 테스트, UI 연동까지의 단계를 처리하였다.
샘플 문서 초기 탑재 작업 흐름
이번 작업의 주요 목표는 다음과 같다.
- 설비 매뉴얼 및 안전지침 문서 선정 및 메타데이터 정의
- S3 업로드 및 presigned URL 접근 테스트
- 텍스트 파싱 및 청킹 처리
- 임베딩 벡터 생성 및 Milvus 저장
- Q&A 및 근거 하이라이트 기능 검증
- 프론트엔드 UI 연동 및 반응형 구현
- 전체 시나리오 테스트 및 문서화
1. 서브태스크별 작업 내역
- 샘플 문서 선정 및
metadata.json정의 - 문서 S3 업로드, presigned URL 접근 확인
- 문서 파싱, 512 토큰 단위 청킹 전처리
- 임베딩 생성(OpenAI), JSON 저장
- Milvus DB 저장 및 Top-k 검색 테스트
- Q&A 및 근거 하이라이트, 불확실성 경고 검증
- 문서 UI 노출, collapse/expand 및 접근성 구현
- 전체 플로우 통합 테스트
- 결과 정리 및 노션/깃허브 문서화
2. 주요 코드베이스 및 파일 구조
| 파일명 | 설명 |
|---|---|
upload_sample_documents.py |
S3 업로드 및 presigned URL 테스트 |
process_sample_documents.py |
텍스트 추출 및 512 토큰 단위 청킹 |
generate_embeddings.py |
임베딩 생성 및 결과 저장(JSON) |
store_vectors_to_milvus.py |
Milvus 저장, 컬렉션 스키마 확인 |
test_sample_qa_simple.py |
Q&A 및 근거 추출, 불확실성 검증 |
test_step_by_step.py |
전체 구성요소 통합 테스트 |
3. 추가 구현 및 테스트 사항
- 임베딩 차원: 1536 (OpenAI)
- Milvus Top-k: 5, 컬렉션 스키마 커스텀
- 토큰 기준 청킹: 512 tokens
- 문서 접근: presigned URL, 공개 버킷 경로
- 프론트엔드: 근거 하이라이트 및 반응형 collapse UI 구현
- 문서화 위치: Notion 작업 로그 및 GitHub README
관련 용어 정리
| 용어 | 설명 |
|---|---|
| RAG | 검색 기반 문서 추론 구조. 외부 문서를 검색하여 LLM에 함께 입력해 정확도 향상 |
| 청킹(Chunking) | 긴 문서를 일정 토큰 단위로 분할하여 처리하기 쉽게 만드는 전처리 기법 |
| 임베딩(Embedding) | 문장을 수치 벡터로 변환하는 과정. 의미 기반 검색의 핵심 |
| Milvus | 벡터 검색에 특화된 오픈소스 DB로, 유사도 기반 검색을 빠르게 수행 |
| presigned URL | S3의 특정 파일을 인증 없이 일시적으로 접근 가능하게 만드는 URL |
마무리
이번 글에서는 샘플 문서를 활용한 문서 업로드, 임베딩, 벡터 저장, 검색, Q&A 기능 검증까지의 과정을 정리하였다. 이 과정을 통해 시스템 전체 흐름에 대한 안정성과 응답 품질을 확인했으며, 이후 실제 사내 문서 적용 시에도 동일한 구조로 확장할 수 있는 기반을 마련하였다. 다음 글에서는 근거 문장 UI(콜랩스/확장, 원본 페이지 이동) 구현을 다룰 예정이다.
'사이드 프로젝트' 카테고리의 다른 글
| RAG 기반 문서 검색 시스템 - 10(문서 메타데이터 및 버전 관리 기능 구현) (1) | 2025.07.23 |
|---|---|
| RAG 기반 문서 검색 시스템 - 9(근거 문장 UI 콜랩스/확장 구현) (3) | 2025.07.22 |
| RAG 기반 문서 검색 시스템 - 7(자연어 질문 RAG 검색 및 LLM 기반 Q&A 기능 구현) (2) | 2025.07.21 |
| RAG 기반 문서 검색 시스템 - 6(문서 파싱/임베딩/벡터DB 저장 및 문서화) (1) | 2025.07.21 |
| RAG 기반 문서 검색 시스템 - 5(문서 업로드 및 S3 저장/바이러스 검사 구현) (2) | 2025.07.21 |