싱글턴 평가

싱글턴 평가 (Single-Turn Evals, 노코드)

Q&A, 요약, 분류 같은 원샷(one-shot) 상호작용을 평가해볼게요. 싱글턴 평가는 하나의 인풋 → 하나의 아웃풋 상호작용을 테스트해요. 각 요청이 독립적이고 대화 기록에 의존하지 않는 유스케이스가 대상이에요.

출처: 문서

본문

개요

싱글턴 평가는 하나의 인풋 → 하나의 아웃풋 상호작용을 테스트해요. 각 요청이 독립적이고 대화 기록에 의존하지 않는 유스케이스예요:

  • Q&A 시스템 — 문서나 지식 베이스에서 질문에 답하기
  • 요약 (Summarization) — 긴 콘텐츠를 핵심 포인트로 압축
  • 분류 (Classification) — 텍스트를 미리 정의된 라벨로 분류
  • RAG 파이프라인 — 컨텍스트를 활용한 검색 증강 생성

싱글턴 평가는 AI 앱을 블랙박스로 취급해요 — 평가에는 아웃풋, 호출된 툴, 리트리벌 컨텍스트만 중요해요.

요구 사항

싱글턴 평가를 실행하려면 다음이 필요해요:

  1. 싱글턴 데이터셋 — input과 선택적으로 expected_output, context 등을 가진 골든스
  2. 싱글턴 메트릭 컬렉션 — 평가할 메트릭

퀵스타트를 완료했다면 둘 다 이미 준비돼 있어요.

동작 방식

노코드 평가는 간단한 4단계 과정을 따라요:

  1. 메트릭 정의 — 측정할 품질 측면을 선택 (예: relevancy, faithfulness)
  2. 데이터셋 생성 — 인풋, 예상 아웃풋 등의 파라미터로 골든스 구축
  3. AI 아웃풋 생성 — AI 앱의 실제 아웃풋 제공
  4. 평가 — 테스트 케이스에 메트릭 실행 및 결과 확인

평가 중 데이터 흐름을 시각적으로 보면:

sequenceDiagram
    participant User as You
    participant Platform as Confident AI
    participant AI as Your AI App
    participant Metrics as Metric Collection

    User->>Platform: Start Evaluation

    loop For each golden in dataset
        Platform->>AI: Send input
        AI-->>Platform: Generate output
        Platform->>Metrics: Run Metrics on test case
        Metrics-->>Platform: Metric scores
    end

    Platform-->>User: Test Run Produced
    Note over User,Platform: View results on Dashboard

다이어그램의 "AI 앱"은 싱글 프롬프트, 멀티 프롬프트, 또는 인터넷으로 접근 가능한 완전한 AI 앱까지 무엇이든 될 수 있어요. 자세한 내용은 이후 섹션에서 다뤄요.

평가 실행하기

데이터셋 페이지 오른쪽 위의 Evaluate 버튼을 클릭해 데이터셋을 평가할 수 있어요.

싱글턴 데이터셋의 Evaluate 버튼

데이터셋과 메트릭 선택

  1. Project > Datasets로 이동해 평가할 싱글턴 데이터셋 선택
  2. Evaluate 클릭
  3. 싱글턴 메트릭 컬렉션 선택

아웃풋 생성 구성

actual output을 어떻게 생성할지 선택해요:

프롬프트 (Prompt)

싱글턴 평가를 위한 프롬프트 구성

싱글 프롬프트 시스템의 경우, Confident AI가 설정된 LLM 프로바이더를 호출하는 데 사용할 프롬프트 템플릿을 선택해요.

  1. 원하는 프롬프트와 프롬프트 버전을 아웃풋 생성 방식으로 선택
  2. 현재 데이터셋의 골든스 필드를 프롬프트에 정의된 변수에 매핑
  3. Confident AI가 각 골든스에 대해 프롬프트를 호출해 아웃풋 자동 생성

이 기능이 동작하려면 기존 프롬프트가 필요해요. 아직 없다면 Prompt Studio에서 프롬프트를 만들 수 있어요.

AI 연결 (AI Connection)

싱글턴 평가를 위한 AI 연결 구성

배포된 AI 시스템의 경우 Confident AI를 HTTP 엔드포인트에 직접 연결해요.

  1. Settings → AI Connections로 이동해 연결 생성
  2. 엔드포인트 URL, 요청 페이로드 매핑, 응답 파싱, 헤더 구성
  3. 평가 설정에서 이 AI 연결을 아웃풋 생성 방식으로 선택

이 기능이 동작하려면 기존 AI 연결이 필요해요. 아직 없다면 프로젝트 설정에서 AI 연결을 만들 수 있어요.

