AI 변형 시범 결과 — 5종 원본 → 15종 변형
본 문서는 시뮬레이션
실제 Claude Haiku API 호출은 발주처 환경에서 진행. 본 문서의 변형 결과는 품질 가이드라인 및 예상 출력 패턴. 실제 API 결과와 미세 차이 가능.
자가 검토 (작성자 점검)
- 5종 원본 선정 학년 골고루 (E1·E3·E4·E5·E6)
- 각 V1·V2·V3 변형 종류 일관 적용
- 변형 후 메타데이터 (단원·난이도·유형) 보존
- 변형 ID 형식 부록 B 정규식 통과
1. 시범 대상 5종
| # | 원본 ID | 학년·단원·유형·난이도 | 출처 |
|---|---|---|---|
| 1 | E1-1-3-LOW-SA-002 | E1 / 한자리 덧셈 / SA / LOW | 부록 D 확장 #2 |
| 2 | E3-1-6-MID-MC-012 | E3 / 분수 / MC / MID | 부록 D 확장 #12 |
| 3 | E4-2-3-MID-SA-019 | E4 / 소수 덧셈 / SA / MID | 부록 D 확장 #19 |
| 4 | E5-1-2-MID-MC-021 | E5 / 약수와 배수 / MC / MID | 부록 D 확장 #21 |
| 5 | E6-2-5-HIGH-MC-030 | E6 / 원의 넓이 / MC / HIGH | 부록 D 확장 #30 |
각 원본 → V1 (수치) + V2 (맥락) + V3 (표현) = 3변형 × 5 = 15 변형 생성.
2. 시범 #1 — E1-1-3-LOW-SA-002 (한자리 덧셈)
원본
body_md: "$3 + 4$ 의 값을 구하세요."
answer: "7"V1 (수치 치환) — E1-1-3-LOW-SA-002-V1
body_md: "$5 + 4$ 의 값을 구하세요."
answer: "9"
solution_md: "$5 + 4 = 9$"V2 (맥락 치환) — E1-1-3-LOW-SA-002-V2
body_md: |
민우는 사과 3개를 가지고 있어요.
엄마가 4개를 더 주셨어요.
민우의 사과는 모두 몇 개일까요?
answer: "7"
solution_md: |
$3 + 4 = 7$ (개)V3 (표현 치환) — E1-1-3-LOW-SA-002-V3
SA → MC 변형 (표현이 같으나 형식 변경, 부록 B 정규식 호환)
id: "E1-1-3-LOW-MC-002-V3" # type 변경 시 ID도 갱신
body_md: "$3 + 4$ 의 값은?"
choices: ["5", "6", "7", "8", "9"]
answer_index: 2
solution_md: "$3 + 4 = 7$"검증 (Step 4 Sonnet)
| Check | V1 | V2 | V3 |
|---|---|---|---|
| 11. 정답 옳음 | PASS | PASS | PASS |
| 12. 풀이 일관 | PASS | PASS | PASS |
| 13. 계산 오류 X | PASS | PASS | PASS |
| 14. MC 답 1개 | n/a | n/a | PASS |
| 15. LaTeX 정확 | PASS | PASS | PASS |
| 종합 | PASS | PASS | PASS |
3. 시범 #2 — E3-1-6-MID-MC-012 (분수 분모·분자)
원본
body_md: |
케이크를 8조각으로 똑같이 나누어 5조각을 먹었어요.
먹은 양을 분수로 나타내면?
choices: ["3/8", "5/8", "8/5", "1/8", "5/3"]
answer_index: 1V1 (수치 치환)
body_md: |
케이크를 6조각으로 똑같이 나누어 4조각을 먹었어요.
먹은 양을 분수로 나타내면?
choices: ["2/6", "4/6", "6/4", "1/6", "4/2"]
answer_index: 1V2 (맥락 치환)
body_md: |
피자를 8조각으로 똑같이 나누어 5조각을 먹었어요.
먹은 양을 분수로 나타내면?
choices: ["3/8", "5/8", "8/5", "1/8", "5/3"]
answer_index: 1V3 (표현 치환) — MC → SA
id: "E3-1-6-MID-SA-012-V3"
body_md: |
케이크를 8조각으로 똑같이 나누어 5조각을 먹었어요.
먹은 양을 분수로 나타내시오.
answer: "5/8"
answer_alternative: ["⅝", "0.625"]검증 결과: 모두 PASS
V2 함정 — 학년 학습 범위 점검
V2가 케이크 → 피자로만 바꿔서 학습 목표는 동일. 학년·난이도 그대로 보존. PASS.
4. 시범 #3 — E4-2-3-MID-SA-019 (소수 덧셈)
원본
body_md: "$1.45 + 2.78$ 의 값은?"
answer: "4.23"V1 (수치 치환)
body_md: "$2.36 + 3.59$ 의 값은?"
answer: "5.95"
solution_md: |
소수점 자리 맞추어 덧셈:
백분의 자리: $6 + 9 = 15$ ($5$ 쓰고 $1$ 받아올림)
십분의 자리: $3 + 5 + 1 = 9$
일의 자리: $2 + 3 = 5$
답: $5.95$V2 (맥락 치환)
body_md: |
마트에서 우유 $1.45$ kg과 빵 $2.78$ kg을 샀습니다.
무게의 합은 몇 kg인가요?
answer: "4.23"
solution_md: |
$1.45 + 2.78 = 4.23$ (kg)V3 (표현 치환) — SA → MC
id: "E4-2-3-MID-MC-019-V3"
body_md: "$1.45 + 2.78$ 의 값은?"
choices: ["4.13", "4.23", "4.33", "4.123", "4.2123"]
answer_index: 1
solution_md: |
답: $4.23$ (소수점 자리 맞춰 덧셈, 받아올림 처리)검증 결과
| Check | V1 | V2 | V3 |
|---|---|---|---|
| 11. 정답 옳음 | PASS | PASS | PASS |
| 12. 풀이 일관 | PASS | PASS | PASS |
| 13. 계산 오류 X | PASS (자체 검산) | PASS | PASS |
| 14. MC 답 1개 | n/a | n/a | PASS |
| 15. LaTeX 정확 | PASS | PASS | PASS |
| 추가: 학년 적합 | PASS | PASS | PASS |
| 종합 | PASS | PASS | PASS |
5. 시범 #4 — E5-1-2-MID-MC-021 (약수)
원본
body_md: "12의 약수를 모두 구하시오."
choices: ["1, 2, 3, 4, 6", "1, 2, 3, 4, 6, 12", "2, 3, 4, 6", "1, 12", "1, 2, 3, 6, 12"]
answer_index: 1V1 (수치 치환)
body_md: "18의 약수를 모두 구하시오."
choices: ["1, 2, 3, 6, 9", "1, 2, 3, 6, 9, 18", "1, 2, 3, 9", "1, 18", "2, 3, 6, 9, 18"]
answer_index: 1V2 (맥락 치환)
body_md: |
사탕 12개를 똑같이 나누어 가질 수 있는 사람 수를 모두 구하시오.
(한 명도 나누어주지 않는 경우는 제외)
choices: ["2, 3, 4, 6", "1, 2, 3, 4, 6, 12", "1, 2, 3, 4, 6", "2, 3, 4, 6, 12", "1, 12"]
answer_index: 1
solution_md: |
사탕 12개를 똑같이 나눌 수 있는 사람 수 = 12의 약수
$12 = 1 \\times 12 = 2 \\times 6 = 3 \\times 4$
사람 수: 1, 2, 3, 4, 6, 12명V3 (표현 치환) — MC → SA
id: "E5-1-2-MID-SA-021-V3"
body_md: "12의 약수의 개수는 모두 몇 개인가요?"
answer: "6"
solution_md: |
12의 약수: 1, 2, 3, 4, 6, 12 → **6개**검증 결과: 모두 PASS
V3 학습 목표 미세 변경
V3는 “약수 나열” → “약수 개수”로 학습 목표가 미묘하게 다름. 같은 단원이지만 응용 학습. 검수 시 의도된 변형으로 인정.
6. 시범 #5 — E6-2-5-HIGH-MC-030 (원의 넓이)
원본
body_md: |
반지름이 $5 \\text{ cm}$ 인 원의 넓이는?
(원주율 $= 3.14$)
choices:
- "$15.7$"
- "$31.4$"
- "$78.5$"
- "$157$"
- "$314$"
answer_index: 2V1 (수치 치환)
body_md: |
반지름이 $7 \\text{ cm}$ 인 원의 넓이는?
(원주율 $= 3.14$)
choices: ["$21.98$", "$43.96$", "$153.86$", "$307.72$", "$615.44$"]
answer_index: 2
solution_md: |
$S = r \\times r \\times 3.14 = 7 \\times 7 \\times 3.14 = 49 \\times 3.14 = 153.86$V2 (맥락 치환)
body_md: |
반지름이 $5 \\text{ m}$ 인 원형 분수대를 만들려고 합니다.
분수대의 바닥 넓이는 약 몇 $\\text{m}^2$ 인가요?
(원주율 $= 3.14$)
choices: ["$15.7$", "$31.4$", "$78.5$", "$157$", "$314$"]
answer_index: 2
solution_md: |
분수대 바닥 = 원의 넓이
$S = r \\times r \\times 3.14 = 5 \\times 5 \\times 3.14 = 78.5$ ($\\text{m}^2$)V3 (표현 치환) — MC → SA
id: "E6-2-5-HIGH-SA-030-V3"
body_md: |
반지름이 $5 \\text{ cm}$ 인 원의 넓이를 구하시오.
(원주율 $= 3.14$, 단위 $\\text{cm}^2$ 는 생략)
answer: "78.5"
solution_md: |
원의 넓이 $= r \\times r \\times 3.14 = 5 \\times 5 \\times 3.14 = 78.5$검증 결과
| Check | V1 | V2 | V3 |
|---|---|---|---|
| 11. 정답 옳음 | PASS (49 × 3.14 = 153.86) | PASS | PASS |
| 12. 풀이 일관 | PASS | PASS | PASS |
| 13. 계산 오류 X | PASS | PASS | PASS |
| 14. MC 답 1개 | PASS | PASS | n/a |
| 15. LaTeX 정확 | PASS | PASS | PASS |
| 종합 | PASS | PASS | PASS |
7. 종합 검증 통계 (15 변형)
| 변형 종류 | 생성 수 | PASS | FAIL | 인간 검수 큐 |
|---|---|---|---|---|
| V1 (수치 치환) | 5 | 5 | 0 | 0 |
| V2 (맥락 치환) | 5 | 5 | 0 | 0 |
| V3 (표현 치환) | 5 | 5 | 0 | 0 |
| 합계 | 15 | 15 (100%) | 0 | 0 |
가장 안전한 변형
시범 5종은 모두 객관식·단답형 + LOW~HIGH 골고루였고, 결과 100% PASS. 단, 실제 운영에서는:
- 서술형(DE) 변형은 100% 인간 검수 큐 (rubric 변경 가능성)
- HIGH 난이도 변형은 100% 인간 검수 큐 (실수 비용 큼)
- 무작위 5% 샘플 검수 (RFP §5)
시범 결과 5건만으로 100% 자동 통과율을 일반화하지 않음.
8. 시뮬레이션 비용 (실제 API 호출 가정 시)
Haiku 4.5 (변형 생성)
- 1제 → 3변형 = 1회 호출 (시스템 프롬프트 + 원본)
- 입력 ≈ 1,500 토큰 / 출력 ≈ 3,000 토큰
- 비용: 0.00375 = $0.0041 ≈ 6원/원본
Sonnet 4.6 (셀프 검증)
- 1변형당 1회 호출
- 입력 ≈ 2,000 / 출력 ≈ 500
- 비용: 0.0075 = $0.0135 ≈ 19원/변형
시범 5건 비용
- 변형 생성: 5 × 6 = 30원
- 검증: 15 × 19 = 285원
- 합계: 315원
1,500제 전체 변형
- 변형 생성: 1,500 × 6 = 9,000원
- 검증: 4,500 × 19 = 85,500원
- 합계: 94,500원 (약 9.5만원)
단위 경제 §2.5 추정(약 1만원 + 9만원 = 10만원)과 일치.
9. 시범에서 발견한 패턴
본 시뮬레이션을 통해 ai-variant-pipeline에 다음 보강이 필요:
- V3 (표현 치환) 시 ID 갱신 룰 — 유형(MC↔SA) 변경 시 ID에 반영. 본 문서 §3·§5에 명시. ai-variant-pipeline §3 프롬프트에 추가 필요.
- V2 맥락 치환의 학년 적합성 — “분수대” 등 학년 적합한 일상 맥락 검증 필요. 시스템 프롬프트에 학년별 권장 맥락 명시 추가.
- 답 보기의 함정 분포 — V1 수치 치환 시 함정 보기도 새 정답 ±1·±2로 재구성해야 자연스러움. 현재 시스템 프롬프트는 명시 안 됨 — 추가 필요.
- 풀이 해설 단계 간소화 — V1·V2는 원본 풀이 단계 보존, V3는 형식 변경에 따라 풀이 일부 변경 (예: SA → MC 시 보기 분석 추가).
→ ai-variant-pipeline.md 업데이트 권장 (다음 iteration).
10. 다음 단계
- 실제 Claude API 키 확보 후 본 5종 실행 (예상 비용 315원)
- 결과 본 문서에 추가 (예상 vs 실제 비교)
- 100% PASS 안 나올 경우 시스템 프롬프트 수정
- 1,500제 전체 변형 실행 (예상 비용 9.5만원, 1~2일 소요)
- 인간 검수 (HIGH·DE 100% + 5% 샘플) 진행 → 통계 갱신
본 시뮬레이션은 검증 룰의 적정성을 사전 점검. 실제 실행 결과는 별도 추가.