RAG 시스템 및 AI 에이전트를 위한 오픈소스 평가 프레임워크
요약
OpenAgent Eval은 RAG 시스템과 AI 에이전트를 위한 오픈소스 평가 프레임워크입니다. 이 도구는 로컬 우선, 프레임워크에 구애받지 않으며, pytest 수준의 단순성으로 복잡한 AI 평가를 간소화합니다. 검색, 생성, 충실도 등 18가지 이상의 지표를 제공하며 프로덕션 환경에서도 사용 가능하도록 설계되었습니다.
핵심 포인트
- pytest처럼 간단하게 RAG/AI 에이전트 평가가 가능합니다.
- LangChain, LlamaIndex 등 모든 파이프라인에서 작동하는 프레임워크 독립적입니다.
- 로컬에서 실행되어 클라우드 서비스나 인증이 필요 없습니다.
- 검색, 생성, 충실도 등 18가지 이상의 다양한 지표를 제공합니다.
RAG 시스템 및 AI 에이전트를 위한 오픈 소스 평가 프레임워크.
로컬 우선(Local-first). 프레임워크에 구애받지 않음(Framework-agnostic). 개발자 친화적(Developer-friendly).
RAG 시스템을 평가하는 것이 박사 학위나 클라우드 계정을 요구해서는 안 됩니다. OpenAgent Eval은 AI 평가에 pytest 수준의 단순성을 가져옵니다— 터미널에서 실행하고, 실행 가능한 통찰력을 얻고, 자신감을 가지고 배포할 수 있습니다.
로컬 우선(Local-first)— 클라우드 서비스, 대시보드 또는 인증이 필요하지 않음
프레임워크에 구애받지 않음(Framework-agnostic)— LangChain, LlamaIndex 또는 모든 사용자 정의 RAG 파이프라인에서 작동
18가지 이상의 지표(metrics)— 검색(Retrieval), 생성(generation), 충실도(faithfulness), 관련성(relevancy), 성능(performance) 및 비용(cost)
플러그인 기반(Plugin-based)— 사용자 정의 지표, 제공업체 및 보고서 생성기로 확장
프로덕션 준비 완료(Production-ready)— 코퍼스 감사(Corpus auditing), 실패 진단(failure diagnosis), 합성 테스트 데이터 생성
pip install openagent-eval
개발용으로:
git clone https://github.com/OpenAgentHQ/openagent-eval.git
cd openagent-eval
uv sync
내장된 목(mock) 제공업체는 네트워크 호출이나 자격 증명 없이 전체 평가를 로컬에서 실행합니다. openagent-eval을 설치한 후 이 블록을 복사하여 붙여넣으세요:
:
cat > quickstart-dataset.json <<'JSON'
[
{
...
이것은 결정론적 오프라인 대체품(deterministic offline stand-ins)을 사용하여 실제 모델이나 벡터 저장소를 구성하기 전에 전체 데이터셋 → 검색 → 생성 → 지표 → 보고서 흐름을 검증할 수 있게 합니다.
oaeval init --interactive
이 마법사(wizard)는 사용자에게 데이터셋 경로, LLM 제공업체 및 모델, 리트리버(retriever), 지표 프리셋(metric preset) 및 보고서 형식을 안내한 다음, 실행 준비가 된 config.yaml 파일을 작성합니다.
.
oaeval validate config.yaml
oaeval run config.yaml
oaeval report latest
OpenAgent Eval은 커뮤니티가 구축했으며 모든 경험 수준의 기여자를 환영합니다. 이 도구를 사용해 본 적이 있다면, 공유할 가치가 있는 무언가를 이미 알고 있을 것입니다— 버그, 문서의 미흡한 부분, 또는 존재하기를 바라는 지표 같은 것들.
도움 줄 수 있는 방법:
코드(Code) — 좋은 첫 이슈를 맡거나 '도움 필요(help wanted)'로 표시된 것을 처리하고, 버그를 수정하거나 메트릭 또는 프로바이더를 추가하세요. 문서(Docs) — 가이드를 명확히 하거나, 오타를 수정하거나, 문서를 확장하세요. 버그 보고서(Bug reports) — 예상치 못한 문제가 발생했나요? 재현 단계를 포함하여 이슈를 여세요. 튜토리얼 및 예제(Tutorials & examples) — examples/에 추가하여 OpenAgent Eval을 사용하는 방법을 보여주세요.
시작하기:
- 저장소를 포크하고 기능 브랜치를 생성하세요 (
git checkout -b feature/your-change). - 변경 사항을 적용하고 적절한 곳에 테스트를 추가하세요.
- 검사를 실행하세요 (
uv run pytest및uv run ruff check .). - 풀 리퀘스트(pull request)를 여세요.
프로젝트가 처음이신가요? CONTRIBUTING.md에서 설정, 개발 워크플로우, 코딩 컨벤션을 자세히 설명합니다.
연결할 곳:
- GitHub Discussions — 질문을 하거나, 아이디어를 공유하거나, 자신이 만든 것을 보여주세요.
- GitHub Issues — 버그 보고 및 기능 요청
- Documentation — 가이드 및 API 레퍼런스
- Changelog — 릴리스 이력
| 기능 | 설명 |
|---|---|
| CLI + SDK | 명령줄 또는 Python 라이브러리로 가져와 사용 |
| 아름다운 리포트(Beautiful Reports) | 터미널, 마크다운, HTML 및 JSON 출력 형식 |
| 실패 분석(Failure Analysis) | 평가가 왜 실패했는지 식별 (단지 실패했다는 것만 아님) |
| 코퍼스 건강 감사기(Corpus Health Auditor) | 평가 전에 모순, 구식화, 중복을 감지 |
| LLM-as-Judge 메트릭 | 충실도 및 관련성에 대한 NLI 기반 점수 |
| 컴포넌트 진단(Component Diagnosis) | 책임 할당 — 검색 대 생성 대 청킹 |
| 합성 테스트 데이터(Synthetic Test Data) | 지식 기반에서 테스트 케이스 자동 생성 |
검색 메트릭(Retrieval Metrics)
- 컨텍스트 정밀도 및 재현율 (Context Precision & Recall)
- 정밀도@K 및 재현율@K (Precision@K & Recall@K)
- 적중률 (Hit Rate)
- 평균 역개수 순위 (Mean Reciprocal Rank, MRR)
- 정규화 할인 누적 이득 (Normalized Discounted Cumulative Gain, NDCG)
생성 메트릭(Generation Metrics)
- 충실도 (Faithfulness) (NLI 기반)
- 답변 관련성 (Answer Relevancy) (NLI 기반)
- 환각 감지 (Hallucination Detection)
- 의미적 유사성 (Semantic Similarity)
- 정확 일치 및 F1 점수 (Exact Match & F1 Score)
- BLEU 및 ROUGE
- BERTScore
- LLM-as-Judge (사용자 정의 기준)
성능 및 비용(Performance & Cost)
- 지연 시간 추적 (임베딩, 검색, LLM 단계)
- 토큰 계산 (프롬프트, 완료, 총합)
- 제공업체별 비용 추정치
LLM 제공업체: OpenAI · Anthropic · Google Gemini · Groq · OpenRouter · Ollama
검색기(Retriever) 제공업체: Chroma · Qdrant · Pinecone · Weaviate · FAISS · pgvector · Elasticsearch · BM25
| 명령어 | 설명 |
|---|---|
oaeval init | 설정 파일 생성 (대화형 마법사) |
oaeval run <config> | 평가 파이프라인 실행 |
oaeval report <id> | 평가 보고서 보기 |
oaeval compare <a> <b> | 두 실험 비교 |
oaeval list | 이전 평가 목록 보기 |
oaeval validate <config> | 설정 유효성 검사 |
oaeval doctor | 환경 및 종속성 확인 |
oaeval audit --corpus <path> | 코퍼스 상태 감사 |
oaeval diagnose --report <id> | 실패 진단 및 원인 규명 |
oaeval synth --corpus <path> | 합성 테스트 케이스 생성 |
from openagent_eval.core import Engine
from openagent_eval.config import load_config
config = load_config(
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Claude Ecosystem의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기