confident-ai/deepeval

The LLM Evaluation Framework

DeepEval이란 무엇인가

DeepEval은 대규모 언어 모델(LLM) 애플리케이션을 테스트하고 벤치마킹하기 위한 오픈소스 Python 프레임워크입니다. LLM 기반 에이전트, 챗봇, RAG 파이프라인 또는 언어 모델을 호출하는 모든 시스템을 위한 pytest라고 생각하면 됩니다. 테스트 케이스를 작성하고 코드에 대해 실행하며, 계속 늘어나는 평가 메트릭 라이브러리를 사용하여 결과를 자동으로 채점할 수 있습니다.


핵심 기능 (README 설명 기준)

기능 의미
즉시 사용 가능한 메트릭 30개 이상의 내장 메트릭이 정확성, 환각, 편향, 독성 등 고전적인 문제와 에이전트별 검사(작업 완료, 도구 정확성, 계획 준수), RAG별 검사(답변 관련성, 충실도, 문맥 회상)를 다룹니다.
LLM-as-a-judge G-Eval, JevEval, DAG와 같은 메트릭은 언어 모델(선택한 모든 모델)을 평가자로 사용하여 별도의 데이터셋 없이도 사람과 유사한 채점을 제공합니다.
로컬 실행 모든 메트릭은 로컬 호스트 모델이나 통계적 방법으로 실행할 수 있으므로, 원하지 않는 한 데이터를 타사 서비스로 보낼 필요가 없습니다.
컴포넌트 및 엔드투엔드 테스트 챗봇 전체를 블랙박스로 평가하거나 개별 단계(LLM 호출, 도구 사용, 검색, 하위 에이전트 핸드오프)까지 자세히 조사할 수 있습니다.
사용자 정의 메트릭 생성 자체 채점 함수를 연결할 수 있으며, DeepEval은 이를 다른 메트릭과 동일하게 처리합니다.
합성 데이터셋 생성 이 프레임워크는 시스템을 스트레스 테스트하기 위한 단일 턴 또는 다중 턴 합성 테스트 세트를 생성할 수 있습니다.
CI/CD 준비 완료 간단한 CLI(deepeval test run …)가 모든 CI 파이프라인과 통합되며, 결과를 보고서로 내보낼 수 있습니다.
프롬프트 최적화 내장된 도우미가 메트릭 결과를 기반으로 프롬프트 조정을 자동으로 제안할 수 있습니다.
10줄 미만의 벤치마킹 한 줄짜리 도우미를 통해 표준 제품군(MMLU, HellaSwag, BIG-Bench Hard 등)에서 모든 LLM을 벤치마킹할 수 있습니다.

사용 방법 (빠른 시작 흐름)

  1. 설치 – pip install -U deepeval (Python ≥ 3.9).
  2. 계정 생성 (선택 사항) – deepeval login으로 클라우드 보고용 API 키를 저장합니다.
  3. 테스트 파일 작성 – input, actual_output, expected_output 및 선택 사항인 retrieval_context를 포함하는 LLMTestCase를 정의합니다.
  4. 메트릭 선택 – 예: 정확성을 위한 GEval, 에이전트를 위한 TaskCompletionMetric, RAG를 위한 AnswerRelevancy.
  5. 실행 – deepeval test run test_chatbot.py를 실행하여 테스트를 수행하고 메트릭 임계값에 따라 통과/실패를 출력합니다.
  6. 추적 – 함수를 @observe()로 데코레이트(또는 제공된 OpenAI/AI-SDK 래퍼 사용)하여 전체 의사결정 궤적을 캡처한 다음, 궤적 인식 메트릭으로 평가합니다.

생태계 통합

DeepEval은 가장 인기 있는 LLM 툴킷용 어댑터를 제공하므로 코드 변경 없이 평가를 추가할 수 있습니다:

  • LangChain / LangGraph – 콜백 핸들러가 각 체인 단계를 캡처합니다.
  • CrewAI, Pydantic AI, Mastra – 다중 에이전트 워크플로우를 위한 네이티브 추적.
  • Anthropic, OpenAI, AWS AgentCore, Google ADK – 래퍼를 통해 Claude, GPT-4, Amazon 에이전트 등을 평가할 수 있습니다.
  • LlamaIndex – 검색 증강 생성 파이프라인을 평가합니다.
  • AI SDK (TypeScript) – JavaScript/TS 프로젝트를 위한 클라이언트 측 추적.

기업의 경우, 상용 Confident AI 플랫폼이 UI, 데이터셋 관리 및 프로덕션 관찰 가능성을 추가하며, 동일한 DeepEval 메트릭 정의를 재사용할 수 있습니다.


대상 사용자

  • LLM 개발자: 에이전트, 챗봇 또는 RAG 서비스를 구축하며 체계적인 회귀 테스트가 필요한 분.
  • ML 엔지니어: 모델 업그레이드나 프롬프트 변경을 자동으로 벤치마킹하려는 분.
  • 제품 팀: 출시 전 품질 표준(편향, 독성, 환각)을 강제해야 하는 분.
  • 연구원: LLM-as-a-judge 메트릭을 새로운 작업에 적용할 재현 가능한 방법이 필요한 분.

추가 정보


결론: DeepEval은 LLM 중심 소프트웨어를 위해 특별히 제작된 테스트 프레임워크로, 풍부하고 확장 가능한 메트릭 세트, 주요 LLM 툴킷과의 긴밀한 통합, Confident AI를 통한 선택적 엔터프라이즈급 관찰 가능성을 제공합니다. LLM 애플리케이션을 기존 코드베이스와 동일한 엄격함으로 다룰 수 있게 해줍니다.

관련

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