에이전트 응답 시간이 길다면 AI 연결에서 Async Responses를 활성화해, Confident AI가 각 아웃풋을 기다리며 연결을 계속 열어 두지 않게 하세요.

실행 및 결과 확인

Run Evaluation을 클릭하고 완료될 때까지 기다려요. 다음을 보여주는 테스트 런 대시보드로 리다이렉트돼요:

  • 점수 분포 — 각 메트릭의 평균, 중앙값, 백분위
  • 통과/실패 결과 — 모든 메트릭이 임계값을 충족할 때만 테스트 케이스 통과
  • AI 생성 요약 — 패턴과 이슈의 자동 분석
  • 개별 테스트 케이스 — 특정 실패 드릴다운

Video

싱글턴 테스트 런 결과

장시간 실행되는 에이전트 (Long-Running Agents)

일부 에이전트는 응답 시간이 길 수 있어요. 이런 에이전트를 위해 Confident AI는 Long-Running Agent 모드를 지원해요. 에이전트가 응답할 때까지 연결을 열어 두는 대신, Confident AI가 각 골든스를 AI 연결로 보내고 즉시 연결을 닫은 뒤, 에이전트가 준비되면 결과를 다시 게시할 때까지 기다려요.

Long-running 모드는 AI 연결을 통해 아웃풋을 생성하는 싱글턴 평가에 사용할 수 있어요.

동작 방식

  1. AI 연결의 General 탭에서 Async Responses를 활성화해요. async responses가 활성화된 연결을 선택할 때마다 evaluate 대화상자에 알림이 표시돼요.
  2. 각 골든스에 대해 Confident AI는 고유한 testCaseId와 함께 페이로드를 엔드포인트로 보내고 연결을 닫아요 — 응답을 기다리지 않아요.
  3. 에이전트가 끝나면 같은 testCaseId와 actual output을 POST /v1/test-runs/evaluate/{testCaseId} 엔드포인트로 게시해요.
  4. Confident AI는 결과가 도착하는 대로 각 테스트 케이스를 평가하고, 모든 결과를 받으면 테스트 런을 확정해요.
sequenceDiagram
    participant User as You
    participant Platform as Confident AI
    participant AI as Your Agent

    User->>Platform: Start Evaluation (Long-Running Agent)

    loop For each golden in dataset
        Platform->>AI: Send input + confident.testCaseId
        Platform-->>Platform: Close connection (no wait)
    end

    loop When each agent finishes (minutes later)
        AI->>Platform: POST /v1/test-runs/evaluate/{testCaseId}
        Platform->>Platform: Evaluate test case
    end

    Platform-->>User: Test Run finalized once all results arrive
    Note over User,Platform: View results on Dashboard

결과 다시 게시하기

Confident AI가 엔드포인트로 보내는 페이로드에서 confident.testCaseId를 읽어 URL에 넣고, 프로젝트 API 키로 결과를 다시 게시해요:

curl -X POST https://api.confident-ai.com/v1/test-runs/evaluate/<TEST-CASE-ID> \
  -H "Content-Type: application/json" \
  -H "CONFIDENT_API_KEY: <PROJECT-API-KEY>" \
  -d '{
    "actualOutput": "The capital of France is Paris."
  }'

actualOutput과 함께 어떤 싱글턴 테스트 케이스 필드든 보낼 수 있어요 — 예를 들어 retrievalContext, toolsCalled, expectedTools 등이죠. 종단 간 워크스루는 Set Up Long-Running AI Connections 가이드를 참고하세요.

평가 시작 후 각 테스트 케이스의 결과 창은 몇 시간 동안 열려 있어요. 이 창 안에 결과를 게시하세요 — 만료된 testCaseId는 410 Gone을 반환해요.

회귀 테스트 (Regression Testing)

테스트 런이 두 개 이상 있으면 나란히 비교해 회귀를 식별할 수 있어요.

회귀 테스트 열기

  1. 테스트 런의 A|B Regression Test 탭으로 이동
  2. New Regression Test 클릭
  3. 비교할 테스트 런 선택

회귀 분석

비교 보기는 다음을 강조해요:

  • 회귀(Regressions) (빨강) — 더 나빠진 테스트 케이스
  • 개선(Improvements) (초록) — 더 좋아진 테스트 케이스
  • 나란히 보는 점수 — 런 간 메트릭 비교

Video

A|B 회귀 테스트

테스트 런 이름을 식별자로 지정하세요(예: "gpt-4o baseline", "claude-3.5 v2"). 그러면 회귀 비교를 추적하기 쉬워져요.

다음 단계

멀티턴 평가 (Multi-Turn Evals)

여러 교환에 걸쳐 컨텍스트가 쌓이는 대화형 AI를 평가해요.

Arena

프롬프트와 모델을 실시간으로 나란히 비교해요.

더 알아보기