LLM 평가 퀵스타트

LLM 평가 퀵스타트 (LLM Evaluation Quickstart)

코드 기반 LLM 평가 워크플로우를 위한 5분 퀵스타트 가이드예요. Confident AI는 배포 전(pre-deployment) 워크플로우에서 코드로 AI 앱을 테스트하는 다양한 기능을 제공해요. 로컬에서 deepeval로, 또는 원격으로 Confident AI 플랫폼에서 평가를 실행할 수 있으며, 둘 다 같은 기능을 제공해요.

출처: 문서

본문

개요

Confident AI는 배포 전 워크플로우에서 코드로 AI 앱을 테스트하기 위한 다양한 기능을 제공하며, 다음을 폭넓게 지원해요:

  • 싱글턴 평가 (Single-turn evaluation): 인풋-아웃풋을 별개의 AI 상호작용으로 봐요.
    • 종단 간(End-to-end): AI 앱을 블랙박스로 취급해요.
    • 컴포넌트 레벨(Component-level): 에이전틱 유스케이스를 위해 설계 — 각 에이전트 단계와 컴포넌트(planner, tools, memory, retriever, prompts)를 세밀한 어서션으로 디버그해요.
  • 멀티턴 평가 (Multi-turn evaluation): 일관성, 상태/메모리 유지 등을 위해 전체 대화를 검증해요.

평가는 로컬에서 코드로, 또는 원격으로 Confident AI에서 실행할 수 있으며, 둘 다 같은 기능을 제공해요:

로컬 평가 (Local Evals)

  • 메트릭을 완전히 제어하며 deepeval로 로컬에서 평가 실행
  • 커스텀 메트릭, DAG, 고급 평가 알고리즘 지원

적합한 대상: Python 사용자, 개발, 배포 전 워크플로우

원격 평가 (Remote Evals)

  • 사전 구축된 메트릭으로 Confident AI 플랫폼에서 평가 실행
  • 모니터링, 데이터셋, 팀 협업 기능과 통합

적합한 대상: 비 Python 사용자, 프로덕션 트레이싱을 위한 온라인 + 오프라인 평가

이발(코드)로 평가하기 (Vibe Code Your Evals)

코딩 에이전트가 데이터셋, 메트릭, pytest 파일, 공유 가능한 Confident AI 리포트까지 평가 스위트를 만들어주게 하세요. 더 나아가 DeepEval을 빌드 루프의 근거(ground truth)로 사용해요: 에이전트가 평가를 실행하고, 실패와 reason 문자열을 읽고, 가장 작은 앱 변경을 한 뒤, 재실행해 확인해요. 아래에서 에이전트에 맞는 설치 방법을 선택하세요.

Claude Code (플러그인)

Claude Code에서 다음 네 가지 명령을 실행하세요:

/plugin marketplace add confident-ai/deepeval
/plugin install deepeval@deepeval-plugins
/reload-plugins
/plugins

/plugins 명령은 설치된 플러그인 아래 DeepEval Plugin을 보여줘야 해요.

Cursor, Codex, Windsurf 등 (Skills CLI)

deepeval Agent Skill을 어떤 Skills 호환 설치기와 함께 설치하세요. 이는 Cursor, Claude Code, Codex, Windsurf, OpenCode 및 Skills 표준을 지원하는 다른 어시스턴트와 동작해요:

npx skills add confident-ai/deepeval --skill deepeval

이 스킬은 에이전트에게 올바른 테스트 형태(single-turn / multi-turn / component-level)를 고르고, 골든스를 재사용하거나 생성하고, 커밋된 tests/evals/ 스위트를 작성하고, deepeval test run을 실행하고, 실패를 읽고, 반복하는 방법을 가르쳐요. 아래와 같은 프롬프트에서 자동으로 발동돼요.

설치 후 평가하고 싶은 프로젝트를 열고 에이전트에게 필요한 것을 말하세요. 예시 프롬프트:

  • "Create a DeepEval pytest eval suite for this app, generate ~30 goldens, and push results to Confident AI."
  • "My app is a RAG pipeline — set up DeepEval evals with retrieval-focused metrics."
  • "Generate a dataset from the docs in ./knowledge and run them through DeepEval."

