Bessouat40/RAGLight
RAGLight is a modular framework for Retrieval-Augmented Generation (RAG). It makes it easy to plug in different LLMs, embeddings, and vector stores, and now includes seamless MCP integration to connect external tools and data sources.
해결하는 문제
RAGLight는 검색 증강 생성(RAG) 및 에이전트 파이프라인을 구축하기 위한 경량의 의존성 없는 툴킷을 제공합니다. 엄격한 상속 대신 구조적 프로토콜(덕 타이핑)을 사용하여 프레임워크의 비대해진 의존성 문제를 해결하며, 개발자가 특정 벤더의 SDK에 종속되지 않고 LLM, 벡터 저장소, 임베딩 모델을 자유롭게 교체할 수 있도록 합니다.
작동 방식
이 라이브러리는 의존성이 없는 계약(contract)을 핵심으로 구축되었습니다. 간단한 메서드를 구현하여 컴포넌트(LLM, 벡터 저장소 등)를 정의하거나, OpenAI, Ollama, Chroma, Qdrant와 같은 일반적인 도구에 대한 내장 통합 기능을 사용할 수 있습니다. 파이프라인은 기본적으로 상태 비저장(stateless) 방식이지만, 세션 기반 기록 및 대화형 쿼리 재구성을 지원합니다. 에이전트 워크플로우는 도구 실행 및 의사 결정 루프를 관리하는 별도의 AgenticPipeline을 통해 처리됩니다.
대상 사용자
무겁고 독단적인 프레임워크의 오버헤드 없이 깔끔하고 모듈화된 타입 안전 방식으로 RAG 애플리케이션을 구축하려는 Python 개발자를 위한 도구입니다. 특히 의존성 주입을 선호하고 파이프라인 컴포넌트를 완전히 제어하고자 하는 분들에게 적합합니다.
주요 특징
- 제로 의존성 코어: 핵심 패키지는 타사 런타임 의존성을 전혀 포함하지 않습니다.
- 구조적 프로토콜: 사용자 정의 컴포넌트가 특정 기본 클래스를 상속할 필요가 없어 통합이 간편합니다.
- 에이전트 지원: MCP (Model Context Protocol) 도구 지원을 포함하여 에이전트 워크플로우를 위한 전용 네임스페이스를 제공합니다.
- 유연한 구성: 코드 우선 워크플로우를 위한 직접적인 객체 주입과 JSON 또는 TOML 파일에서 파이프라인을 로드하기 위한 레지스트리 기반 구성을 모두 지원합니다.
- 네이티브 트레이싱: Langfuse와의 내장 통합을 통해 기존 RAG 파이프라인과 에이전트 RAG 파이프라인 모두에서 관측 가능성을 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트