핵심 요약
소프트웨어 엔지니어링(SWE) 작업에서 발생하는 긴 추론 과정이 컨텍스트 폭발과 성능 저하를 일으키는 문제를 해결한다. 동적 추론 컨텍스트 전략을 통해 깊은 사고 능력과 추론 효율성 사이의 균형을 맞추어, 소형 모델로도 복잡한 버그 수정 작업을 수행할 수 있게 한다.
왜 중요한가
소프트웨어 엔지니어링(SWE) 작업에서 발생하는 긴 추론 과정이 컨텍스트 폭발과 성능 저하를 일으키는 문제를 해결한다. 동적 추론 컨텍스트 전략을 통해 깊은 사고 능력과 추론 효율성 사이의 균형을 맞추어, 소형 모델로도 복잡한 버그 수정 작업을 수행할 수 있게 한다.
핵심 기여
Dynamic Reasoning Context 전략
최근 N단계의 상세 추론은 유지하되 이전 기록은 요약된 Reasoning Digest로 압축하는 슬라이딩 윈도우 방식을 도입하여 컨텍스트 폭발을 방지한다.
Trajectory Snapshot Training
긴 궤적을 개별 스냅샷으로 분해하고 컨텍스트 마스킹을 적용하여, 모델이 런타임의 동적 컨텍스트 제약 조건 하에서 학습하도록 설계했다.
Hindsight Backfill 데이터 합성
성공한 궤적에 강력한 추론 모델을 활용해 상세 추론 과정과 요약을 사후적으로 추가함으로써 고품질의 System-2 추론 데이터를 생성한다.
Compression-Aware Optimization
RLVR 과정에서 작업 성공률과 컨텍스트 압축률을 동시에 고려하는 보상 함수를 설계하여 효율적인 추론 요약 생성을 유도한다.
핵심 아이디어 이해하기
기존의 ReAct 방식 에이전트는 복잡한 문제를 깊이 분석하는 System-2 사고 능력이 부족하며, 이를 해결하기 위해 긴 Chain-of-Thought(CoT)를 도입하면 컨텍스트가 급격히 늘어나 'Lost-in-the-Middle' 현상이 발생한다. Transformer의 Attention 메커니즘은 입력 시퀀스가 길어질수록 연산량과 메모리 사용량이 급증하며, 중요한 정보를 놓치기 쉬운 구조적 한계가 있다.
SWE-AGILE은 인간이 문제를 풀 때 직전의 상세한 생각은 기억하면서도 오래된 사고 과정은 핵심 결론 위주로 기억한다는 점에 착안했다. 이를 위해 상세 추론(rt)은 일정 범위 내에서만 유지하고, 범위를 벗어난 추론은 즉시 요약본(dt)으로 대체하여 영구 보관하는 하이브리드 컨텍스트 관리 방식을 사용한다.
이 방식은 모델이 매 단계마다 처음부터 다시 추론해야 하는 중복 연산을 줄여주며, 8B 규모의 작은 파라미터 모델에서도 수만 토큰에 달하는 긴 작업 과정을 효율적으로 처리할 수 있게 한다. 결과적으로 추론의 깊이는 유지하면서도 컨텍스트 비용을 획기적으로 절감하여 성능과 효율의 파레토 최적을 달성한다.
관련 Figure

SWE-AGILE이 슬라이딩 윈도우를 통해 상세 추론을 압축함으로써 컨텍스트 바의 급격한 상승을 억제하고 '톱니바퀴(Sawtooth)' 형태의 지속 가능한 성장을 유지함을 보여준다. 이는 Interleaved Thinking의 선형적 폭발 문제를 해결하는 핵심 원리를 시각화한다.
Shallow Thinking, Interleaved Thinking, SWE-AGILE의 세 가지 컨텍스트 성장 패턴 비교 다이어그램
방법론
전체 프레임워크는 동적 컨텍스트 관리와 이를 학습시키기 위한 스냅샷 기반 훈련 및 강화학습으로 구성된다. 에이전트의 응답 Yt는 상세 추론(rt), 추론 요약(dt), 실행 액션(at)의 세 부분으로 구성되며, 컨텍스트 Ct는 환경 상호작용 기록에 슬라이딩 윈도우 기반의 추론 요약이 결합된 형태이다.
Trajectory Snapshot Training에서는 전체 궤적 τ를 개별 단계 t의 스냅샷 (Ct, Yt)로 분해한다. 입력 Ct에서 윈도우 밖의 추론 토큰에 마스크 0을 적용하여 고정된 프롬프트로 처리하고, 현재 단계의 응답 Yt에만 마스크 1을 부여해 학습 목표로 삼는다. 이는 훈련과 추론 시점의 컨텍스트 가시성 불일치 문제를 해결한다.
RLVR(Reinforcement Learning with Verifiable Rewards) 단계에서는 작업 성공 여부(Isuccess)와 궤적 수준 압축률(Rcomp)을 결합한 보상 함수를 사용한다. Rcomp = 1 - (Lhybrid / Lfull) 식을 통해 전체 추론 기록을 유지했을 때 대비 절감된 토큰 비율을 계산하며, 성공한 경우에만 압축 보상을 부여하여 모델이 성능 저하 없이 간결한 요약을 생성하도록 최적화한다.
관련 Figure

