AI 변형 시범 결과 — 5종 원본 → 15종 변형

본 문서는 시뮬레이션

실제 Claude Haiku API 호출은 발주처 환경에서 진행. 본 문서의 변형 결과는 품질 가이드라인 및 예상 출력 패턴. 실제 API 결과와 미세 차이 가능.

자가 검토 (작성자 점검)

  • 5종 원본 선정 학년 골고루 (E1·E3·E4·E5·E6)
  • 각 V1·V2·V3 변형 종류 일관 적용
  • 변형 후 메타데이터 (단원·난이도·유형) 보존
  • 변형 ID 형식 부록 B 정규식 통과

1. 시범 대상 5종

#원본 ID학년·단원·유형·난이도출처
1E1-1-3-LOW-SA-002E1 / 한자리 덧셈 / SA / LOW부록 D 확장 #2
2E3-1-6-MID-MC-012E3 / 분수 / MC / MID부록 D 확장 #12
3E4-2-3-MID-SA-019E4 / 소수 덧셈 / SA / MID부록 D 확장 #19
4E5-1-2-MID-MC-021E5 / 약수와 배수 / MC / MID부록 D 확장 #21
5E6-2-5-HIGH-MC-030E6 / 원의 넓이 / 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)

CheckV1V2V3
11. 정답 옳음PASSPASSPASS
12. 풀이 일관PASSPASSPASS
13. 계산 오류 XPASSPASSPASS
14. MC 답 1개n/an/aPASS
15. LaTeX 정확PASSPASSPASS
종합PASSPASSPASS

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: 1

V1 (수치 치환)

body_md: |
  케이크를 6조각으로 똑같이 나누어 4조각을 먹었어요.
  먹은 양을 분수로 나타내면?
choices: ["2/6", "4/6", "6/4", "1/6", "4/2"]
answer_index: 1

V2 (맥락 치환)

body_md: |
  피자를 8조각으로 똑같이 나누어 5조각을 먹었어요.
  먹은 양을 분수로 나타내면?
choices: ["3/8", "5/8", "8/5", "1/8", "5/3"]
answer_index: 1

V3 (표현 치환) — 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$ (소수점 자리 맞춰 덧셈, 받아올림 처리)

검증 결과

CheckV1V2V3
11. 정답 옳음PASSPASSPASS
12. 풀이 일관PASSPASSPASS
13. 계산 오류 XPASS (자체 검산)PASSPASS
14. MC 답 1개n/an/aPASS
15. LaTeX 정확PASSPASSPASS
추가: 학년 적합PASSPASSPASS
종합PASSPASSPASS

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: 1

V1 (수치 치환)

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: 1

V2 (맥락 치환)

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: 2

V1 (수치 치환)

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$

검증 결과

CheckV1V2V3
11. 정답 옳음PASS (49 × 3.14 = 153.86)PASSPASS
12. 풀이 일관PASSPASSPASS
13. 계산 오류 XPASSPASSPASS
14. MC 답 1개PASSPASSn/a
15. LaTeX 정확PASSPASSPASS
종합PASSPASSPASS

7. 종합 검증 통계 (15 변형)

변형 종류생성 수PASSFAIL인간 검수 큐
V1 (수치 치환)5500
V2 (맥락 치환)5500
V3 (표현 치환)5500
합계1515 (100%)00

가장 안전한 변형

시범 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에 다음 보강이 필요:

  1. V3 (표현 치환) 시 ID 갱신 룰 — 유형(MC↔SA) 변경 시 ID에 반영. 본 문서 §3·§5에 명시. ai-variant-pipeline §3 프롬프트에 추가 필요.
  2. V2 맥락 치환의 학년 적합성 — “분수대” 등 학년 적합한 일상 맥락 검증 필요. 시스템 프롬프트에 학년별 권장 맥락 명시 추가.
  3. 답 보기의 함정 분포 — V1 수치 치환 시 함정 보기도 새 정답 ±1·±2로 재구성해야 자연스러움. 현재 시스템 프롬프트는 명시 안 됨 — 추가 필요.
  4. 풀이 해설 단계 간소화 — 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% 샘플) 진행 → 통계 갱신

본 시뮬레이션은 검증 룰의 적정성을 사전 점검. 실제 실행 결과는 별도 추가.