Work · 2025 · 슈어소프트테크

해양 법령 도메인 RAG 개발

해양 법령을 조문 단위로 검색하고 답변마다 근거 조문을 인용하는 RAG 시스템. BM25·벡터·조문 관계 그래프 검색을 병합해 단순 키워드 검색보다 정확한 인용을 만드는 흐름에 초점.

해양 법령 도메인 RAG 개발
기간
2025.06 – 2025.11
역할
개발 실무 (인턴)
소속 / 주최
슈어소프트테크

배경

해양 법령은 조문 간 인용·예외·하위법 참조가 많아 단순 임베딩 검색만으로는 정확한 답을 얻기 어렵습니다. 슈어소프트테크 인턴십 중 해양경찰청 CDX 과제로 진행한 도메인 특화 RAG 파이프라인을, 회사 보안상 사내 코드·데이터를 외부에 공개할 수 없어 공개 데이터 기반으로 다시 구현한 프로젝트입니다.

접근

국가법령정보 OPEN API로 해양 법령 105개, 7,506개 조문을 수집하고, 조문 본문의 인용·준용·위임 관계를 규칙 기반 파서로 추출해 조문 관계 그래프를 만들었습니다. BM25·벡터(Qdrant, KURE-v1)·그래프(Neo4j) 세 검색 경로를 RRF로 병합하고 cross-encoder로 리랭킹합니다. LangGraph로 질문 분류, 검색, 근거 평가, 재검색, 답변 생성, 인용 검증까지 이어지는 흐름을 구성했고, 생성 모델이 검색 결과 밖의 조문을 인용하지 못하게 막았습니다.

결과

골드셋 180문항으로 세 검색 전략을 통계 검정(Wilson CI·McNemar)까지 비교했습니다. 그래프 멀티홉이 우세할 것이라는 처음 가설은 평가에서 뒤집혔고, 벡터가 hit@1, 그래프가 recall@10에서 앞서 그래프 검색은 정답 후보를 넓히는 용도로 정리했습니다. 같은 흐름을 근거 도출 과정이 보이는 웹 데모로 공개했습니다.

아키텍처

해양 법령 RAG 아키텍처 — 수집·파싱, BM25·Qdrant·Neo4j 인덱스, RRF 병합과 리랭킹, LangGraph 에이전트, FastAPI 서빙

저장소의 아키텍처 다이어그램 원본입니다. 수치는 reports/의 평가 산출물에서 가져왔습니다.

핵심 수치

법령 문서
105개
조문·별표
7,506개
조문 관계 그래프
16,281 엣지
평가 골드셋
180문항
검색 hit@1 (벡터)
0.539
응답 시간 · 비용
p50 6.2초 · 약 $0.001

저장소 리포트에 저장된 실측값입니다.

Stack

PythonFastAPILangGraphLangChainOpenAI APIBM25 (Kiwi)QdrantKURE-v1Neo4jLangfuseNext.jsTypeScriptDockerVercel
© 2026 Minsu Kang. All rights reserved.