← 최신 논문
🤖 AI

AutoSaddler: Automatic Harness Optimization with Durable Updates from Agent Execution Traces

AutoSaddler는 실행 로그로부터 실패 흔적을 반복적으로 진단하고 구조화된 코드 패치를 생성함으로써 LLM 에이전트 하네스를 최적화하여, 여러 벤치마크에 걸쳐 장기적 과제(long-horizon tasks)에 대한 에이전트의 견고성과 성능을 크게 향상시키는 자동화 프레임워크입니다.

원저자: Sungho Park, Wonjoong Kim, Rongyuan Tan, Jue Zhang, Wook-Shin Han, Pengfei Gao, Chanyoung Park, Yongqiang Yao, Rao Fu, Elsie Nallipogu, Qingwei Lin, Saravan Rajmohan, Dongmei Zhang

게시일 2026-08-25
📖 4 분 읽기☕ 가벼운 읽기

원저자: Sungho Park, Wonjoong Kim, Rongyuan Tan, Jue Zhang, Wook-Shin Han, Pengfei Gao, Chanyoung Park, Yongqiang Yao, Rao Fu, Elsie Nallipogu, Qingwei Lin, Saravan Rajmohan, Dongmei Zhang

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

인공지능이 급격히 진화하는 세상에서, 연구자들은 단순히 질문에 답하는 것을 넘어 실제로 행동하는 시스템을 점점 더 많이 구축하고 있습니다. 이러한 "에이전트"는 대규모 언어 모델을 기반으로 하는 소프트웨어 프로그램으로, 복잡한 문제를 해결하기 위해 일련의 단계를 계획하고, 디지털 도구를 사용하며, 컴퓨터 환경과 상호작용할 수 있습니다. 컴퓨터에게 일주일 치의 여행을 계획하고, 항공권을 예약하며, 호텔을 예약하라고 요청하는 상황을 상상해 보십시오. 에이전트는 단순히 목록만 제공하는 것이 아니라, 직접 로그인하고, 검색하고, 가격을 비교하며, 예약을 완료합니다. 그러나 이러한 시스템은 작업이 길어지거나 복잡해지면 종종 어려움을 겪습니다. 과정 초기에 발생하는 작은 실수 하나, 예를 들어 단 하나의 지침을 잘못 해석하는 것만으로도 몇 시간 뒤에는 전체적인 실패로 이어질 수 있습니다. 이를 방지하기 위해 엔지니어들은 에이전트 주변에 "하네스(harness)"라고 불리는 보호 계층의 코드를 구축합니다. 이 하네스는 감독관 역할을 하며 에이전트의 작업을 확인하고, 도구를 관리하며, 시스템이 궤도를 벗어나지 않도록 보장합니다. 수년 동안 이 하네스를 설계하는 것은 인간 전문가가 지침과 설정을 수동으로 미세하게 조정해야 하는 느리고 수동적인 작업이었으며, 이는 규모를 키우기 어렵고 시스템을 종종 취약하게 만들었습니다.

한 연구팀은 이 설계 과정 전체를 자동화하는 AutoSaddler라는 새로운 방법을 도입했습니다. 감독관 코드를 수정하기 위해 인간의 직관에 의존하는 대신, 이 시스템은 하네스 자체를 엄격한 테스트와 학습 과정을 통해 개선될 수 있는 하나의 소프트웨어 조각으로 취급합니다. 연구진은 이 문제를 오프라인 학습 과제로 공식화했는데, 이는 시스템이 실시간으로 문제를 해결하려고 노력하기보다 과거의 실패 사례 모음으로부터 학습함을 의미합니다. 연구진은 에이전트가 완료하는 데 실패했던 일련의 작업들을 시스템에 입력했습니다. 그런 다음 시스템은 이러한 실패의 상세 기록인 '실행 추적(execution traces)'을 분석하여 에이전트가 정확히 어디에서 왜 잘못되었는지 파악했습니다. 시스템은 단순히 추측하는 것이 아니라, 마치 정비사가 단순히 어떤 볼트를 조여야 할지 추측하는 대신 소리를 듣고 부품을 점검하여 자동차 엔진을 진단하는 것처럼, 코드와 로그를 깊이 파고들어 근본 원인을 찾아냈습니다.

