Solutions · Open Source

Argus RAG Studio

RAG 파이프라인의 구축(Build) · 검색/생성(Retrieve & Generate) · 평가(Evaluate) · 운영/배포(Operate & Deploy)를 한곳에서 통합 관리가능한 RAG 플랫폼입니다. "한 번 동작하는 RAG 데모"가 아니라 — 품질을 숫자로 측정하는 평가 하니스, 최적 설정을 자동 탐색하는 스윕, 피드백 환류, 에이전트 기반 원격 배포까지 갖춰 온프레미스·에어갭(폐쇄망)에서 운영할 수 있습니다.

Apache License 2.0 · 오픈소스GitHub 저장소제품소개서
파싱 전략 5종청킹 전략 8종벡터 저장소 5종

RAG 란 무엇인가

LLM 이 혼자 답하면 최신 정보도, 근거도 없습니다. RAG 는 답하기 전에 우리 문서를 먼저 검색하고, 찾아낸 근거 위에서만 답을 만듭니다.

RAG 미사용과 RAG 적용 — 색인(사전 준비)과 질의(실시간) 두 경로
RAG 미사용과 RAG 적용 — 색인(사전 준비)과 질의(실시간) 두 경로

문서를 넣으면, 근거를 포함한 답이 도출합니다

사내 규정·매뉴얼·계약서를 그대로 적재하면 질문에 맞는 근거를 검색해 [n] 인용이 추가된 답변을 생성합니다. 답변의 모든 문장은 원문 위치를 역추적할수 잇어서, 담당자가 근거를 확인한 뒤 업무에 사용합니다.

출장비 지급 규정 문서로 본 근거 기반 답변 5단계
출장비 지급 규정 문서로 본 근거 기반 답변 5단계

개념도

구축 · 검색/생성 · 평가/운영이 하나의 도구 위에서 돌아가고, 추론 서버와 배포는 표준 인터페이스로 연결됩니다.

Argus RAG Studio 시스템 구성
Argus RAG Studio 시스템 구성

특징 및 강점

01

측정 → 최적화 → 개선 루프

골든셋·Hit Rate/MRR·LLM-as-Judge 3축으로 품질을 숫자로 측정하고, 설정 스윕이 청킹·검색 모드·리랭커의 최적 조합을 자동 탐색하며, 사용자 피드백 👍/👎가 골든셋으로 환류됩니다 — 자체 구축 RAG가 대부분 빠뜨리는 루프가 기본 기능입니다.

02

하이브리드 검색 + 인용 답변

벡터(pgvector)와 렉시컬(tsvector)을 RRF로 융합하고 리랭킹(LLM·인프로세스·cross-encoder)으로 재정렬해, [n] 인용이 달린 답변을 SSE로 스트리밍합니다. 이종 임베딩 지식베이스도 페더레이션 질의로 한 번에 검색합니다.

03

한국어 · 한국 문서 특화

한글 HWP/HWPX 전용 Rust 파서(rhwp), kss 한국어 문장 분리, VLM·OCR(PaddleOCR) 스캔 문서 파이프라인, AI-Hub 호환 어노테이션까지 — 일반 오픈소스 RAG 프레임워크에 없는 축입니다.

04

에어갭 · 에이전트 원격 배포

모델을 팩(pack)으로 반입해 배포 시 자동 설치하고, 각 호스트의 에이전트가 워커·임베딩·리랭커·VLM 서버를 원격 배포합니다. zot 레지스트리로 컨테이너까지 완전 오프라인 — 금융·공공·국방의 망분리 요건에 대응합니다.

RAG 전 주기

수집부터 검색·생성·평가·운영·배포까지 하나의 플랫폼에서 관리합니다.

구축 · 검색/생성 · 평가/운영 세 축과 이를 받치는 배포 기반
구축 · 검색/생성 · 평가/운영 세 축과 이를 받치는 배포 기반

문서 라우팅

분류는 문서가 무엇인지 알려줄 뿐, 어느 지식베이스에 문서를 넣을지 정하지 못합니다. 파일명 · 경로 · 메타데이터부터 임베딩 유사도와 LLM 판단까지 라우터를 조합해 인제스천 전에 목적지를 정하고, 그 결정을 모두 기록합니다.

진입점 3곳과 모드, 라우터 7종, 정책 조합과 폴백
진입점 3곳과 모드, 라우터 7종, 정책 조합과 폴백

문서 파싱

같은 PDF라도 표가 핵심인 문서와 스캔본은 다르게 읽어야 합니다. 파일 유형과 품질 요구에 맞춰 파서를 교체하고, 어느 방법을 사용하든 표와 헤딩이 살아 있는 하나의 Markdown 으로 변환합니다.