궤적을 스냅샷으로 나누어 학습하는 과정과 사후 데이터 합성(Backfilling), 그리고 압축률 기반 보상을 통한 강화학습 구조를 종합적으로 설명한다. 각 구성 요소가 어떻게 상호작용하여 효율적인 에이전트를 만드는지 나타낸다.
SWE-AGILE의 전체 프레임워크 개요도로 스냅샷 훈련, 데이터 합성, RLVR 과정을 포함함
주요 결과
SWE-Bench-Verified 벤치마크에서 Qwen3-8B 모델을 기반으로 한 SWE-AGILE은 24.1%의 성공률을 기록하며 기존 7B-8B 체급 모델 중 최고 성능을 달성했다. 이는 기본 모델(15.83%) 대비 약 52% 향상된 수치이며, 14B 모델인 SkyRL-Agent-v0(21.6%)보다도 높은 성능이다.
Ablation Study 결과, 상세 추론을 모두 삭제하는 방식(0.03%)이나 모두 유지하는 방식(12.42%)보다 SWE-AGILE의 동적 컨텍스트 방식(21.45%, SFT 기준)이 월등히 우수했다. 특히 추론 요약(dt)의 길이는 RLVR을 통해 기존 41.0 토큰에서 27.3 토큰으로 약 33.4% 감소하면서도 성능은 유지되는 효율성을 보였다.
관련 Figure

SWE-AGILE(SFT+RL)이 기존 방식 대비 추론 부하를 약 28% 줄이면서도 요약 길이를 효과적으로 압축함을 수치로 증명한다. 특히 RL 적용 시 요약 효율이 33.4% 개선됨을 확인할 수 있다.
모델별 단계당 평균 추론 길이(Reasoning Length)와 요약 길이(Textual Summary Length) 비교 차트
기술 상세
SWE-AGILE 아키텍처는 추론의 일시성과 요약의 영구성을 분리하여 관리한다. 수식 Ct = [∪(oi, di, ai)] ⊕ [∪(oj, rj, dj, aj)] ⊕ ot에서 알 수 있듯이, t-N 단계 이전의 추론 r은 삭제되고 요약 d만 남는다. 이는 표준적인 대화 요약 방식(예: LangChain)이 전체 대화를 하나의 덩어리로 요약하는 것과 달리, 단계별 모듈 구조를 유지하여 오류 전파를 방지한다.
학습 데이터 부족 문제를 해결하기 위해 도입된 Hindsight Backfill 파이프라인은 Qwen3-235B와 같은 강력한 모델을 'Reasoning Synthesizer'로 활용한다. 정답 액션(at)과 원래의 얕은 생각(st)을 힌트로 제공하여, 모델이 정답에 도달하기 위한 논리적 System-2 추론 과정을 사후적으로 생성하게 함으로써 학습의 질을 높였다.
최적화 알고리즘으로는 DAPO를 사용하며, 보상 함수에 min(Rcomp, γ) 클리핑을 적용하여 모델이 보상을 얻기 위해 추론 rt를 인위적으로 늘리는 '리워드 해킹'을 방지한다. 또한 XML 기반의 툴 호출 포맷을 채택하여 복잡한 코드 스니펫이 포함된 인자를 안정적으로 파싱할 수 있도록 구현했다.
한계점
현재 버전에서는 슬라이딩 윈도우의 크기(N)를 학습 및 추론 시 [2, 5] 사이의 랜덤한 정수로 설정하고 있다. 윈도우 크기가 에이전트의 성능과 효율성에 미치는 구체적인 영향에 대한 심층적인 분석은 아직 이루어지지 않았다.
실무 활용
제한된 컴퓨팅 자원을 가진 환경에서 고성능 소프트웨어 에이전트를 구축하려는 개발자에게 유용하다. 특히 긴 작업 흐름이 필요한 버그 수정이나 코드 리팩터링 도구에 적용하여 API 비용을 절감하고 응답 속도를 높일 수 있다.
- 오픈소스 저장소의 이슈 자동 분석 및 패치 생성 에이전트
- IDE 내에서 복잡한 코드 문맥을 유지하며 단계별 가이드를 제공하는 코딩 어시스턴트
- 대규모 로그 분석 및 장애 원인 파악을 위한 장기 추론 시스템
- 제한된 컨텍스트 윈도우를 가진 온디바이스 AI 모델의 추론 효율화
코드 공개 여부: 공개
코드 저장소 보기키워드
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.