deepeval은(는) 무엇을 하나요?
LLM 애플리케이션을 위한 단위 테스트 프레임워크입니다. 개발자에게 에이전트 워크플로우의 회귀 패턴을 테스트할 수 있는 자동화된 도구를 제공합니다.
개요
LLM 기반 에이전트와 애플리케이션의 안정성을 보장하는 것은 어려운 일입니다. deepeval은 LLM 출력을 평가하고 회귀를 탐지하는 구조화된 접근 방식을 제공하여 이 문제를 해결합니다. 이를 통해 개발자는 기존 테스트 도구와 유사한 방식으로 'LLM 테스트'를 작성, 실행, 유지 관리할 수 있습니다.
주요 기능
- 자동화된 평가: 여러 메트릭(정확성, 관련성, 충실도 등)에 대해 LLM 출력을 자동으로 평가합니다.
- 회귀 탐지: 에이전트 동작 또는 프롬프트 변경 후 LLM 동작의 회귀를 자동으로 식별합니다.
- CI/CD 통합: 테스트를 CI/CD 파이프라인에 원활하게 통합하여 배포 전 품질을 보장합니다.
- 사용자 정의 메트릭: 특정 사용 사례에 맞게 사용자 정의 평가 메트릭을 정의할 수 있습니다.
사용 방법
deepeval을 설치합니다:pip install deepeval- 평가용 데이터셋을 정의합니다. (샘플 입력 및 예상 출력)
- 사용할 메트릭을 지정하여 테스트 케이스를 작성합니다.
deepeval test run명령어를 사용하여 테스트 스위트를 실행합니다.- 자세한 보고서를 검토하고 회귀를 식별합니다.
예제
from deepeval import evaluate
from deepeval.metrics import AnswerRelevancyMetric
from deepeval.test_case import LLMTestCase
# 테스트 케이스 정의
test_case = LLMTestCase(
input="프랑스의 수도는 어디인가요?",
actual_output="프랑스의 수도는 파리입니다.",
expected_output="파리"
)
# 메트릭 정의
metric = AnswerRelevancyMetric()
# 평가 실행
result = evaluate([test_case], [metric])
print(result)
지원 플랫폼
- Python 3.8+
- CI/CD 도구 (Jenkins, GitLab CI, GitHub Actions 등)
- LangChain, LlamaIndex와 같은 에이전트 프레임워크