에이전트는 인테이크 질문(intake questions)을 실행하고, 메트릭을 고르고, deepeval generate로 골든스를 생성하고, CI에서 재실행할 수 있는 커밋된 pytest 스위트를 생산해요.

에이전트가 올바른 메트릭과 API를 고르도록 LLM 친화적 문서를 가리키세요: llms.txt가 모든 페이지를 인덱싱해요(문서 URL에 .md를 붙이면 해당 페이지의 원시 마크다운을 얻을 수 있어요). 에이전트를 docs MCP server에 직접 연결할 수도 있어요.

Claude Code 플러그인은 현재 Python 우선이에요. Claude Code의 TypeScript 지원은 곧 제공됩니다 — 지금은 아래 TypeScript 단계를 직접 따르세요.

첫 번째 평가 실행하기

이 예시는 코드에서 싱글턴, 종단 간 평가를 다뤄요.

계속하기 전에 설정 및 설치 섹션에 나온 대로 API 키를 받아야 해요.

Python

API 키로 로그인

export CONFIDENT_API_KEY="confident_us..."

데이터셋 만들기

제대로 된 평가 워크플로우에는 데이터셋을 만드는 것이 필수예요.

팀이 지금 데이터셋을 만들 수 없다면, 데이터셋 없이 임시(ad-hoc) 평가를 실행하도록 LLM 트레이싱을 설정하세요. 이렇게 하면 Confident AI가 데이터셋을 자동으로 생성해줘요.

코드

from deepeval.dataset import EvaluationDataset, Golden
# goldens are what makes up your dataset
goldens = [Golden(input="What's the weather like in SF?")]
# create dataset
dataset = EvaluationDataset(goldens=goldens)
# save to Confident AI
dataset.push(alias="YOUR-DATASET-ALIAS")

완료 ✅. 이제 플랫폼에서 데이터셋을 볼 수 있어요.

플랫폼에서

UI의 Project > Datasets 아래에서 만들고, CSV로 골든스를 업로드할 수 있어요:

Video

Confident AI에서 데이터셋 만들기

메트릭 만들기

deepeval에서 로컬로 메트릭을 만들어요. 여기서는 데모 목적으로 AnswerRelevancyMetric()을 사용할게요.

from deepeval.metrics import AnswerRelevancyMetric

relevancy = AnswerRelevancyMetric() # Using this for the sake of simplicity

평가 모델 구성

deepeval의 모든 메트릭은 LLM-as-a-Judge를 사용하므로 LLM 심사(judge) 프로바이더도 구성해야 해요. 평가에 OpenAI를 사용하려면:

export OPENAI_API_KEY="sk-..."

deepeval이 모든 모델 프로바이더와 통합되므로 어떤 프로바이더든 사용할 수 있어요.

테스트 런 만들기

테스트 런은 특정 시점의 AI 앱 성능에 대한 벤치마크/스냅샷이에요. 다음을 해야 해요:

  • 데이터셋의 모든 골든스를 테스트 케이스로 변환한 뒤,
  • 만든 메트릭으로 각 테스트 케이스를 평가
from deepeval.dataset import EvaluationDataset
from deepeval.test_case import LLMTestCase
from deepeval.metrics import AnswerRelevancyMetric
from deepeval import evaluate

# Pull from Confident AI
dataset = EvaluationDataset()
dataset.pull(alias="YOUR-DATASET-ALIAS")

# Create test cases
for golden in dataset.goldens:
    test_case = LLMTestCase(
        input=golden.input,
        actual_output=llm_app(golden.input) # Replace with your AI app
    )
    dataset.add_test_case(test_case)

# Run an evaluation
evaluate(test_cases=dataset.test_cases, metrics=[AnswerRelevancyMetric()])

마지막으로 main.py를 실행해 첫 싱글턴, 종단 간 평가를 실행하세요:

python main.py

