TrajAudit: 에이전트 기반 코딩 시스템을 위한 자동화된 실패 진단
요약
에이전트 기반 코딩 시스템의 실패 원인을 자동으로 진단하는 프레임워크인 TrajAudit를 제안합니다. 긴 실행 궤적의 노이즈를 필터링하고 테스트 보고서를 활용하여 진단 정확도를 높였으며, 새로운 벤치마크인 RootSE를 통해 성능을 입증했습니다.
핵심 포인트
- TrajAudit: 노이즈가 많은 긴 코딩 궤적을 위한 실패 진단 프레임워크
- 조사 에이전트 모듈을 통한 불필요한 정보 필터링 및 사전 지식 활용
- RootSE: 실제 소프트웨어 유지보수 사례 기반의 복잡한 벤치마크 도입
- 기존 방식 대비 위치 정확도 24.4%p 향상 및 토큰 소비 18% 절감
에이전트 시스템(Agentic systems)은 버그 수정과 같은 소프트웨어 엔지니어링 작업을 자동화하기 위해 널리 연구되어 왔습니다. 이러한 시스템이 점점 더 복잡한 작업을 다루게 됨에 따라, 반복적인 개선과 운영 신뢰성을 위해 시스템이 어디에서, 왜 실패하는지를 이해하는 것이 필수적이 되었습니다. 기존의 자동화된 실패 진단(failure diagnosis) 방식들은 작업 실행 궤적(task execution trajectories)을 활용하지만, 궤적의 길이와 복잡성이 증가함에 따라 그 효과가 크게 저하됩니다. 특히 저장소 수준(repository-level)의 코딩 작업의 경우, 궤적은 중복된 프로그램 구조나 장황한 코드 문맥(code context)과 같은 노이즈로 가득 차 있습니다. 더욱이 이러한 궤적은 매우 길지만, 긴 문맥 추론(long-context reasoning)은 대규모 언어 모델(LLMs)의 알려진 약점으로 남아 있습니다.
이 두 가지 문제를 해결하기 위해, 우리는 저장소 수준의 코딩 궤적을 위한 최초의 실패 진단 프레임워크인 TrajAudit를 제안합니다. TrajAudit는 두 개의 모듈로 지원되는 조사 에이전트(investigator agent)를 채택합니다. 하나는 패턴 매칭(pattern matching)과 키워드 탐지(keyword detection)를 통해 실패와 무관한 정보를 필터링하며, 다른 하나는 테스트 실패 보고서로부터 사전 지식(prior knowledge)으로서 예비 진단을 생성하여 에이전트가 노이즈가 많은 긴 문맥을 처리하는 데 도움을 줍니다. 조사 에이전트는 필요에 따라 필터링된 콘텐츠를 검색하기 위해 도구(tools)를 추가로 호출할 수 있으며, 이를 통해 노이즈를 최소화하면서도 중요한 정보는 보존되도록 보장합니다.
우리는 또한 소프트웨어 유지보수 작업에서 추출한 93개의 실제 에이전트 실패 사례로 구성된 벤치마크인 RootSE를 도입하며, 이는 현재까지 가장 복잡한 궤적 진단 벤치마크를 나타냅니다. RootSE에 대한 실험 결과, TrajAudit는 위치 정확도(localization accuracy) 측면에서 모든 기존 베이스라인(baselines)보다 24.4%포인트 이상 뛰어난 성능을 보였으며, 토큰 소비량을 최소 18% 줄임으로써 실질적인 효과를 입증했습니다. 우리는 이 연구가 에이전트 기반 소프트웨어 엔지니어링에서의 실패 관리(failure management)에 대한 커뮤니티의 관심을 끌고, 향후 연구를 위한 기초적인 자원을 제공하기를 바랍니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기