파싱 전략 5종과 파일 유형별 자동 선택
파싱 전략 5종과 파일 유형별 자동 선택

PII

개인정보는 문서 파싱 직후에 마스킹되어, 마스킹된 본문만 청킹 · 임베딩 · 색인으로 넘어갑니다. 정규식으로 부족한 자리는 체크섬 검증과 샌드박스에서 실행하는 사용자 함수로 보완합니다.

PII 적용 시점과 세 가지 마스킹 방식 · 사용자 함수 샌드박스
PII 적용 시점과 세 가지 마스킹 방식 · 사용자 함수 샌드박스

청킹

청크는 검색이 실제로 매칭하는 단위입니다. 너무 크면 근거가 부족하고, 너무 작으면 문장이 자립하지 못합니다. 문서 성격에 맞는 경계 전략을 컬렉션마다 선택해야 합니다.

청킹 전략 8종과 크기 단위 · 오버랩 옵션
청킹 전략 8종과 크기 단위 · 오버랩 옵션

임베딩

임베딩 설정이 컬렉션의 벡터 공간을 정합니다. 프로바이더 · 모델 · 차원 · 거리 지표는 컬렉션을 만들 때 확정되고, 이후 변경하려면 재색인이 필요합니다.

임베딩 프로바이더 3종과 벡터 공간 설정 · 차원 가드
임베딩 프로바이더 3종과 벡터 공간 설정 · 차원 가드

검색

질문 하나가 벡터 검색과 렉시컬 검색으로 처리하고 RRF 로 다시 합쳐집니다.

벡터 · 렉시컬 병렬 검색과 RRF 융합 · 검색 범위를 좁히는 경계
벡터 · 렉시컬 병렬 검색과 RRF 융합 · 검색 범위를 좁히는 경계

리랭킹

1차 검색은 놓치지 않는 것이 목적이라 후보를 넓게 모읍니다. 리랭킹은 그 후보만 다시 정밀하게 보고 순서를 바꿉니다. 쿼리 시점 설정이라 바꿔도 재인덱싱이 없습니다.

리랭커 4종과 top-N 재정렬 · 실패 시 폴백
리랭커 4종과 top-N 재정렬 · 실패 시 폴백

평가

검색은 LLM 없이 Hit Rate · MRR 로 계산하고, 답변은 LLM 판정관이 충실성 · 관련성 · 정확성으로 평가를 합니다. 설정 변경은 재인덱싱이 필요한 것과 아닌 것으로 나눠 탐색하고, 홀드아웃과 과적합 플래그가 우승 설정을 검증합니다.

검색 · 생성 지표와 종합 점수, 스윕 2축과 홀드아웃 검증
검색 · 생성 지표와 종합 점수, 스윕 2축과 홀드아웃 검증

플랫폼 아키텍처

프런트엔드 대시보드 · RAG 백엔드 · 추론 서버 · 데이터 스토어/레지스트리가 유기적으로 연동되며, 추론·워커는 에이전트로 분리 배포해 규모에 따라 단계적으로 확장합니다.

Frontend Dashboard
Next.js 16 · React 19
지식베이스 · Playground · 챗
파이프라인 · 평가 · 관측성
피드백 · 문서 라우팅 · 파인튜닝
어노테이션 · 이미지 탐색기
모델 관리 · 서버 관리 · 소스 워치
작업(Jobs) · 사용자/권한 · API 키 · PII 규칙
RAG Backend
FastAPI :4700
인제스천 — 파싱·청킹·임베딩·색인 (비동기 워커)
질의 — 하이브리드 검색·리랭크·생성
평가 · 트레이스 · 피드백 · 파이프라인 버전
RAG 문서 라우팅 · 소스 워치
servermgr — 에이전트 배포·프록시·하트비트
REST · SSE 스트리밍 · 로컬 JWT/Keycloak
Inference
로컬 또는 분리 배포
임베딩 :8080 — FastEmbed 로컬 · OpenAI 호환
리랭커 :8081 — cross-encoder
검출(OCR) :8082 — PaddleOCR · EasyOCR
생성 LLM — Claude · OpenAI 호환 · Ollama · vLLM
VLM(vLLM) — 스캔 문서·이미지 파싱
GPU 변형 — cpu · gpu(onnx) · gpu-torch
Data Stores
PostgreSQL · MinIO · zot
PostgreSQL + pgvector — 청크·벡터·tsvector(정본)
교체형 벡터 저장소 — Qdrant · Weaviate · Milvus · Databricks
트레이스·평가·피드백 동일 데이터 평면
MinIO / S3 — 원본 문서·이미지·모델 팩
Model Repository (argus-models)
zot OCI 레지스트리 — 폐쇄망 이미지
buildx bake — amd64+arm64 멀티아키