시스템이 문제를 식별하면, 하네스 코드에 대한 구체적이고 구조화된 수정 사항인 "패치(patch)"를 생성했습니다. 이러한 패치는 무작위적인 편집이 아니었습니다. 이들은 에이전트의 지침 변경, 에이전트가 사용할 수 있는 도구의 변경, 그리고 행동을 제어하는 로직의 변경이라는 세 가지 유형으로 정교하게 분류되었습니다. 시스템은 패치가 실제로 작동하는지 확인하기 위해 동일한 배치(batch)의 작업들에 대해 즉시 테스트를 수행했습니다. 만약 패치가 다른 부분을 망가뜨리지 않고 즉각적인 문제를 해결했다면, 시스템은 두 번째의 결정적인 단계인 '새로운 미지의 작업에서도 작동할 것인가'를 확인하는 단계로 넘어갔습니다. 이 단계는 시스템이 단순히 본 문제들에 대한 정답을 암기하는 것이 아니라, 실제로 일반적인 방식으로 똑똑해지고 있는지를 보장하는 데 필수적이었습니다. 연구진은 모든 변경 사항, 모든 성공, 그리고 모든 실패의 이력을 추적하는 유향 그래프(directed graph) 형태의 메모리 시스템을 구축하여, 시스템이 단지 최근의 시도만이 아니라 전체 이력으로부터 학습할 수 있도록 했습니다.

이러한 접근 방식의 결과는 상당했습니다. 복잡한 작업이 포함된 세 가지 서로 다른 벤치마크에서 테스트했을 때, 이 시스템은 원래의 수동 설계된 하네스보다 일관되게 우수한 성능을 보였습니다. 일반적인 어시스턴트 작업 세트에서 이 자동화된 시스템은 성공률을 9%포인트 향상시켰습니다. 소프트웨어 엔지니어링 작업 벤치마크에서는 거의 10%포인트 향상되었으며, 터미널 기반 문제 해결 테스트에서도 10%포인트를 획득했습니다. 이러한 성과는 원래의 수동 설계뿐만 아니라 시스템을 최적화하려고 시도했던 다른 자동화 방법들까지도 능가할 만큼 상당한 수준이었습니다. 연구진은 이 성공의 핵심이 단순히 많은 무작위 변경을 시도하는 것이 아니라, 깊은 진단에 집중하고, 표적화된 구조적 변화를 가하며, 광범위하게 유용함이 증명된 변화만을 엄격하게 선택하는 데 있다는 것을 발견했습니다.

이 연구는 직관적으로 보일 수 있지만 효과가 없는 몇 가지 일반적인 접근 방식들을 명시적으로 배제했습니다. 연구진은 코드와 로그에 대한 심층적인 조사 없이 단순히 실패에 대해 반성하는 것만으로는 얕은 해결책에 그쳐 지속되지 못한다는 것을 보여주었습니다. 또한, 시스템이 코드에 대해 제약 없는 무작위 편집을 하도록 허용하는 것이 체계적인 탐색 대신 혼란스러운 탐색을 초래하여, 주요한 구조적 개선은 무시한 채 사소한 텍스트 수정에만 머물게 된다는 것을 입증했습니다. 나아가, 학습 중에 본 특정 작업들에 대해서만 최적화하는 것은 시스템이 과적합(overfitting)되게 만들어, 해당 특정 작업에는 탁월해지지만 새로운 변형에 직면했을 때는 실패하게 만든다는 것을 발견했습니다. 시스템은 변경 사항을 별도의 미지의 작업들에 대해 검증하도록 강제되었을 때만 성공했으며, 이를 통해 개선 사항이 내구성이 있고 일반적임을 보장했습니다.

광범-한 테스트를 통해 연구진은 그들의 방법이 견고하고 효율적임을 확인했습니다. 이 시스템은 경쟁 방법들보다 훨씬 적은 컴퓨터 자원을 사용하여 높은 수준의 성능에 도달했으며, 동일한 교훈을 얻기 위해 약 10배 적은 시도만을 필요로 했습니다. 이러한 효율성은 시스템이 수백만 번의 무작위 추측을 통해 해결책을 억지로 찾아내는 브루트 포스(brute-force) 방식이 아니라, 각 실패로부터 깊이 있게 학습하는 능력에서 비롯되었습니다. 이 연구는 신뢰할 수 있는 AI 에이전트의 미래가 자신의 운영 지침을 체계적으로 디버깅하고 정교화할 수 있는 자동화된 자기 개선 프레임워크에 있음을 시사합니다. 하네스를 증거 기반의 진단과 구조적 수리를 통해 진화할 수 있는 코드로 취급함으로써, 연구진은 지속적인 인간의 개입 없이도 현실 세계의 길고 복잡한 업무를 처리할 수 있는 더 유능하고 신뢰할 수 있는 인공지능 시스템을 향한 길을 열었습니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →