DevYangJC/Argus

🌱 Argus 是一个基于 RAG 架构的开源知识库平台,后端采用 Java 21 + Spring Boot + MyBatis-Plus + PostgreSQL/pgvector,前端采用 Vue 3 + TypeScript + Element Plus,AI 层基于 Spring AI Alibaba(通义千问)+ ReactAgent 图引擎,以 MinIO + Elasticsearch 为存储与检索引擎。

Argus – 엔터프라이즈급 RAG 지식 베이스 플랫폼

소개 – Argus는 자체 호스팅되는 엔드투엔드 시스템으로, 기업이 개인 문서를 수집하여 검색 가능한 임베딩과 키워드 인덱스로 변환한 다음, 실제 소스 자료를 인용하도록 강제하는 대형 언어 모델 (LLM)으로 사용자 질문에 답변할 수 있게 합니다. RAG (검색 증강 생성) 파이프라인과 순수 채팅 및 지식 베이스 검색 간 전환할 수 있는 AI-Agent를 결합하여 모두 Spring Boot + Vue 웹 UI로 래핑됩니다.


핵심 기능

기능 작동 방식
문서 수집 다중 포맷 (PDF, DOCX, MD, TXT) → 비동기 ETL 파이프라인 (파싱 → 정제 → 분할 → 임베딩) → PostgreSQL + pgvector (HNSW) 및 Elasticsearch (IK + BM25)에 저장.
하이브리드 검색 병렬 벡터 검색 (코사인 거리) 및 키워드 검색; 결과는 **Reciprocal Rank Fusion (RRF)**으로 병합되며 이웃 윈도우 확장을 통해 보강됩니다.
증거 평가 4단계 평점 (NONE → WEAK → PARTIAL → SUFFICIENT). 증거가 불충분하면 시스템이 답변을 거부합니다.
인용 및 추적성 모든 답변에는 소스 문서, 청크 ID 및 관련성 점수가 포함됩니다.
AI Agent Spring AI Alibaba ReactAgent 기반 구축. 에이전트는 검색 도구 호출 여부를 결정하고, 두 가지 모드 (CHAT / KB_SEARCH)를 지원하며, 3단계로 대화 기록을 압축하고 SSE를 통해 응답을 스트리밍합니다.
엔터프라이즈 보안 역할 기반 액세스 (Admin / Owner / Manager / Member), JWT access + refresh 토큰, BCrypt 비밀번호 해싱, 그룹 수준 데이터 격리, AOP 감사 로그.
협업 초대 코드가 있는 그룹, 승인 워크플로우, 문서 및 지식 베이스 작업에 대한 세분화된 권한.

아키텍처 스냅샷

Frontend (Vue 3 + Element Plus) → API Gateway (JWT filter) →
  ├─ Auth / User / Group services
  ├─ Document service (MinIO storage) → Ingestion pipeline →
  │   ├─ PostgreSQL + pgvector (vector index)
  │   └─ Elasticsearch (keyword index)
  ├─ QA service (LLM query planning, hybrid RRF retrieval, evidence eval)
  └─ Assistant service (ReactAgent, short‑term memory, SSE)

LLM & embeddings are provided by Alibaba DashScope (Chat + text‑embedding‑v3).

기술 스택 (리포지토리에 명시된 대로)

  • 백엔드: Java 21, Spring Boot 3.5, MyBatis-Plus, PostgreSQL 16 + pgvector, Elasticsearch 8.x (IK analyzer), MinIO (S3-compatible), Spring AI Alibaba (Chat & Agent), JJWT, BCrypt, Apache PDFBox / POI.
  • 프론트엔드: Vue 3 (Composition API), TypeScript, Vite, Pinia, Element Plus, Axios.
  • 인프라: Docker-run Elasticsearch, MinIO; PostgreSQL with vector extension.

사용 대상

  • LLM 환각을 피하면서 프라이빗하고 검색 가능한 지식 베이스(예: 내부 매뉴얼, 컴플라이언스 문서)가 필요한 기업.
  • 소스 자료를 반드시 인용해야 하는 AI 증강 지원 포털을 구축하는 제품 팀.
  • 하이브리드 검색, 증거 평가 및 에이전트 기반 채팅 인터페이스를 갖춘 완전한 RAG 스택의 참조 구현을 찾는 개발자.

빠른 시작 (요약)

  1. 미들웨어 실행 – PostgreSQL + pgvector, Elasticsearch + IK plugin, MinIO (Docker 명령은 README에 제공됨).
  2. 구성backend/src/main/resources/application-local.yml을 편집하여 DB 자격 증명, MinIO 엔드포인트 및 DashScope API 키를 입력합니다.
  3. 백엔드 시작./mvnw spring-boot:run (기본 포트 10001, API 문서는 /doc.html).
  4. 프론트엔드 시작npm install && npm run dev (기본 포트 5173).
  5. 자동 생성된 관리자(admin / admin123)로 로그인하여 문서 업로드, 그룹 생성 및 질문을 시작합니다.

라이선스

MIT – 상업 및 비상업적 용도로 무료.


위의 모든 정보는 리포지토리의 README에서 직접 가져온 것이며, 추가 기능은 추론되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트