핵심 기능

인제스천·파싱·청킹부터 하이브리드 검색·생성, 평가·설정 스윕·검색 파인튜닝, 버전·관측성, 에이전트 배포·에어갭, 어노테이션·이미지까지 — RAG 전 주기 12대 축을 단일 플랫폼에서 제공합니다.

구축 · Build

문서를 넣고, 읽고, 자르고, 제자리에 배정하는 단계

유입 3경로에서 색인까지 — 인제스천 파이프라인
유입 3경로에서 색인까지 — 인제스천 파이프라인

인제스천 파이프라인

멀티포맷 문서를 업로드→파싱→청킹→임베딩→색인까지 비동기 워커로 처리합니다.

txt/pdf/docx/xlsx/pptx/hwp/hwpx 등 멀티포맷 로더
소스 워치 — 드롭존 주기 스캔·무인 수집
content_hash 멱등성 · 재처리(reindex)
작업(Jobs) 진행률 추적 · 워커 분리 배포

파싱 전략 5종

문서 특성에 맞춰 파싱 전략을 컬렉션별로 선택합니다(미설치 시 자동 폴백).

text · layout(pdfplumber) · docai(docling)
vlm — 비전 LLM (스캔·복잡 레이아웃)
rhwp — 한글 HWP/HWPX 전용 Rust 파서(병합 표 보존)
가용성 introspection · 실모델 검증

청킹 전략 8종

검색 품질을 좌우하는 청킹을 표 보존·의미 경계까지 촘촘하게 구현했습니다.

recursive · fixed · sentence(한국어 kss) · paragraph · section
markdown(표·코드블록 보존·헤딩 breadcrumb) · semantic · auto
char / token(tiktoken) 단위 · 스마트 오버랩
작은 청크 병합 · 청크 예산 캡 등 품질 가드

지식베이스 설계 — fail-closed 격리

컬렉션을 주제 묶음이 아니라 보안 격리 경계로 설계했습니다.

모든 쿼리 collection_id 물리 필터링(fail-closed)
임베딩 모델·차원·거리 메트릭 불변 고정 — 벡터공간 정합성
결정적 문서 라우팅 — 우선순위·first-match-wins
보안등급 불확실 시 최고 등급 배정 특칙

검색 · 생성 · Retrieve & Generate

질문에 맞는 근거를 찾아 인용 답변을 만드는 단계

벡터·렉시컬 병렬 검색에서 인용 답변까지
벡터·렉시컬 병렬 검색에서 인용 답변까지

하이브리드 검색 & 생성

의미와 키워드를 병렬 검색해 융합하고, 인용이 달린 답변을 생성합니다.

벡터(pgvector) + 렉시컬(tsvector) + RRF 융합
리랭킹 none / llm / local / cross_encoder
[n] 그라운딩 인용 답변 · 멀티턴 챗(SSE)
페더레이션 질의 — 이종 임베딩 컬렉션 RRF 병합
교체형 벡터 저장소 — pgvector · Qdrant · Weaviate · Milvus · Databricks

모델 유연성

임베딩·리랭커·생성 LLM·VLM·OCR을 워크로드에 맞게 교체합니다.

임베딩 — local(FastEmbed) · OpenAI 호환(TEI/vLLM/Ollama) · 기본 bge-m3
생성 LLM — Claude · OpenAI 호환 · Ollama · vLLM
VLM(vLLM) · OCR 검출(PaddleOCR/EasyOCR)
컬렉션별 모델·차원·거리 지정 · 차원 자동 감지

평가 · 운영 · Evaluate & Operate

품질을 숫자로 재고, 버전으로 관리하는 단계

측정 → 최적화 → 개선 루프
측정 → 최적화 → 개선 루프

평가 하니스

골든 데이터셋과 LLM Judge로 품질을 숫자로 측정합니다.

골든셋(질문·정답 문서) 관리 · 피드백 승격
검색 지표 — Hit Rate · MRR
생성 지표 — LLM-as-Judge 3축(Faithfulness·Relevance·Correctness)
holdout · 과적합 플래그 · Judge 게이팅

설정 스윕 & 개선 루프

청킹·검색 모드·top-k·리랭커 조합을 자동 탐색하고 리더보드로 비교합니다.

