fix(study): Phase 4-A envelope 프롬프트 — answer_choice 사용자 정답 강제
검증 결과 모델이 envelope 안에서 자료 근거로 정답 번호를 재판단해서 거의 매번 guard_fail (answer_choice != correct_choice). 환각 가드는 정확히 작동했지만 caching 효율 0%. PR-3 의 free-form 풀이는 "사용자 정답 우선, 충돌 명시" 라 정상 ready 박혔지만 envelope.txt 가 "자료 근거 우선" 으로 충돌. 환각 가드의 본질 — 모델이 envelope 형식을 어겨 임의로 다른 번호를 박는 케이스 차단 — 을 유지하되, answer_choice 값은 사용자 정답 (correct_choice) 을 그대로 박도록 명시. 자료 근거와 사용자 정답이 다를 경우 explanation_md 안에 짧게 명시만 하고 answer_choice 는 보존. 정답 자체를 바꾸는 게 환각 가드의 차단 대상이라고 강조. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -35,8 +35,11 @@
|
||||
- high: 자료에 직접 근거가 있고 정답이 명확
|
||||
- medium: 자료가 부분 근거이고 일반 지식 보강 필요
|
||||
- low: 자료 근거 부족하여 추론에 의존
|
||||
7. answer_choice 는 풀이의 결론에 해당하는 정답 번호 (1~4 정수). 사용자 입력 정답과 자료 근거가 충돌하면 자료 근거를 따르고 explanation_md 에 충돌을 명시.
|
||||
8. explanation_md 는 한국어 200~400자. 마크다운(굵게·리스트) 사용 가능.
|
||||
7. **answer_choice 는 반드시 위 "사용자가 입력한 정답" 의 번호 ({correct_choice}) 를 그대로 박는다.**
|
||||
- 사용자 정답이 정해진 객관식 문제이며, 너의 역할은 그 정답을 풀이하는 것이지 정답 자체를 바꾸는 것이 아니다.
|
||||
- 자료 근거가 사용자 정답과 다르게 보여도 explanation_md 안에 "자료 근거에 따르면 다른 해석도 가능하다" 라고 짧게 명시할 뿐, answer_choice 는 사용자 정답 그대로 유지한다.
|
||||
- 정답을 추측하거나 다른 번호로 바꾸는 것은 환각 가드에 차단된다.
|
||||
8. explanation_md 는 사용자 정답이 왜 맞는지 풀이. 한국어 200~400자. 마크다운(굵게·리스트) 사용 가능.
|
||||
|
||||
【출력 형식 — 반드시 아래 JSON 만 출력. 메타 설명·인사·코드 펜스 없이 raw JSON 한 객체.】
|
||||
{{"answer_choice": <1|2|3|4>, "explanation_md": "<풀이 본문 마크다운>", "confidence": "<high|medium|low>"}}
|
||||
|
||||
Reference in New Issue
Block a user