에이전트는 테스트·검증 기법을 얼마나 잘 활용하는가?

2 hours ago 4

Rust로 Zstd를 구현하는 코딩 에이전트에 26가지 테스트·검증 지시와 4가지 스킬을 적용했지만, 기법 이름을 알려주는 것만으로 구현 정확도가 크게 개선되지는 않음 형식적 검증과 속성 기반 테스트를 사용해도 버그가 잦은 부분보다 단순한 산술 속성, 자명한 증명, 잘못된 입력의 거부 경로에 집중했으며, 실제 정확도는 주로 일반 단위 테스트에 의존함 Codex의 GPT-5.6 Sol을 medium·xhigh 추론 강도에서 조건별로 80회씩 실행한 결과, 추가 지시가 없는 기본 조건이 평균 이상이었고 TDD와 기존 테스트 스킬은 대체로 도움이 되지 않았음 위험 영역과 의미 있는 입력을 겨냥한 짧은 맞춤형 스킬이 최고 점수를 얻었지만, 독립적인 재검증 지시는 거의 지켜지지 않았고 회문 입력으로 비트 순서 오류를 놓치는 한계도 남음 좋은 테스트를 얻으려면 기법 이름이나 테스트 개수보다 테스트·실패 분석 구조를 먼저 마련하고 실제 실행을 확인하는 작업이 중요하며, 스킬도 범용 튜토리얼보다 모델의 비효율적인 기본 행동을 교정하도록 설계할 여지가 있음 실험 설계와 사전 예측 기존 코딩 에이전트 분석에서 출발한 질문은, 테스트 전문성이 없는 사람이 기법이나 라이브러리 이름만 알려줘도 구현 정확도가 개선되는지임 프로그래밍 언어별 비용·정확도 비교에 사용한 Zstd 평가를 재사용하고, 구현 언어는 모두 Rust로 고정함 IMAP RFC에서도 조건별 40회 실험을 진행했으며, 다른 RFC는 소수의 개별 실행으로 확인함 26가지 프롬프트 조건을 비교함 ACL2, Alloy, “위험 영역을 감사하고 퍼징하라”, “먼저 감사하라”, Creusot, Default, 차등 테스트, 퍼징, Hegel, Insta, Judgement, Kani, Lean 4를 포함함 “실수하지 마라”, 메타모픽 테스트, 변이 테스트, 속성 기반 테스트, Proptest, QuickCheck, rstest, Rust 내장 테스트 프레임워크, SMT 솔버, Spin, TDD, TLA+, Verus도 시험함 SMT 조건에는 Z3·cvc5·Yices를 모두 설치했고, 기법을 지정한 조건에서도 관련 도구를 사용할 수 있도록 환경을 제공함 추가로 4가지 스킬을 시험함 Hegel 공식 스킬, ECC Rust 테스트 스킬, Trail of Bits 속성 기반 테스트 스킬, 직접 작성한 짧은 스킬을 사용함 기존 스킬 3개는 Codex에 관련 스킬을 찾아달라고 했을 때 상위...

Read Entire Article