툴 사용 AI 에이전트의 복구 능력을 과업 능력과 분리한 UndoBench 벤치마크

UndoBench: Separating Task Competence from Recovery Capability in Tool-Using AI Agents

HF Daily2610.05622

Dolly Sah, Tanmay Sah, Harshul Jain2026-10-04

무엇인가

LLM 기반 툴 사용 에이전트는 코드 저장소 점검, 데이터베이스 마이그레이션, CRM 조회, 클라우드 프로비저닝, 해외 송금까지 수행한다. 그런데 SWE-bench, ToolBench, API-Bank, AgentBench, WebArena 같은 기존 벤치마크는 거의 전부 정상·무교란 조건만 평가한다. 분산 시스템에서는 원격 서버에서 변경이 커밋됐는데 응답 패킷이 유실되는 '승인 유실(lost acknowledgment)'이 흔한데, 이런 상황에서 에이전트가 안전하게 복구하는지는 측정되지 않는다. 논문은 하나의 종단 성공 지표가 (1) 정상 조건에서 툴을 조율해 목표를 달성하는 과업 능력과 (2) 장애 발생 시 실행 상태를 진단·조정·복구하는 복구 능력을 뒤섞는다고 지적한다.

어떻게 동작하나

UndoBench는 이 둘을 분리하기 위해 8개 엔터프라이즈 도메인(Cloud, CRM, Database, Git, Messaging, Payments, Storage, Ticketing)에 걸친 36개 기본 워크플로와 36개 장애 시나리오를 구성한다. 핵심은 동일 시드로 짝지은 반사실적 대조 실행이다. 같은 시드의 정상 대조 실행 C_i와 장애 주입 실행 F_i를 쌍으로 돌리고, 정상 수행에 성공한 시험으로 조건화한 조건부 복구 성공률 CRSR = P(Success | Fault, Comp)을 정의한다. 정상 능력이 낮으면 무조건부 복구율 RSR은 과업 실패와 복구 실패를 구분하지 못하기 때문이다. 장애는 외부 상태 변경 시점을 기준으로 PRE_MUTATION, DURING_MUTATION, POST_MUTATION_PRE_ACK, POST_ACK_PRE_CHECKPOINT, DURING_COMPENSATION의 다섯 경계로 분류한다. 평가는 두 종류의 오라클로 이루어진다. 환경 상태 오라클은 목표 불변식 충족을, 와이어 수준 효과 이력 모니터는 물리적 호출·커밋된 변경·의미론적 효과를 구분해 중복 효과율(DER), 누락 효과율(MER), 정확히 한 번 효과율(EOR), 안전하지 않은 재시도율(URR)을 계산한다. 즉 최종 문자열 답만 보면 통과하지만 실제로는 결제가 두 번 청구된 경우를 잡아낸다.

무엇과 다른가

확증 실험은 12개 held-out TEST 워크플로에 대해 오픈웨이트 모델 2종(Llama-3.1-8B-Instruct, Llama-3.2-3B-Instruct), 실행 프레임워크 2종(Direct Tool Calling, LangGraph), 복구 베이스라인 3종(나이브 재시도 B0, 멱등성 키 B2, 영권한 저널링 기반 EvoUndo-RB1 B5), 시드 20개로 고정되어 2,880개 짝 시험 / 5,760회 실행을 돌렸다. 결과는 분리가 뚜렷하다. 정상 과업 성공률은 83.54%(2,406/2,880)였지만 무조건부 복구 성공률은 39.03%(1,124/2,880), 조건부 복구 성공률 CRSR은 46.72%(1,124/2,406)로 떨어졌다. 나이브 재시도는 53.33%(512/960)의 시험에서 중복 외부 효과를 만들었다. B2는 B0 대비 +10.72pp(53.49% vs 42.77%)의 서술적 우위를 보였으나 부트스트랩 95% CI가 [0.00pp, +24.23pp], Holm 보정 p=1.00으로 통계적 우위를 세우지 못했다. 이유는 서버 지원 때문이다. TEST 엔드포인트 중 멱등성 추적을 구현한 곳은 3개(RB-PAY-004, RB-PAY-005, RB-MSG-005, 모두 CRSR 100%·DER 0%)뿐이고, 3개(RB-CLOUD-004, RB-DB-004, RB-GIT-004)는 상태 덮어쓰기나 데이터스토어 제약으로 DER 0%가 됐다. 나머지 6개 엔드포인트는 중복 제거가 없어, 5개 워크플로에서 400회 시험 전부(100%) 중복이 발생했고 RB-STOR-005에서 45.0%(36회)가 발생해 총 436건, 집계 DER 45.42%를 만들었다. 영권한 B5는 B0 대비 +1.12pp, DER 51.67%로 사실상 동등했다. 프레임워크 F1과 F2는 CRSR 46.97% vs 46.47%(Δ=+0.50pp)로 ±10pp 동등성 마진 안에서 통계적으로 동등했다(TOST p<0.001). 모델 비교는 M1 44.50%(445/1,000), M2 54.17%(547/1,010), Δ=-9.67pp였지만 95% CI [-27.08pp, +7.73pp], p=1.00으로 미해결로 남았다.

어떻게 쓰나

상용 API 모델로의 사후 확장(2,880 짝 시험)에서도 같은 분리가 재현됐다. Gemini 3.8 Flash는 정상 수행 80.69%(1,162/1,440), GLM-5.2 MaaS는 77.71%(1,119/1,440)였지만, 나이브 재시도 조건에서 CRSR은 각각 21.08%(82/389)와 21.89%(81/370)로, 정상 능력 대비 59.96pp와 55.19pp의 격차를 보였다. 중복 외부 변경은 Gemini 65.62%(315/480), GLM 51.25%(246/480)에서 발생했다. B2는 Gemini 33.33%(128/384), GLM 33.07%(124/375)로 풀링 +11.73pp(원 p=0.0176)였으나 Holm 보정 후 p=0.0528로 유의성 문턱을 넘지 못했고, B5는 +0.41pp(p_adj=0.9180)에 그쳤다.

전제와 한계

장애 시점을 옮긴 다중 경계 실험이 이 논문의 핵심 질문에 답한다. 복구는 단일 스칼라 능력이 아니라 단계 의존적 시스템 속성이다. PRE_MUTATION에서는 네 방법이 사실상 동등했고(CRSR 77.34~78.86%), 정상 수행한 3,028개 시험 중 중복 효과가 0건이었다. 반면 DURING_MUTATION에서는 부분 변경 상태를 다루는 4개 복합 워크플로(N=1,280 짝 시험)에서 B0·B2·B5가 모두 CRSR 0.00%(DER 81.56~82.50%)로 붕괴했고, 사후 추가된 검증-후-재시도 B6만 25.89%(80/309)를 회복했다. B6도 공개적으로 관측 가능한 Cloud 워크플로(RB-CLOUD-004, CRSR 100%·DER 0%)에서만 성공했고, Git 잠금 파일·멀티파트 업로드 은닉 상태·미커밋 카탈로그 메타데이터 문제에서는 실패했다. 즉 관측 가능성만으로는 부족하고 허용 가능한 복구 행동이 함께 있어야 한다. 나이브 재시도의 경계 대비는 극적이다. PRE_MUTATION 78.44% 대 POST_MUTATION_PRE_ACK 21.48%로 Δ=+56.96pp(95% CI [+27.97pp, +84.67pp])였고, 공통 지원 집합에서도 79.0% vs 21.67%(Δ=+57.34pp)로 같았다. 마지막으로 벤치마크 전역 서버 측 멱등성을 강제한 B2-K(N=960 짝 시험)는 표준 B2의 33.20% CRSR을 97.24%(741/762, DER 0.00%)로 끌어올려 격차의 95.87~97.97%를 닫았다. 다만 762개 중 21개 실패는 남았는데, 17개는 툴 호출 전 빈 응답·잘못된 호스팅 응답 때문이었고 4개는 중복 억제 이후 다중 턴 이어가기 중 잘못된 완성 때문이었다.

개발자 입장에서 이 논문의 실무적 함의는 명확하다. 에이전트의 정상 경로 성공률은 운영 신뢰성의 대리 지표가 되지 못한다. 툴 호출을 요청-응답 원시 연산으로 다루고 예외 문자열을 프롬프트에 되먹여 재시도하는 구조는, 커밋 여부가 불확실한 구간에서 중복 결제·중복 배포를 그대로 만든다. 따라서 자체 에이전트를 평가할 때는 (1) 정상 대조 실행과 장애 주입 실행을 같은 시드로 짝지어 조건부 복구율을 따로 재고, (2) 최종 답변이 아니라 외부 저장소의 실제 부수 효과를 검사하며, (3) 장애가 변경 전·변경 중·커밋 후 승인 전 중 어디서 났는지에 따라 요구되는 대응이 다르다는 점을 전제로 설계해야 한다. 변경 전에는 재발송이 안전하고, 커밋 후 승인 유실 구간에서는 서버 측 중복 제거와 재시도 전 검증이 실질적 효과를 낸다. 멱등성 키는 서버가 실제로 지원하는 엔드포인트에서만 작동한다는 점도 확인해야 한다.

저자들이 밝힌 한계는 다음과 같다. 확증 평가는 오픈웨이트 모델 2종에 집중됐고 상용 API 확장은 사후 지정 보조 실험이며, 호스팅 API는 실행 간 비트 단위 재현성을 계약으로 보장하지 않는다. TEST 스위트는 독립 과업 클러스터가 12개뿐이라 시드를 20개로 늘려도 독립 표본 수는 늘지 않는다. 확증 연구는 POST_MUTATION_PRE_ACK에 집중했고 PRE_MUTATION과 4개 워크플로의 DURING_MUTATION만 보조적으로 다뤘으며, POST_ACK_PRE_CHECKPOINT는 현재 동기 하네스에서 충실히 구현할 수 없어 미평가다. 연쇄·동시·비잔틴 장애는 다루지 않고 궤적당 정확히 한 번의 장애만 주입한다. 환경은 SQLite, 로컬 Git, 모킹된 Stripe/AWS로 실제 운영보다 동시성과 지연 분산이 낮다. B5는 도메인 휴리스틱이나 원격 프로브 없이 동작한 영권한 인스턴스로, EvoUndo 아키텍처 전체의 보상 능력을 대표하지 않는다. B6는 사후 평가라 확증 비교군이 아니고, EOR은 초기 로깅 누락 때문에 와이어 수준 로그에서 결정론적으로 재구성했다. 정상 능력이 0인 과업에서는 CRSR이 수학적으로 정의되지 않아 무조건부 RSR과 함께 봐야 하며, B0의 재시도 예산은 3회 고정이고 백오프 민감도 분석은 향후 과제다.