✅ 완료. Confident AI에 공유 가능한 테스팅 리포트가 자동 생성된 첫 테스트 런을 만든 거예요.

TypeScript

API 키로 로그인

export CONFIDENT_API_KEY="confident_us..."

데이터셋 만들기

제대로 된 평가 워크플로우에는 데이터셋을 만드는 것이 필수예요.

팀이 지금 데이터셋을 만들 수 없다면, 데이터셋 없이 임시(ad-hoc) 평가를 실행하도록 LLM 트레이싱을 설정하세요. 이렇게 하면 Confident AI가 데이터셋을 자동으로 생성해줘요.

코드

import { EvaluationDataset, Golden } from "deepeval";

async function createDataset() {
  // goldens are what makes up your dataset
  const goldens = [new Golden({ input: "What's the weather like in SF?" })];
  // create dataset
  const dataset = new EvaluationDataset({ goldens: goldens });
  // save to Confident AI
  await dataset.push({ alias: "YOUR-DATASET-ALIAS" });
}

createDataset().catch(console.error);

완료 ✅. 이제 플랫폼에서 데이터셋을 볼 수 있어요.

플랫폼에서

UI의 Project > Datasets 아래에서 만들고, CSV로 골든스를 업로드할 수 있어요:

Video

Confident AI에서 데이터셋 만들기

메트릭 컬렉션 만들기

Project > Metrics > Collections 아래에서 평가에 사용할 메트릭으로 메트릭 컬렉션을 만들어요.

Video

테스트 런 만들기

테스트 런은 특정 시점의 AI 앱 성능에 대한 벤치마크/스냅샷이에요. 다음을 해야 해요:

  • 데이터셋의 모든 골든스를 테스트 케이스로 변환한 뒤,
  • 만든 메트릭 컬렉션으로 각 테스트 케이스를 평가
import { EvaluationDataset, LLMTestCase, Golden, evaluate } from "deepeval";

async function runEvaluation() {
  // Pull from Confident AI
  const dataset = new EvaluationDataset();
  await dataset.pull({ alias: "YOUR-DATASET-ALIAS" });

  // Create test cases
  for (const golden of dataset.goldens as Golden[]) {
    const testCase = new LLMTestCase({
      input: golden.input,
      actualOutput: await llmApp(golden.input), // Replace with your AI app
    });
    dataset.addTestCase(testCase);
  }

  // Run an evaluation
  await evaluate({
    llmTestCases: dataset.testCases as LLMTestCase[],
    metricCollection: "YOUR-METRIC-COLLECTION-NAME",
  });
}

runEvaluation().catch(console.error);

마지막으로 index.ts를 실행해 첫 싱글턴, 종단 간 평가를 실행하세요:

tsx index.ts

✅ 완료. Confident AI에 공유 가능한 테스팅 리포트가 자동 생성된 첫 테스트 런을 만든 거예요.

Video

Confident AI의 테스팅 리포트

테스팅 리포트에는 두 개의 주요 페이지가 있어요:

  • Overview — 테스트에 사용된 데이터셋, 각 메트릭의 평균·중앙값·분포 등 테스트 런의 메타데이터를 보여줘요
  • Test Cases — 테스트 런의 모든 테스트 케이스를 보여주며, 테스트 벤치의 AI 생성 요약과 심층 디버깅·분석을 위한 메트릭 데이터를 포함해요

테스트 런이 두 개 이상이면 A|B 회귀 테스트를 시작할 수도 있어요.

다음 단계

첫 평가를 실행했으니 싱글턴 테스트를 더 깊이 파볼게요:

종단 간 평가 (End-to-End Evals)

AI 앱을 블랙박스로 취급해요. LLM 트레이싱으로 더 나은 디버깅을 하고, 원격 평가를 실행하며, A|B 테스트를 위해 하이퍼파라미터를 기록하는 방법을 배워요.

컴포넌트 레벨 평가 (Component-Level Evals)

리트리버, 생성기, 툴 같은 개별 컴포넌트를 테스트해요. 세밀한 어서션이 필요한 에이전틱 유스케이스에 적합해요.

더 알아보기