본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 06. 10. 04:05

ChinaYiqun/java-rag

요약

이 프로젝트는 Spring Boot 같은 프레임워크 의존성 없이 순수 Java로 구현된 RAG(Retrieval-Augmented Generation) 파이프라인 및 Agent 패턴을 제공합니다. Redis, Elastic Search 등 주요 DB 통합과 다양한 청킹/검색 전략을 지원하여 엔터프라이즈 환경에 적합한 모듈형 아키텍처를 갖추고 있습니다.

핵심 포인트

  • 순수 Java 기반으로 구현되어 프레임워크 의존성이 낮음
  • Redis, Elastic Search 등 주요 DB 통합 및 다중 턴 대화 지원
  • 다양한 청킹(Semantic/Recursive) 및 검색 전략 구성 가능
  • OpenAI 스타일의 LLM/Embedding 인터페이스 제공

RAG (Retrieval - Augmented Generation) 프로젝트로, JFinal이나 spring-boot 같은 프레임워크에 의존하지 않고 순수 Java로 구현되었습니다. RAG 파이프라인과 Agent 패턴을 제공하여 엔터프라이즈 레벨 환경에 적응하기 쉽고 2차 개발에 더 용이합니다.

public void demoNaiveRAG() {
NaiveRAG naiveRAG = new NaiveRAG(
new Document("./202X Enterprise Plan.pdf"),
...
  • Redis를 이용한 다중 턴(multi-turn) 대화 읽기 및 쓰기

  • MinIO 파일 저장소

  • Elastic Search 검색 엔진

  • OpenAI 채팅 인터페이스

  • Ollama 채팅 인터페이스

  • 다중 턴 대화 기반 채팅

  • Word

  • PPT

  • EXCEL

  • PPT

  • Markdown, HTML

  • 고정 크기(Fixed size)

  • 문장 분할(Sentence splitting)

  • 재귀적 분할(Recursive splitting)

  • 의미론적 청킹(Semantic chunking)

  • Jina-Cobert

  • Baichuan

  • 검색(Recall)

  • 정렬(Sorting)

  • 재순위화(Re-ranking)

  • 고급 RAG (Advanced RAG)

  • 모듈형 RAG (Modular RAG)

  • MASExample.java

  • RoundRobinLoadBalancer

  • WeightedRandomLoadBalancer

설명

├── agent
├── chunk
├── constant
...
  • 코드 복제 (Clone the code)
    git clone https://github.com/ChinaYiqun/java-rag.git

  • 프로젝트 디렉토리로 이동
    cd java-rag

  • Maven 의존성 구성
    mvn clean install

  • 관련 데이터베이스 생성

sysctl -w vm.max_map_count=262144
# Docker 네트워크 생성
docker network create elastic
...
  • 자세한 내용은 링크를 참조하세요.

  • OpenAI 스타일의 LLM/Embedding 인터페이스

  • pom.xml (Maven)을 이용한 매우 간단한 의존성 관리

  • 다중 사용자 및 다중 지식 기반 관리를 지원합니다.

  • 검색 전략의 자유로운 구성: 다중 채널 검색(multi-channel recall), 거친 정렬(rough sorting), 미세 정렬(fine sorting), 재순위화(re-ranking)

  • 파일 청킹의 자유로운 구성: 고정 크기, 문장 분할, 재귀적 분할, 의미론적 청킹

  • Apache POI을 이용한 주류 파일 파싱 지원

  • 주요 데이터베이스 통합: Elastic Search, Redis, Mysql, MinIO

  • Nacos를 통한 높은 사용자 정의 구성

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0