NIST 데이터, AI 에이전트 툴의 논리적 오류 포착
- •계산기에 의도적인 논리 오류를 삽입했음에도 390개 테스트 중 389개를 통과하는 현상이 발생했다.
- •NIST의 Longley 회귀 데이터셋이 계산기의 결함 있는 공식을 입증하는 독립적인 증거로 작용했다.
- •작성자는 AI 에이전트 도구를 검증하고 필요시 증거에 기반해 권한을 취소할 수 있는 5계층 테스트 스택을 제안했다.
AI 에이전트용 도구를 개발 중인 돈 존슨(Don Johnson)은 자신의 Rust 라이브러리 계산기 회귀 연산에서 치명적인 오류가 있음에도 390개의 테스트 중 389개가 통과되는 결과를 확인했다. 그는 곱셈 기호를 덧셈으로 바꾸는 변이(mutation)를 삽입해 오류를 발견했으나, 기존 테스트 스위치는 이를 전혀 감지하지 못했다. 유일하게 실패를 식별한 테스트는 NIST의 통계 참조 데이터셋(StRD) 프로젝트 중 하나인 Longley 회귀 데이터셋을 활용한 것이었다. 이는 결정론적 프로그램이라 할지라도 독립적이고 증거에 기반한 검증 없이는 신뢰성을 보장할 수 없음을 시사한다.
작성자는 AI 에이전트 워크플로우에서 모델 추론과 도구 실행 간의 경계를 명확히 해야 한다고 주장한다. 그는 에이전트 도구를 위한 '5계층 챌린지 스택'을 도입해 도구에 정의된 계약 내에서만 잠정적인 권한을 부여하자고 제안했다. 이 스택은 실행 가능한 계약, 예상값에 대한 독립적 참조, 수학적 법칙을 검증하는 속성 기반 테스트, 테스트 민감도를 확인하는 변이 테스트, 그리고 유형이 지정된 제한적 실패 보고서로 구성된다. 이를 통해 단순한 예시 기반 테스트를 넘어 도구가 제공하는 출력을 에이전트가 검사하고 재실행할 수 있도록 체계를 갖춰야 한다.
이번 실험은 엄격한 입력 검증이 있더라도 도구가 자원 경계를 제대로 강제하지 못하거나 스키마 일관성을 유지하지 못할 수 있음을 보여줬다. 존슨은 계산기를 수정해 JSON 요청에서 알 수 없는 필드를 거부하도록 했고, 최적화 인터페이스에 10만 회의 반복과 100만 개의 격자 지점이라는 하드 제한을 추가했다. 특히 cargo-mutants를 활용해 11가지의 잠재적 결함을 식별하는 검증 체계를 마련했으며, 이는 코드에 대한 맹신 대신 증거 기반의 보정 과정을 통해 에이전트가 검증된 계약 내에서만 도구의 출력을 신뢰하게 만든다.