nageoffer/ragent
企业级 Agentic RAG 智能体 - 全链路覆盖文档解析、多路检索、意图识别、问题重写、会话记忆、MCP 工具调用与深度思考。面向真实业务场景,从 0 到 1 完整工程实现。
Ragent AI – Agentic RAG를 위한 프로덕션 준비 Java 플랫폼
무엇인가
- 검색 증강 생성(RAG) 및 에이전트형 AI 애플리케이션을 구축할 수 있게 해주는 Java 중심의 엔드투엔드 프레임워크입니다. 문서 수집부터 질문 응답, 외부 도구 호출, 대화 메모리 관리까지 모든 것을 다룹니다.
핵심 기능
| 영역 | Ragent가 제공하는 것 |
|---|---|
| 하이브리드 검색 | 벡터 저장소, 키워드 인덱스, 지식 그래프, 실시간 웹 검색에서 병렬로 회수합니다. 중복 제거, RRF 융합, 재순위를 지원합니다. |
| 쿼리 이해 | 쿼리 용어 매핑, 질문 재작성 및 분할, 트리 구조 인텐트 감지, 여러 지식 베이스 간 라우팅. |
| 모델 처리 | 모델 계층화, 첫 패킷 지연 감지, 서킷 브레이커 폴백, 다중 모델 라우팅. |
| 세션 메모리 | 최근 N턴 캐시 + 영속 요약으로 컨텍스트를 유지하면서 token 사용량을 제어합니다. |
| 트래픽 보호 | Redis 기반 공정 큐와 분산 동시성 제한으로 급증이 모델 서비스를 압도하는 것을 방지합니다. |
| 지식 루프 | 플러그 가능한 수집 파이프라인, 원격 새로고침, 답변 출처, 사용자 피드백, 추적, 관리 UI. |
아키텍처
- 7개의 Maven 모듈이 관심사를 분리합니다: 인프라 AI 클라이언트, 시스템 서비스, RAG 코어, Agent 엔진, bootstrap, 공유 프레임워크 유틸리티, 그리고 예제 MCP(Model‑Centered‑Programming) 도구 서버.
- 이 설계는 AI 벤더 세부사항, 스토리지 백엔드, 검색 전략을 격리하므로 메인 워크플로를 다시 작성하지 않고 컴포넌트를 교체할 수 있습니다.
에이전트형 워크플로(v2)
- ReAct 스타일 루프를 사용하여 LLM이 지식을 검색할지, MCP 도구를 호출할지, 사용자 정의 Skills를 실행할지 결정할 수 있습니다.
- 메모리는 세 가지 레벨(단기, 영속 요약, 장기)로 관리되며 쓰기 작업에 human‑in‑the‑loop 확인을 포함할 수 있습니다.
프로덕션급 기능
- Redis 공정 큐, Lua 기반 원자적 속도 제한.
- 지연 검사와 삼상 서킷 브레이커를 갖춘 다중 후보 모델 라우팅.
- 우아한 성능 저하를 갖춘 병렬 다중 채널 검색.
- 트랜잭션 RocketMQ 메시지, 멱등성, 원격 새로고침을 위한 분산 잠금.
- 전체 추적(run/node 타이밍, 입력/출력) 및 선택적 Langfuse 통합.
- 취소 지원이 있는 SSE 스트리밍, markdown 렌더링, 출처 인용, 피드백 UI.
- Sa‑Token을 통한 보안, 요청 스로틀링, 파라미터 검증.
개발자 경험
- React 프런트엔드는 사용자 채팅 UI(모델 사고, 도구 호출, 인용 표시)와 지식 베이스, 인텐트 트리, 파이프라인, 사용자, 시스템 설정을 관리하는 관리 콘솔을 모두 제공합니다.
- 고전적인 디자인 패턴(Strategy, Factory, Template Method, Chain of Responsibility 등)을 광범위하게 사용하여 Java 엔지니어가 코드베이스에 접근하기 쉽습니다.
- 문서, 온라인 데모, 빠른 시작 가이드가 프로젝트 사이트에서 제공됩니다.
누가 봐야 할까?
- Python으로 전환하지 않고 AI 기능을 추가하려는 Java 백엔드 개발자.
- RAG/Agent 지식이 기대되는 면접을 준비하는 엔지니어.
- 견고한 라우팅, 메모리, 도구 통합이 필요한 엔터프라이즈급 AI 어시스턴트를 구축하는 팀.
결론 Ragent는 Agentic RAG에 초점을 맞춘 진정한 프로덕션 지향 오픈소스 Java AI 플랫폼입니다. 장난감 데모를 훨씬 뛰어넘어 완전하고 확장 가능한 스택과 실제 배포에 필요한 많은 운영 안전장치를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트