"더 유의미한 메트릭"을 머리로 짜내지 않고, events 트레이스에서 후보를 캐 → 레이블된 데이터(success·실험원장)에 검증해서 살아남는 것만 채택한다. 왜 이 메트릭들인지 내부 실측 × MAST 논문·업계 트렌드로 근거를 댄다.
docs/METRIC_DISCOVERY_PLAN.md + docs/MAST_DEEP_DIVE_20260612.md. 수치는 live eval_ph1 DB 실측(기준 2026-06-25).추측 금지 — 후보는 데이터에서 캐고, 채택은 검증으로 가른다.
migrations의 view/mv로(SSOT, 코드 DDL 금지). v_run_features(019)가 기반.완료 run을 성공/실패로 갈라 프로세스 지표 평균, 그리고 corr(success, feature) 랭킹. 전부 live DB 실측.
| 지표 | 실패 (n=346) | 성공 (n=355) | 비고 |
|---|---|---|---|
| any_tool_err (도구에러 1건↑) | 0.286 | 0.006 | 🔥 거의 완전 분리 |
| revisions (NEEDS_REVISION 루프) | 0.62 | 0.04 | 🔥 15배 |
| total_turns | 5.57 | 3.81 | 길이(후행) |
| total_tokens | 13,465 | 5,106 | 길이(후행) |
| latency_s | 429 | 139 | 길이(후행) |
| selector_decision 행 중 tokens 채워진 비율 | 0 / 15,331 | → 020 overhead_tokens로 복구(신규 run) | |
| feature | corr | 막대 | 성격 |
|---|---|---|---|
| selector_calls | −0.456 | 길이(후행·혼입) | |
| n_events / total_turns / agent_msgs | −0.45 | 길이(후행·혼입) | |
| any_tool_err | −0.399 | 레버(인과) | |
| tool_calls | −0.380 | 부분 인과 | |
| revisions | −0.375 | 레버(인과) | |
| tool_errors | −0.362 | 레버(인과) | |
| total_tokens / latency_ms | −0.33 | 길이(후행) | |
| distinct_tools | −0.319 | 부분 인과 | |
| has_attachment | −0.287 | task 속성 | |
| first_tool_seq | −0.125 | 약함 | |
| truncated_results | +0.037 | 무의미 |
corr 상위가 곧 좋은 메트릭이 아니다. 채택 게이트: 분리력 + 인과/국소성.
any_tool_err(−0.40)·revisions(−0.38)·tool_errors(−0.36). 도구실패·재작성 루프는 답을 막는 기전이다.| 메트릭 | 내부 증거 (우리) | 외부 근거 (등급) |
|---|---|---|
| any_tool_err / tool_errors | corr −0.40/−0.36; 성공 0.6% vs 실패 28.6%; EXP-42 도구교체로 read_err 0.875→0.154·exec_err 1.0→0 | MAST FM-2.6(추론-행동 불일치 13.98%, 2위)·FM-1.3와 직결 논문; T-Eval tool-call 정합·Galileo action-advancement의 결정론 프록시 de-facto내추론 |
| revisions (재작성 루프) | corr −0.38; 0.04 vs 0.62 | MAST FM-1.3 단계반복(단일 1위 17.14%) 논문; seq 전순서라 윈도함수로 탐지 내추론 |
| 복원력 (tool_error→재시도→성공) v_run_recovery 021 | 실측: errored 111 중 recovered 3 → 도구실패 자가복구 거의 없음(재시도 헤드룸 큼) | Galileo action-advancement(스텝 진척) de-facto; trajectory가 왜를 준다 de-facto |
| selector 토큰비용 (events엔 0/15,331 → 020 복구) | 측정 공백 실측 → runner가 client.total_usage()−events합산을 overhead_tokens에 기록(신규 run); EXP-60(selector는 load-bearing) | 비용은 trade-off로(벤치마크 trade-off론) de-facto; 안 재면 효율실험이 거짓결론(EXP-45) 내추론 |
| 검증품질 (FM-3.2 경유 / FM-3.3 거짓승인) v_verification_quality 022 | EXP-148: critic경유 0.60→0.75, FM-3.3 5→7. 전체 실측(completed 2,374): FM-3.3 408 · FM-3.2 466 · useful_rejection 63 | MAST FC3 검증 21.3%, 최대개입 다층검증 +15.6%p가 이 영역 논문; "verifier is not a silver bullet"은 논문 메시지 논문 |
| 안정성 (flaky=pass_any−pass_all, temp=0 결정성) | EXP-44 gap 0.333·flaky 8/24; EXP-70 N=1 '60→90'이 N=3 '93→97' | τ-bench pass^k(pᵏ 붕괴, Anthropic 모델카드 채택) 논문de-facto |
| has_attachment 컷 | corr −0.29; v5 첨부 0.182→0.50 | MAST 일반화 무대가 GAIA(멀티모달 첨부) 논문 |
Cemri, Pan, Yang … Klein, Zaharia, Gonzalez, Stoica, "Why Do Multi-Agent LLM Systems Fail?", NeurIPS 2025 Datasets & Benchmarks — arXiv:2503.13657.
Yao et al.(Sierra), arXiv:2406.12045. pass@k("1번이라도 성공") 대신 pass^k("k번 모두 성공") = pᵏ 지수붕괴 — 90% 모델도 k=8이면 57%. Anthropic 모델카드가 pass^k 채택. → 우리 EXP-44의 flaky-gap(pass_any−pass_all)이 정확히 이 지표.
failure_stage/root_cause 자동라벨링 금지 → v_run_features는 그 컬럼에 쓰지 않고 파생만(읽기전용).| 출처 | 등급 | 쓰임 |
|---|---|---|
| Cemri et al., Why Do Multi-Agent LLM Systems Fail?, NeurIPS 2025 — arXiv:2503.13657 | 논문 | MAST 14모드·검증영역·개입효과 |
| Yao et al., τ-bench — arXiv:2406.12045 (+ Anthropic 모델카드 pass^k) | 논문de-facto | pass^k 신뢰성 — 안정성 |
| Survey on Evaluation of LLM-based Agents 2503.16416 · Eval & Benchmarking of LLM Agents 2507.21504 | 논문 | trajectory/process 평가 지형 |
| From Generation to Judgment: LLM-as-a-judge 2411.16594 (+ RAND bias) | 논문de-facto | LLM-judge 편향 → 결정론 정당화 |
| LangSmith trajectory-evals · Galileo action-advancement · T-Eval | de-facto | 궤적/스텝/tool-call 관행 |
repo docs/MAST_DEEP_DIVE_20260612.md · docs/METRIC_DISCOVERY_PLAN.md · experiments 원장 EXP-40~148 | 내부 | FM↔events 매핑·모든 내부 수치 |