쿼리 축 + 인덱스 축(임시 컬렉션) 스윕
리더보드 — Hit Rate·MRR·Judge 점수 정렬
우승 설정을 파이프라인 새 버전으로 반영 · 롤백
트레이스 → 피드백 👍/👎 → 골든셋 승격 환류

파이프라인 버전 & 관측성

검색·리랭크·생성 설정을 버전 가능한 자산으로 다루고, 모든 질의를 계측합니다.

append-only 버전 · 스테이지 · 롤백 · 필드별 diff
버전별 평가 연동 — 회귀 사전 차단
Query Trace — 단계별 지연·토큰 캡처
통계 — 성공률 · p50/p95 · 인기 질의 · API 키(M2M)

확장 · 배포 · Extend & Deploy

도메인에 맞춰 튜닝하고, 어디에든 배포하는 단계

검색 파인튜닝

도메인 용어·약어에 맞춰 임베딩·리랭커를 튜닝합니다.

용어사전 → 합성 질의 생성 · 라벨링 UI 검수
(질의·정답·오답) 트리플 학습 데이터셋 구성
JSONL 내보내기 · 외부 트레이너(M2M 콜백)
모델 레지스트리 등록 → 임베딩 서버 교체 배포

에이전트 원격 배포 & 에어갭

각 호스트의 Argus Agent가 워커·추론 서버를 배포하고, 폐쇄망에는 모델 팩으로 반입합니다.

servermgr — 에이전트 등록·원격 배포·프록시·하트비트
GPU 변형 자동 선택 — amd64 gpu(onnx) · arm64 gpu-torch
모델 팩 반입 · Model Repository 자동 설치 · 오프라인 서빙
zot OCI 레지스트리 · buildx 멀티아키 이미지

어노테이션 & 이미지 파이프라인

문서 속 이미지·스캔본을 OCR·VLM으로 지식화합니다.

이미지 OCR 라벨링 — AI-Hub JSON 호환
검출 서버 초벌 라벨 제안(PaddleOCR/EasyOCR)
이미지 탐색 · VLM 내용 분석 색인
HWP 미리보기 — Chromium 렌더(@rhwp/core)

한국 문서를 위한 파이프라인

HWP 병합 표, 스캔 PDF, 각주와 다단 편집 — 일반 RAG 프레임워크가 그대로 놓치는 문서를 전용 경로로 처리합니다.

실제 문서의 난제와 Argus RAG Studio의 대응
실제 문서의 난제와 Argus RAG Studio의 대응
  • rhwp — HWP/HWPX 전용 Rust 파서로 병합 표 구조까지 보존
  • kss 한국어 문장 분리 — 조사·인용부호를 고려한 경계
  • VLM · PaddleOCR — 스캔본·도면·이미지에서 텍스트와 캡션 추출
  • AI-Hub 호환 어노테이션 — bbox+텍스트 라벨링 입출력

에어갭까지 가는 배포

중앙 백엔드가 각 호스트의 에이전트에 원격 배포하고, 모델은 팩으로 반입해 오프라인에서 서빙합니다. 금융·공공·국방의 망분리 요건을 그대로 만족합니다.

에이전트 원격 배포와 에어갭 모델 반입 경로
에이전트 원격 배포와 에어갭 모델 반입 경로
  • servermgr → Agent :4501 — 워커·임베딩·리랭커·검출·VLM 원격 설치·기동·중지
  • GPU 변형 자동 선택 — cpu · gpu(onnx) · gpu-torch
  • zot OCI 레지스트리 — 컨테이너 이미지까지 완전 오프라인
  • 모델 레지스트리 — 팩 반입 후 배포 시 대상 서버에 자동 설치
기술 스택
Python 3.11+FastAPI (async)SQLAlchemy 2.0Pydantic v2PostgreSQL + pgvectorMinIO / S3Next.js 16React 19TypeScriptTailwind 4 · shadcn/uiFastEmbed(ONNX) · torch(cu128)Docker/Podman · zot · buildxJWT · Keycloak OIDC · API 키
Apache License 2.0 · 오픈소스

오픈소스로 공개되는 RAG 플랫폼

Argus RAG Studio는 Apache License 2.0으로 GitHub에 공개됩니다. 백엔드(FastAPI)·프론트엔드(Next.js)·독립 임베딩/리랭커 서버까지 RAG 엔진 전체를 공개해, 기업이 코드를 직접 검증하고 자사 환경에 맞게 확장하며 데이터를 외부로 내보내지 않고 운영할 수 있습니다.

  • 상용 활용 제약 없는 Apache 2.0
  • 코드 직접 검증·확장 가능
  • 에어갭·온프레미스 자체 운영