Evals 개요 — 태스크 정의부터 반복 개선까지

Evals 개요

Evals(평가)는 모델 출력이 지정한 스타일·내용 기준을 충족하는지 테스트하는 과정이에요. LLM 앱이 기대대로 동작하는지, 특히 모델 버전을 올리거나 바꿀 때 성능 변화를 파악하는 핵심 도구예요.

세 단계 흐름

  1. 태스크 정의 — 모델이 해야 할 일을 eval로 서술
  2. 테스트 입력으로 실행 — 프롬프트와 데이터로 실행
  3. 결과 분석·개선 — 결과를 보고 프롬프트를 다듬어 반복

이 방식은 동작 기반 개발(BDD)과 비슷해요. 구현·테스트 전에 '시스템이 어떻게 동작해야 하는지'를 먼저 명세하는 거예요.

예: IT 티켓 분류

from openai import OpenAI
client = OpenAI()

instructions = (
    "Categorize the support ticket as Hardware, Software, or Other. "
    "Respond with only one of those words."
)
response = client.responses.create(
    model="gpt-6-astra",
    input=[
        {"role": "developer", "content": instructions},
        {"role": "user", "content": "My monitor won't turn on - help!"},
    ],
)
print(response.output_text)

핵심 포인트

평가는 단발성이 아니라 지속적 반복이에요. 데이터셋을 만들어 두고 모델·프롬프트를 바꿀 때마다 같은 테스트를 돌려 회귀(성능 저하)를 잡아내는 문화가 중요해요.

더 알아보기