여덟 모델 논리검증, 2026-09-26 한 번 실행
8모델 논리검증: 같은 과제, 블라인드 채점, 그리고 실측
저는 Jev(TypeSafe System One)를 CMDS 지식 입력과 검색의 어디에 쓸지 정하려고, 같은 과제를 최신 모델 여덟 개에 동시에 맡겼습니다. 논리력은 닫힌 정답으로 재고, 모델이 낸 설계는 그대로 믿지 않고 같은 날 Jev API를 세 라운드 3,560회 호출해 직접 쟀습니다. 모든 수치는 2026-09-26(KST) 한 번 실행한 결과이고, 분모를 함께 적었습니다.
01 Method무엇을 시험했나
같은 패킷, 미리 쓴 루브릭, 닫힌 정답 문항, 이름을 가린 채점입니다.
같은 패킷, 여덟 모델
여덟 모델은 모두 같은 프롬프트(52,202자)를 받았고, 동일성은 해시로 확인했습니다. 패킷에는 과제, Jev 공개 사양과 문서화된 약점 9종, 09-24 첫 실측 결과, CMDS 구조, 볼트 메타데이터로 만든 실행 가능 자료 네 세트(분류, 메인 대 위키, 검색, 프로젝트 라우팅), 그리고 논리 문항 10개가 들어 있었습니다.
| 모델 | reasoning effort | 제출 |
|---|---|---|
| GPT-6 Astra | xhigh | 제출 |
| GPT-6 Sol | xhigh | 제출 |
| GPT-6 Luna | high | 제출 |
| Grok 4.7 | high | 1차 실패(HTTP 500, 503, 503), 같은 프롬프트로 재시도해 제출 |
| Gemini 3.8 Flash | high | 제출 |
| Gemini 3.1 Pro (preview) | high | 제출 |
| Claude Opus 5.5 | high | 제출 (헤드와 같은 모델) |
| Claude Fable 5.1 | high | 미제출 (두 번 모두 본문 없이 종료) |
10축 루브릭, 논리가 절반 이상
채점 기준은 여덟 편의 보고서가 존재하기 전(03:20 KST)에 썼고, 보고서를 읽은 뒤에는 고치지 않았습니다. 논리 블록이 100점 중 54점으로 절반을 넘도록 설계했습니다. 화려한 아이디어가 논리 결함을 덮지 못하게 하려는 의도입니다.
왼쪽부터 논리 54, 맥락 23, 실행 14, 품질 9. 합 100점.
- L1논리 정확성P1~P10 문항 합에서 Tier A 위반 수를 뺌26
- L2사실 충실성패킷 사실과 어긋난 서술 감점16
- L3경계 판단코드, Jev, 생성 LLM, 사람 사이의 역할 배정12
- C1CMDS 지식 시스템 적합성9
- C2아이디어 레버리지7
- C3지식 입력과 검색 설계 품질7
- E1사전 등록 실험의 실행 가능성8
- E2리스크와 데이터 거버넌스6
- Q1자기검토 정직성5
- Q2문서 품질과 형식 준수4
- 총점은 Σ(가중치 × 축점수) ÷ 10, 만점 100입니다. 축점수는 0, 3, 6, 10 네 앵커로 매기고, 중간값은 인접 앵커 둘을 원문 인용으로 대조할 때만 씁니다.
- 모든 점수와 모든 감점에는 보고서 원문 인용이 붙어야 합니다. 인용 없는 감점은 집계 전에 반려했습니다.
- Tier A 위반은 Jev 기능을 사실과 다르게 서술한 경우입니다. 1건만 있어도 A와 B 밴드에 들 수 없습니다.
- 7,000단어를 넘는 부분은 채점하지 않았습니다.
닫힌 정답이 있는 논리 문항 10개
문항은 모두 패킷 안의 수치로 답이 닫히도록 만들었고, 정답 키를 따로 두었습니다. 문항마다 0, 0.5, 1점입니다.
- P1검색 필터의 토큰 비용과 예산 안 가능 여부
- P2요청 크기 한도 두 개를 동시에 지키는 분할
- P3한 과제의 임계값을 다른 과제로 옮기는 함정
- P4검색 끝단 정확도의 상한
- P5확률을 더하고 곱해도 되는 경우와 안 되는 경우
- P6파이프라인 단계를 코드, Jev, 생성 LLM, 사람에 배정
- P7외부 평가 수치를 결론으로 쓸 수 있는가
- P8처리량과 병목
- P9점진적 메타데이터 공개 설계
- P10순서 교차의 경제성
전제에 일부러 함정을 넣은 문항도 있습니다. 미검증 발언을 "확인된 대로"라고 적어 두거나, 예산 카운터와 실제 하드캡을 다르게 두는 식입니다. 전제를 그대로 받아들이면 감점입니다.
블라인드 채점의 순서
비용은 채점이 끝난 뒤에 영수증을 열어 따로 계산했습니다. 채점 중에 영수증을 열면 블라인드가 깨지기 때문입니다. 실측 결과도 총점에 넣지 않았습니다. 결과를 보고 점수를 바꾸면 사후 편향이 되고, 논리력과 실험 결과는 다른 질문이기 때문입니다.
밴드
| 밴드 | 조건 | 쓰임 |
|---|---|---|
| A | 총점 85 이상, 논리 블록 46 이상, Tier A 0건 | 실험 설계의 기준 문서로 쓸 수 있음 |
| B | 총점 70~84, 논리 블록 38 이상, Tier A 0건 | 보완 뒤 참고 |
| C | 총점 55~69, 또는 Tier A 1건 | 사실과 경계 검증 없이 인용 금지 |
| D | 총점 55 미만, 또는 Tier A 2건 이상 | 참고 자료로 쓰지 않음 |
02 Ranking순위와 동률
가중총점 순서로 적고, 2점 안의 점수는 한 묶음으로 표시했습니다. 제출한 7편 기준, 2026-09-26입니다.
기준 문서는 논리 블록 순위를 먼저 보고하게 합니다. 논리 블록(만점 54)은 Grok 4.7과 GPT-6 Astra가 51.5로 공동 1위, GPT-6 Sol 50.2, Claude Opus 5.5 49.9, GPT-6 Luna 42.7, Gemini 3.8 Flash 37.0, Gemini 3.1 Pro 35.4 순입니다.
막대는 가중총점(0~100)이고, 눈금 세 개는 밴드 경계 55, 70, 85입니다.
| 순위 | 모델 | 가중총점 (/100) | 논리 블록 (/54) | 문항 합 ΣP (/10) | 밴드 |
|---|---|---|---|---|---|
| 동률권: 이웃한 차 0.8점, 1.4점 (2점 안) | |||||
| 1 | Grok 4.7 | 51.5 (공동 1위) | 9.5 | A | |
| 2 | Claude Opus 5.5헤드 모델 | 49.9 (4위) | 9.5 | A | |
| 3 | GPT-6 Sol | 50.2 (3위) | 9.0 | A | |
| 6.6점 간격 (87.2 → 80.6) | |||||
| 4 | GPT-6 Astra | 51.5 (공동 1위) | 9.5 | B | |
| 16.6점 간격 (80.6 → 64.0) | |||||
| 5 | GPT-6 Luna | 42.7 (5위) | 7.5 | C | |
| 동률권: 차 1.7점 (2점 안) | |||||
| 6 | Gemini 3.1 Pro | 35.4 (7위) | 7.0 | C | |
| 7 | Gemini 3.8 Flash | 37.0 (6위) | 7.0 | C | |
| 순위 밖 | Claude Fable 5.1 | 없음 | 없음 | 없음 | |
Tier A(Jev 기능 허위 서술)는 제출한 7편 모두 0건입니다.
동률과 한계를 먼저 읽어 주세요
- 2점 이내는 동률로 보고합니다. 09-24에 같은 채점기를 재시작해 두 번 돌렸을 때 총점이 ±1.6 움직였기 때문입니다. 89.4와 88.6의 차는 0.8, 88.6과 87.2의 차는 1.4입니다. Grok 4.7과 GPT-6 Sol의 차 2.2는 경계 밖이지만, 둘 다 Claude Opus 5.5와 동률권이라 상위 셋은 한 묶음으로 읽습니다. 57.7과 56.0의 차는 1.7입니다.
- 논리력만 보면 상위 넷은 같은 층입니다. 논리 블록 51.5, 51.5, 50.2, 49.9의 차는 1.6입니다.
- Claude Opus 5.5의 2위는 독립 검증된 순위가 아닙니다. 헤드가 같은 모델이고, 채점자 A와 B, 반박자, 조정자도 모두 Opus 5.5 인스턴스입니다. 그래서 주관 축은 헤드가 손대지 않고 채점자 값을 그대로 두었습니다. 블라인드 슬롯과 별도 반박자는 자기 선호를 줄이지만 없애지는 못합니다.
- Claude Fable 5.1은 완주하지 못했습니다. 두 번의 시도가 모두 에이전트의 자동 압축(autocompact) 반복으로 본문 없이 끝났습니다. 그래서 이번 실행에서 Claude 쪽 비교는 Opus 5.5 한 편뿐입니다.
- Grok 4.7의 1위는 조정 하나에 달려 있습니다. 반박자 조정으로 Q2가 9에서 10이 됐고, 9였다면 89.0으로 Claude Opus 5.5와의 차가 0.4점입니다.
- 경계에 붙은 점수가 있습니다. Gemini 3.8 Flash의 56.0은 D 경계 55에서 1.0점 위입니다. 9,054단어로 7,000단어 절단선을 넘겨 P10과 자기검토 절이 채점 범위 밖으로 밀렸습니다.
큰 간격은 두 곳입니다
- 3위와 4위 사이 6.6점(87.2 → 80.6)은 논리가 아니라 맥락에서 났습니다. GPT-6 Astra는 논리 블록 공동 1위였지만 검색 설계 영역이 둘뿐이었고, 한 절에 다른 언어 문장이 섞여 A 밴드 하한 85에 4.4점 모자랐습니다.
- 4위와 5위 사이 16.6점(80.6 → 64.0)은 설계 수와 기준선 설계에서 났습니다. GPT-6 Luna는 문항 산술이 탄탄했지만, 한 실험의 기준선이 정답을 그대로 복사하는 구조였습니다.
문항별 점수
칸마다 0, 0.5, 1점입니다. 마지막 열은 제출한 7편의 평균입니다.
| 문항 | Grok 4.7 | Claude Opus 5.5 | GPT-6 Sol | GPT-6 Astra | GPT-6 Luna | Gemini 3.1 Pro | Gemini 3.8 Flash | 평균 (/1, n=7) |
|---|---|---|---|---|---|---|---|---|
| P1 | 1 | 1 | 1 | 1 | 0 | 0.5 | 1 | 0.79 |
| P2 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1.00 |
| P3 | 1 | 1 | 1 | 1 | 1 | 0.5 | 1 | 0.93 |
| P4 | 1 | 1 | 0.5 | 1 | 1 | 0.5 | 0.5 | 0.79 |
| P5 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1.00 |
| P6 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1.00 |
| P7 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1.00 |
| P8 | 0.5 | 1 | 1 | 1 | 0.5 | 0.5 | 0.5 | 0.71 |
| P9 | 1 | 1 | 1 | 1 | 0.5 | 0.5 | 0 | 0.71 |
| P10 | 1 | 0.5 | 0.5 | 0.5 | 0.5 | 0.5 | 0 | 0.50 |
| ΣP (/10) | 9.5 | 9.5 | 9.0 | 9.5 | 7.5 | 7.0 | 7.0 | 8.43 |
1점0.5점0점
- 변별력이 가장 컸던 문항은 P10(평균 0.50)입니다. 만점은 Grok 4.7 하나입니다. 네 모델이 같은 정의 실수를 했습니다. 원래 자동 답이 아니던 보류 건까지 "걷어 낸 오답"으로 센 것입니다. 보류를 어느 집합에서 세는가가 공통 약점이었습니다.
- P2, P5, P6, P7은 일곱 편 모두 만점이라 변별이 없었습니다. 다음 실행에서 교체할 후보입니다.
- 09-24 첫 검증의 단일 단계 산술 문항은 69/70이 맞았습니다. 이번 문항은 ΣP 합 59.0/70, 편별 7.0~9.5로 갈렸습니다.
모델마다 한 문장
각 보고서에서 짧게 한 줄씩만 옮깁니다.
- GPT-6 Astra
어느 층이 무엇을 확정할 권한과 근거를 갖는가
- Claude Opus 5.5
Jev의 입력은 코드가 닫아 놓은 집합이고, Jev의 출력은 코드가 비교하는 숫자다.
- Grok 4.7
검색은 Jev가 꺼져도 qmd 목록을 숨기지 않는다.
- GPT-6 Sol
우선순위 상은 실험 착수 순위이지 운영 자동화 승인 순위가 아니다.
- GPT-6 Luna
후보 재현율이 낮으면 Jev는 빠진 정답을 되살릴 수 없다.
03 Cost비용, 공식 단가 환산
2026-09-26 한 번의 실행, 한 과제 기준입니다. 비용은 채점이 끝난 뒤에 열었습니다.
가중총점 (/100)
| 모델 | 입력 tokens | 청구 출력 tokens (그중 추론) | 단가 입력 / 출력 ($/1M) | 환산액 | 총점 (/100) | 총점 ÷ 환산액 |
|---|---|---|---|---|---|---|
| Grok 4.7 | 30,935 (캐시 1,152) | 65,400 (45,081) | 2.00 / 6.00 | $0.4525 | 89.4 | 198 |
| Claude Opus 5.5 | 28,200 (추정) | 101,163 (31,092) | 4.00 / 20.00 | $2.1361 | 88.6 | 41 |
| GPT-6 Sol | 27,177 | 19,169 (3,167) | 2.00 / 10.00 | $0.2460 | 87.2 | 354 |
| GPT-6 Astra | 27,177 | 20,404 (6,036) | 10.00 / 50.00 | $1.2920 | 80.6 | 62 |
| GPT-6 Luna | 27,177 | 16,011 (2,731) | 0.10 / 0.50 | $0.0107 | 64.0 | 5,968 |
| Gemini 3.1 Pro | 28,304 | 26,193 (7,136) | 2.00 / 12.00 | $0.3709 | 57.7 | 156 |
| Gemini 3.8 Flash | 28,304 | 49,195 (13,507) | 0.75 / 3.75 | $0.2057 | 56.0 | 272 |
계산에서 주의한 것
- 추론 토큰은 벤더마다 다르게 셉니다. OpenAI와 xAI는 출력 안에 추론이 이미 들어 있어 그대로 썼습니다(여섯 영수증 모두 입력 + 출력 = 합계로 확인). Gemini는 응답의 출력 수에서 추론이 빠져 있어 출력 + 추론으로 다시 합쳤습니다.
- Claude Opus 5.5의 입력 28,200은 추정값입니다. 프롬프트가 도구 결과로 캐시에 섞여 들어가 1회 입력량이 따로 기록되지 않아, 같은 프롬프트에 대한 다른 여섯 영수증의 평균 28,179에 맞췄습니다. Claude 토크나이저 기준 약 47,600 tokens로 넣어도 환산액은 $2.2137이고 순위는 바뀌지 않습니다.
- 실행 경로의 비용은 모델 비교에서 뺐습니다. Claude Opus 5.5는 에이전트 하네스 안에서 31요청으로 보고서를 썼고, 매 요청 32만~51만 tokens의 컨텍스트(도구 스키마, 프로젝트 지침, 앞선 대화)를 다시 읽었습니다. 그 경로를 그대로 환산하면 $7.1812로 동등 비교 값의 3.36배입니다. 이 차이는 모델이 아니라 실행 경로의 성질이라, 모델 비교는 위 표의 동등 비교 값으로만 합니다.
- 완주하지 못한 시도도 비용이 듭니다. Claude Fable 5.1의 두 시도는 결과물이 없지만, 같은 방식으로 환산하면 $9.4710과 $9.4237, 합 $18.8947입니다. 이번 실행의 어떤 단일 보고서보다 큰 금액입니다. Grok 4.7의 1차 실패 호출은 사용량이 기록되지 않아 환산하지 않았습니다. 0이 아니라 "기록 없음"으로 둡니다.
- Gemini 3.8 Flash 단가는 2026-12-31까지의 프로모션가입니다. 2027년 단가(1.50 / 7.50)로 바꾸면 환산액은 $0.4114로 두 배가 됩니다.
- 독립 재계산으로 대조했습니다. 표를 만든 스크립트와 별도로, 영수증 원본과 단가 기록과 스코어카드를 직접 읽는 재계산 스크립트를 돌렸고, 모델별 17칸씩 119칸이 소수 넷째 자리까지 일치했습니다.
해석
- 밴드가 비용보다 먼저입니다. 후속 기준 문서로 쓸 수 있는 것은 밴드 A 셋뿐입니다. GPT-6 Luna는 GPT-6 Sol보다 23배 싸지만 밴드 C라 기준 문서로 쓰지 않습니다.
- 밴드 A 안에서는 GPT-6 Sol을 기본으로 제안합니다. 총점은 Grok 4.7보다 2.2점 낮지만 환산액은 Grok 4.7의 0.54배, Claude Opus 5.5의 0.12배입니다. Grok 4.7은 단가가 싸지만 청구 출력 65,400 중 45,081(68.9%)이 추론이라 실제 환산액이 GPT-6 Sol의 1.84배였고, 응답에 966.9초가 걸려 GPT-6 Sol 399.7초의 2.42배였습니다. P10 만점 같은 Grok 4.7의 논리 우위가 꼭 필요한 과제가 아니면 GPT-6 Sol이 먼저입니다.
- 헤드와 같은 모델에 불리한 결과도 그대로 적습니다. Claude Opus 5.5는 환산액이 7편 중 가장 컸고(GPT-6 Sol의 8.68배), 품질과 비용을 9:1이나 7:3으로 섞은 어떤 조합에서도 밴드 A 셋 중 3위였습니다. 출력 101,163 tokens 가운데 사고는 31,092이고, 나머지 대부분은 본문을 도구 호출로 여러 번 고쳐 쓴 반복입니다.
- 말할 수 없는 것. 1회 실행, 1과제 표본입니다. 같은 모델을 다시 돌리면 추론 토큰 수가 달라집니다. 순위의 방향은 믿되 소수 셋째 자리는 믿지 않습니다.
같은 날 Jev API 실측 비용
모델 보고서와 별도로, 저는 Jev API를 세 라운드(r1, r2, r3) 직접 호출했습니다. Jev 과금은 입력 tokens × $0.042/1M이고 출력은 과금되지 않습니다.
| 라운드 | 호출 (전부 HTTP 200) | 입력 tokens | 금액 (입력) |
|---|---|---|---|
| r1 | 1,557 | 3,269,848 | $0.1373 |
| r2 | 1,726 | 3,974,285 | $0.1669 |
| r3 | 277 | 1,020,437 | $0.0429 |
| 합계 | 3,560 | 8,264,570 | $0.3471 |
- 스스로 건 하드캡 15,000,000 입력 tokens의 55.1%입니다. 재시도 0건, 요청 모델과 응답 모델 불일치 0건이었습니다.
- r3 호출당 입력으로 환산하면 87개 서브카테고리 분류는 1,000건당 약 $0.242, 검색 후보 하나 고르기는 약 $0.072, 후보별 유지 판단은 약 $0.089입니다. 1만 건을 87분류해도 입력 비용은 약 $2.4입니다. 병목은 토큰이 아니라 사람의 검토 시간입니다.
04 Ideas채택한 아이디어와 출처
일곱 보고서의 아이디어를 중복끼리 묶고, 실측으로 판정할 수 있는 것은 실측으로 판정했습니다. 모델 이름은 그 아이디어를 보고서에 맞게 쓴 모델입니다.
역할을 나누는 원칙
- 층을 가르는 기준은 모델의 성능이 아니라 확정할 권한과 근거GPT-6 Astra어떻게 썼나분류 제안은 파일 이동의 근거가 아니라는 원칙으로 고정
- Jev의 입력은 코드가 닫은 집합, 출력은 코드가 비교하는 숫자Claude Opus 5.5어떻게 썼나후보 생성, 컷 비교, 순서 비교, 기록을 모두 Jev 밖에 둠
- 실패 방향의 비대칭: 입력 제안은 fail-open, 기록과 이동은 fail-closed, 검색은 Jev가 꺼지거나 보류해도 qmd 목록 유지Grok 4.7어떻게 썼나세 라운드 설계에 그대로 적용
- Jev를 얹은 결과는 Jev 없는 qmd와 비교GPT-6 Luna어떻게 썼나모든 검색 조건에 qmd 기준선을 붙임
- 우선순위는 실험 착수 순위이지 운영 승인 순위가 아님GPT-6 Sol어떻게 썼나포트폴리오 표의 "상"을 운영 승인으로 읽지 않음
실측으로 지지된 설계
- 검색: qmd가 만든 후보 중 질의에 직접 답하는 노트 하나를 Jev가 고름Grok 4.7Claude Opus 5.5GPT-6 Sol실측, 2026-09-26세 라운드 모두 지지. r3 새 위키 표적에서 Jev 44/49(89.8%) 대 후보 풀 1위 16/49(32.7%). r2에서 로컬
qmd query1위 26/55 대 Jev 45/55 - 끝단 정확도 = 후보 재현율 × 조건부 선택, 두 층을 따로 기록Claude Opus 5.5GPT-6 LunaGrok 4.7GPT-6 Sol실측, 2026-09-26네 칸 모두 정확히 성립. r3: 45/49 × 44/45 = 44/49
- 한국어 검색은 Jev보다 후보층을 먼저 고침Grok 4.7GPT-6 Luna실측, 2026-09-26qmd의 한국어 BM25를 음절 구문 질의로 우회하자 후보 재현율 46/55 → 50/55, 풀 1위 21/55 → 30/55 (r2)
- 후보마다 "이 질의에 답하는 데 필요한가"를 묻는 유지 집합, 모두 탈락하면 qmd 상위로 복원GPT-6 AstraGemini 3.8 FlashGemini 3.1 Pro실측, 2026-09-26등록 전에 고정한 컷 0.3으로 r3 표적 44/45(97.8%)를 평균 2.39개(후보 평균 17.55개 중) 안에 남김
- 크기를 맞춘 qmd 상위 k를 기준선으로Claude Opus 5.5Grok 4.7실측, 2026-09-26r3 qmd 상위 3개는 표적 25/45(55.6%)
- 컷은 그 과제의 분할에서만 고르고 옮기지 않음Claude Opus 5.5Grok 4.7실측, 2026-09-26같은 확률 0.7 이상 구간의 정확도가 과제마다 달랐음(r3 분류 16/33, 검색 42/43)
- 가장 강한 코드 기준선을 못 넘으면 항상 보류Grok 4.7실측, 2026-09-26r2에서 약한 기준선에 맞춘 게이트는 격자 380점이 전부 통과. 이 규칙이었다면 막혔음
- 프로젝트 라우팅에 README 요약을 선택지로일곱 편 모두실측, 2026-09-26이름만 69/80 → README 요약 78/80 (r2)
- 87분류에서 확률로 자동 승인하지 않음GPT-6 Astra를 뺀 여섯 편실측, 2026-09-26확률 0.7 이상 구간이 r2 58/69, r3 16/33
운영 장치
- 호출 직전 조립된 payload 재검사, 요청 크기 한도 사전 측정, 응답 모델이 다르면 폐기GPT-6 SolGPT-6 LunaGPT-6 Astra
- 관문 지표는 호출 비용이 아니라 총 검토 분과 정정 건, 비정상적으로 짧은 검토는 자동화 편향 경고GPT-6 Sol
- 운영 중지 조건: 순서 불일치 20% 초과, 후보 재현율 80% 미만, 보류율 15% 초과Gemini 3.8 Flash
- 정의 없는 클래스에는 사람이 정의를 써서 잠금Claude Opus 5.5Grok 4.7
05 Evidence모델 합의는 증거가 아니다
일곱 보고서는 모두 "도입하되 제안으로만(PROPOSE)"을 냈고, 여러 설계에서 의견이 모였습니다. 저는 그 합의를 결론으로 쓰지 않고 실측으로 확인했습니다.
실측을 어떻게 했나
- 사전 등록. 라운드마다 첫 호출 전에 프로토콜을 고정하고 해시를 기록했습니다(r1 03:22, r2 04:51, r3 06:34 KST). 하네스는 동결 파일의 해시가 다르면 실행을 거부합니다.
- 봉인한 최종 분할. r1은 설계와 임계값 분할만 돌렸고, 최종 분할은 r2에서 조건마다 한 번만 열었습니다.
- 사후 가설은 새 자료로. r2를 본 뒤 생긴 가설은 r3에서, r1과 r2가 어떤 역할로든 쓴 노트 1,130개를 뺀 새 노트로만 검증했습니다.
- 기준선 먼저. Jev 조건마다 API 없는 코드 기준선을 같은 항목에 붙이고, 짝 비교는 정확 부호검정으로 방향만 봤습니다.
- 정답의 성격. 정답은 사람이 새로 붙인 라벨이 아니라 볼트에 이미 있는 메타데이터와 위치입니다. 그래서 모든 수치는 "기존 판단을 얼마나 재현하는가"로만 읽습니다.
제안과 실측의 대조
- 반증87개 분류의 중심은 코드가 후보를 좁히는 압축일곱 편 전부실측r2 상위 20개 압축은 42/120(35.0%). 정답이 목록에 든 경우가 55/120(45.8%)뿐이었고, 형식 클래스(발행한 글) 27건은 한 번도 목록에 들지 못함
- r2 지지, r3 반증frontmatter
type규칙표가 먼저 끝내고 나머지만 JevClaude Opus 5.5GPT-6 Astra실측r2 규칙표 101/120(84.2%)으로 모든 Jev 조건 이상. 그러나 r3 새 폴더에서는 규칙이 1/27만 맞혔고, 규칙 우선 조합 20/65가 Jev 단독 28/65보다 낮았음(b0/c8, p 0.0078) - 지지설계 단계에서 잠근 문안은 새 모집단을 설명하지 못한다는 경고Grok 4.7실측같은 Jev 조건이 r2 91/120(75.8%)에서 r3 28/65(43.1%)로 내려감. 주제와 도구 클래스는 두 라운드 모두 40% 안팎(r2 7/18, r3 28/65)
- 지지전체 평균이 아니라 클래스, 폴더,
type별로 보고GPT-6 AstraGPT-6 Sol실측r2의 높은 평균은 형식 클래스 두 개가 끌어올린 값이었음 - 반증찾는 노트가 후보에 없으면 "해당 없음"으로 기권Grok 4.7Claude Opus 5.5GPT-6 Sol실측표적 부재 시 기권 r1 3/6, r2 0/5, r3 0/4
- 지지검색 후보 재선택Grok 4.7Claude Opus 5.5GPT-6 Sol실측세 라운드 모두 풀 1위를 앞섬(r3 44/49 대 16/49)
- 우선순위 하향프로젝트 라우팅을 최우선 과제로여섯 편실측README 요약 조건이 78/80(97.5%)으로 포화, 정보 이득이 작음
- 불필요모호할 때만 README 요약으로 올리는 단계적 호출Gemini 3.1 ProGPT-6 Sol실측README 요약을 처음부터 넣어도 호출당 +334 tokens뿐
- 교환비 측정역순 재질문으로 오답을 거름일곱 편 (사람 시간과 교환)Grok 4.7 (선택적 적용)GPT-6 Luna (선택적 적용)실측r3에서 두 순서가 합의할 때만 답하면 자동 오답 36 → 28, 사람 대기 1 → 10, 정답 28 → 27
실행이 바꾼 것
- 입력 분류의 운영안이 바뀌었습니다. "규칙표가 먼저 끝내고 나머지만 Jev"에서, 폴더별 표본으로 정밀도를 확인한 규칙만 먼저 쓰고 나머지는 Jev 상위 3개 제안을 사람이 고르는 화면으로 옮겼습니다. 상위 3개 제안 적중은 r2 112/120(93.3%), r3 42/65(64.6%)였습니다.
- 검색이 가장 강한 결과가 됐습니다. 모델 합의 순서에서는 분류가 먼저였지만, 실측에서 기준선 대비 이득이 가장 큰 것은 검색 후보 재선택이었습니다.
- 고칠 층이 Jev 밖에서 나왔습니다. qmd의 전문 검색 색인이 한글을 음절 단위로 저장해 여러 음절짜리 한국어 키워드 검색이 빈 결과를 냈습니다. 이것을 먼저 고친 것이 검색 상한을 올렸습니다.
- 유지 집합의 컷이 바뀌었습니다. 임계값 분할 25단위에서 고른 0.5는 최종 분할에서 표적 유지율 43/50(86.0%)으로 목표 0.95에 못 미쳤습니다. 0.3은 r3에서 등록 전에 고정한 값으로 44/45를 지켰습니다. 다만 Wilson 95% 하한은 88.4%라 0.95는 점 추정으로만 충족합니다.
- 판정은 그대로입니다. PROPOSE, 볼트 쓰기 없는 shadow 범위입니다. 좋은 결과가 바꾼 것은 도입 여부가 아니라 제안이 사람에게 보이는 범위와 검토 순서입니다.
합의가 틀린 방식
type 규칙표 우선)은 r3에서 새 자료에 무너졌습니다. 가장 정확했던 것은 다수 의견이 아니라 소수 경고였습니다. 검색 쪽에서는 상위 세 모델이 함께 쓴 설계가 세 라운드 내내 맞았고, 틀린 것은 기권 행동 하나였습니다. 합의의 크기와 실측의 방향은 서로 독립이었습니다.말할 수 있는 것과 없는 것
- 한국어 질의 검색에서 Jev 후보 재선택은 세 라운드 모두 후보 풀 1위를 앞섰습니다(r3 44/49 대 16/49).
- 유지 집합 컷 0.3은 등록 전 고정값으로 새 표본의 표적 44/45를 평균 2.39개 안에 남겼습니다.
- 정의가 빈 클래스에 정의와 형식 지시를 주면 재현이 크게 오릅니다(r2 24/120 → 91/120). 두 변경이 함께 바뀌어 기여는 가를 수 없습니다.
- 87분류에서 확률로 자동 승인하면 안 됩니다(r3 확률 0.7 이상 구간 16/33).
- 사람 판단 대비 정확도. 이 실험군의 사람 골드 라벨은 아직 0건입니다. 불일치는 볼트의 드리프트이거나 다른 타당한 라벨일 수 있습니다.
- 결정성과 안정성. 한 모델 버전, 하루, 조건당 한 번이고 같은 요청을 반복하지 않았습니다.
- 작은 n의 세밀한 차이. r3는 분류 65건, 검색 49단위이고 클래스 대부분이 1~9건입니다.
- 메인 볼트 검색과 실제 사용자 질의. r3 검색 표적은 모두 위키 페이지이고, 한국어 질의는 한 모델이 description을 보고 만든 질문입니다.
- 검토 시간 절감. 검토 분은 아직 잰 적이 없습니다.
06 Lessons이번 실행에서 배운 것
잘한 것을 먼저, 개선할 것을 다음에 적습니다.
잘한 것
- 봉인한 최종 분할을 한 번만 열었습니다. 등록 해시와 동결 파일 해시가 일치했고(r2 동결 파일 18개), 결과 전에 적은 예측과 대조할 수 있었습니다.
- Jev를 이길 수 있는 코드 기준선을 먼저 돌렸습니다. 규칙표 101/120이 Jev 91/120을 앞서, Jev를 쓰지 않을 자리를 알려 줬습니다.
- 어려운 문항이 모델을 갈랐습니다. 문항 합이 편별 7.0~9.5로 벌어졌고, P10 만점은 한 편뿐이었습니다.
- 비용은 채점이 끝난 뒤에 열었습니다. 블라인드를 지키면서도 "같은 돈으로 누가 더 잘 쓰는가"를 따로 답할 수 있었습니다.
- 실패 기록을 지우지 않았습니다. 1차 실패 영수증, 과소 집계된 예산 파일, 수정 전 하네스 해시를 남기고 분석 코드는 추가만 했습니다.
- 결함을 다음 라운드 전에 고쳤습니다. 잠금 원장을 도입한 r2부터 원장값이 호출 기록과 정확히 같았고, 한국어 BM25 우회로 후보 재현율이 올랐습니다.
- 헤드와 같은 모델에 불리한 결과도 그대로 적었습니다. 비용 3위, 입력 설계 반증 모두 본문에 남겼습니다.
- 싸게 끝났습니다. Jev 세 라운드 3,560회, $0.3471이었습니다.
개선할 것
- 변별 없는 문항. P2, P5, P6, P7은 일곱 편 모두 만점이었습니다. 다음 패킷에서 교체합니다.
- 파일 경로 오류. 외부 모델 보고서 5편을 처음에 잘못된 폴더에 저장해, 첫 채점에서 누락됐다가 수리 절차에서 다시 채점했습니다. 해당 스코어카드마다 재채점 사실을 적었습니다. 외부 원본 경로를 고정하고, 감싸기 전에 원본 수와 성공 영수증 수를 대조합니다.
- 감싸기 스크립트. 성공한 원본을 지우고 매핑 파일을 통째로 덮어써, 재실행 때 다른 모델이 누락으로 표시됐습니다. 원본은 이름만 바꾸고, 매핑은 라벨 단위로 병합합니다.
- 네이티브 에이전트의 완주. Claude Fable 5.1은 두 번 모두 자동 압축 반복으로 본문 없이 끝났습니다. 절마다 파일에 누적해 쓰고, 두 번 실패하면 미제출 확정을 사전 등록합니다.
- 서버 오류 재시도. Grok 4.7 1차 시도는 전송 3회가 모두 5xx였습니다. 대기 후 재시도와 실패 영수증 보존을 기본값으로 둡니다.
- 예산 원장 경쟁. r1은 네 프로세스가 각자 메모리 원장으로 같은 파일을 덮어써, 1,557회 3,269,848 tokens 가운데 775회 1,906,450 tokens만 기록됐습니다. 초과는 없었고, r2부터 잠금 원장으로 닫았습니다.
- 한국어 전문 검색 색인. 음절 구문 질의는 우회일 뿐 색인은 그대로입니다. 호출 전에 BM25 목록이 비지 않았는지 확인합니다.
- 개인정보 필터의 위치와 범위. 필터가 노트의 제목과 description만 읽어, description이 없는 노트 1건에서 본문 앞부분이 검사 없이 검색 후보 요약에 실려 전송됐습니다. 검사 결과는 "결정 대기" 경고로 남았지만 차단이 아니어서 다음 조건이 그대로 시작됐고, 질문 생성을 위한 외부 모델 호출도 필터가 생기기 전에 한 번 실행됐습니다. 그래서 세 가지를 고쳤습니다. 필터는 표본 추출과 모든 외부 호출보다 앞에 둡니다. 검사 대상은 노트 필드가 아니라 조립된 최종 요청 문자열 전체입니다. 결정 대기 항목이 있으면 하네스가 실행을 거부합니다. r3에서는 차단되어야 할 시험 문자열 35개가 모두 차단됐고 전송 시 차단은 0건이었습니다. 규칙이 정규식이라 과잉 차단과 누락은 여전히 가능합니다.
- 분량 측정. 같은 보고서가 로캘에 따라 7,650단어와 6,845단어로 셌습니다. 기준 문서와 프롬프트에 측정 명령을 로캘까지 명시합니다.
- 자기 선호. 헤드와 같은 모델의 보고서에는 다른 벤더 채점을 한 패스 더합니다.
- 하네스 안 실행 비용. 같은 모델도 에이전트 하네스 안에서는 컨텍스트 재독 때문에 단일 요청의 3.36배로 환산됐습니다. 모델 비교는 단일 요청 조건으로 맞춥니다.