AutoSaddler, 실패 궤적에서 에이전트 실행 하네스를 자동 개선
들어가며
LLM 에이전트의 성능은 모델 자체만으로 결정되지 않습니다. 프롬프트를 구성하는 방식, 도구를 호출하는 규칙, 재시도 조건, 컨텍스트를 유지하는 방법 등 모델 주변의 실행 하네스가 실제 성공 여부에 큰 영향을 줍니다. 특히 여러 단계가 이어지는 장기 작업에서는 초기에 발생한 작은 오류가 후속 행동에 누적돼 최종 실패로 확대될 수 있습니다.
그러나 하네스 설계는 여전히 많은 수작업을 요구합니다. 개발자는 실행 기록을 직접 살펴보며 지시문과 도구 설정, 제어 흐름을 바꿔야 하고, 특정 사례를 해결한 수정이 다른 작업에서도 효과적인지 확인해야 합니다. AutoSaddler는 이 과정을 실패 데이터에 기반한 반복적 오프라인 최적화로 바꾸려는 접근입니다.
작동 방식
AutoSaddler의 핵심은 세 가지입니다.
- 실패 궤적 진단: 최종 성공 여부만 보지 않고, 실행의 어느 단계에서 문제가 발생했는지와 어떤 하네스 요소가 원인인지 분석합니다.
- 구조화된 패치 생성: 하네스를 코드처럼 취급해 프롬프트, 도구 구성, 제어 로직에 대해 진단된 문제와 연결된 수정안을 만듭니다.
- 검증 기반 업데이트 선택: 한 번의 실패를 고쳤다는 이유만으로 변경을 반영하지 않고, 더 넓은 작업과 궤적에서 효과가 유지되는지 평가합니다.
프로세스는 오프라인 반복 루프로 구성됩니다. 작은 실행 기록 묶음에서 실패 신호를 추출하고, 원인을 진단한 다음 후보 패치를 생성합니다. 이후 검증 결과가 기존 하네스보다 나은 업데이트를 선택합니다. 따라서 실행 당시의 일회성 자기반성에 머무르지 않고, 다음 실행에도 남는 시스템 수준의 개선을 만들 수 있습니다.
실험 결과와 시사점
GAIA2, SWE-Bench Pro, Terminal-Bench 2.0에서 AutoSaddler는 각각의 기본 하네스보다 9.0, 9.6, 10.0%포인트 높은 성능을 기록했습니다. 이 결과는 기반 모델을 바꾸지 않더라도 에이전트의 실행 계층에서 상당한 개선 여지가 있음을 보여줍니다.
소거 실험은 세 가지 원칙을 강조합니다. 첫째, 피상적인 반성보다 실패 원인을 깊게 추적하는 디버깅이 효과적입니다. 둘째, 하네스 전체를 자유롭게 다시 쓰기보다 문제를 겨냥한 수정이 안정적입니다. 셋째, 업데이트는 원래의 실패 궤적에만 맞춰져서는 안 되며 다른 궤적에도 일반화돼야 합니다.
의미와 과제
AutoSaddler는 하네스를 모델의 고정된 주변 장치가 아니라 테스트와 수정이 가능한 소프트웨어 시스템으로 바라보게 합니다. 에이전트 개선의 대상도 더 큰 모델이나 긴 추론만이 아니라 도구 사용, 컨텍스트 관리, 오류 복구, 실행 제어로 확장됩니다.
물론 자동 패치가 항상 안전한 것은 아닙니다. 신뢰할 수 있는 회귀 테스트가 필요하며, 진단 품질은 수집된 실행 궤적의 다양성과 정확도에 좌우됩니다. 평가 범위가 좁으면 특정 사례에 대한 과적합도 놓칠 수 있습니다. 그럼에도 코딩과 터미널 작업처럼 장시간 실행되는 에이전트에서 실패를 재사용 가능한 개선으로 전환한다는 방향은, 실제 운영 안정성을 높일 유력한 방법으로 볼 수 있습니다.
댓글
로그인 상태 확인 중…
댓글 불러오는 중…