골든 테스트 세트 구축
실제 사용의 긴 꼬리까지 다루는 고품질 (입력, 예상 출력) 쌍 50~200개를 엄선해보세요.
골든 테스트 세트 구축은(는) CoddyKit의 무료 AI Agents 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AI Agents 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AI Agents 강의에는 총 4개의 강의가 포함되어 있습니다.
이 강의의 일부는 아직 번역되지 않았으며 영어로 표시됩니다.
골드 세트란 무엇인가
"골든 테스트 세트" 또는 "골드 세트"는 좋은 동작이 무엇인지 정의하는 엄선된 (입력, 예상 출력) 쌍의 모음입니다.
모든 변경 사항을 이 세트와 비교해 측정합니다.
좋은 골드 세트의 특성
- 다양함 — 일반적인 사례 AND 엣지 케이스를 포함
- 사람이 엄선함 — 자동 생성되지 않음
- 버전 관리됨 — 저장소에 고정됨
- 문서화됨 — 각 사례에 선정 이유가 있음
사례는 몇 개가 필요한가
경험칙은 다음과 같습니다:
- 50개 사례 — 실행 가능한 최소 규모
- 200개 사례 — 양호한 범위
- 1000개 이상 사례 — 성숙한 제품
품질 > 수량입니다. 잘 선정한 50개 사례가 무작위 사례 500개보다 낫습니다.
사례 수집
- 사용자 인터뷰 — 실제 사용자가 무엇을 묻는지 확인
- 운영 기록 — 실제로 들어온 질문 확인
- 버그 보고서 — 모든 버그를 평가로 전환
- 적대적 사례 생성 — 에이전트를 무너뜨리도록 LLM에 요청
Mining Bad Production Traces
for trace in last_week_traces():
if trace.has_thumbs_down or trace.had_error:
case = {
'input': trace.input,
'why_bad': trace.feedback_comment,
'expected': None # to be filled by human reviewer
}
save_to_review_queue(case)예상 출력: 정확한 일치와 휴리스틱
예상 출력에는 두 가지 유형이 있습니다:
- 정확히 일치 — 추출, 분류, 계산에 사용
- 휴리스틱 — 개방형 질의응답에 사용하며 핵심 사실이 포함되었는지 점수화
Heuristic Scoring
def score_answer(actual, expected_facts):
return sum(1 for f in expected_facts if f.lower() in actual.lower()) / len(expected_facts)
case = {
'input': 'What is our refund policy?',
'expected_facts': ['30 days', 'unopened', 'receipt required'],
'min_score': 0.66 # at least 2 of 3 facts mentioned
}
actual_answer = "You can return items within 30 days if they are unopened."
score = score_answer(actual_answer, case['expected_facts'])
print(f"Score: {score:.2f} (min required: {case['min_score']})")
적대적 사례
어려운 사례를 포함하십시오:
- 범위 밖 질문("화성의 날씨는 어떻습니까?")
- 모호한 질의
- 프롬프트 주입 시도
- 외국어 입력
- 매우 긴 입력
골드 세트 버전 관리
저장소에 JSON으로 저장합니다. 세트를 업데이트하는 모든 PR에는 이유를 설명해야 합니다:
// gold-set.json
[
{
"id": "refund-policy-001",
"input": "What is your refund policy?",
"expected_facts": ["30 days", "unopened", "receipt required"],
"added_by": "alice@",
"added_at": "2025-08-12",
"reason": "Top customer support question"
}
]테스트/홀드아웃 분할
과적합을 감지하려면 다음과 같이 분할합니다:
- 개발 세트 — 반복 작업에 사용(내용을 확인할 수 있음)
- 테스트 세트 — 측정에 사용(이 세트에 맞춰 조정하지 않음)
- 홀드아웃 세트 — 주요 출시 전에만 사용
파레토 태그 지정
어디에서(WHERE) 회귀가 발생했는지 확인할 수 있도록 사례를 범주별로 태그 지정합니다:
tag1 = {'tags': ['policy', 'common-question']}
tag2 = {'tags': ['math', 'edge-case']}
print(tag1)
print(tag2)
# Run eval and report:
print("Category 'policy': 0.92")
print("Category 'math': 0.68 <- regression here")
평가 기준표
복잡한 출력에는 기준표를 작성합니다. 반드시 포함할 항목, 포함되어서는 NOT 되는 항목, 더 바람직한 항목을 정합니다:
rubric = {
'must_include': ['30 days'],
'must_not_include': ['no refunds'],
'preferably_includes': ['receipt']
}
for k, v in rubric.items():
print(f"{k}: {v}")
사례의 출처
평가 사례를 얻을 수 있는 가장 신호가 강한 출처는 무엇입니까?
요약
실제 사용자와 운영 실패에서 수집한 50개 이상의 엄선된 사례를 사용합니다. 버전을 관리하고, 태그를 지정하며, 개발/테스트/홀드아웃으로 분할합니다. 버그가 발생할 때마다 확장하십시오.
자주 묻는 질문
“골든 테스트 세트 구축” 강의는 무료인가요?
네 — “골든 테스트 세트 구축” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AI Agents 강의 전체를 잠금 해제할 수 있습니다. AI Agents 강의에는 총 4개의 강의가 포함되어 있습니다.
“골든 테스트 세트 구축”에서 뭘 배우나요?
실제 사용의 긴 꼬리까지 다루는 고품질 (입력, 예상 출력) 쌍 50~200개를 엄선해보세요. 브라우저에서 직접 실행하는 실습 코드로 AI Agents을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AI Agents을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AI Agents은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“골든 테스트 세트 구축” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AI Agents 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AI Agents 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.