LLM 기반 코드 에이전트가 기존 코드베이스의 버그 수정을 넘어, 문서만 보고 전체 소프트웨어 저장소를 설계·구현하는 수준으로 진화하고 있다. DeNovoSWE는 이를 위한 대규모 학습 데이터셋과 자동 구축 파이프라인을 제시한다.

핵심 요약
DeNovoSWE는 “문서 → 전체 저장소 생성”이라는 장기(long-horizon) 소프트웨어 엔지니어링 과제를 위한 4,818개的高품질 인스턴스 데이터셋이다. 샌드박스 환경에서 자동으로 구축되며, “분할 정복(Divide and Conquer)“과 “비평-수정(Critic-Repair)” 철학을 바탕으로 설계되었다.
- 문제: 기존 SWE 벤치마크는 단일 버그 수정에 국한되며, 전체 저장소를 처음부터 생성하는 장기 과제용 훈련 데이터가 심각히 부족
- 해결: 자동화된 에이전트 워크플로우로 검증 가능한 전체 저장소 생성 데이터를 대규모 구축
- 핵심 결과: Qwen3-30B-A3B를 DeNovoSWE로 파인튜닝 시 BeyondSWE-Doc2Repo 벤치마크에서 5.8% → 47.2% 대폭 향상
DeNovoSWE 프레임워크

데이터셋 구축은 다음 단계로 이루어진다:
- 저장소 수집 및 샌드박싱: 공개 저장소를 자동 수집 후 격리된 환경에서 검증
- 분할 정복(Divide & Conquer): 전체 저장소를 모듈 단위로 분해하여 에이전트가 순차적으로 생성
- 비평-수정(Critic-Repair): 생성 결과를 자동 검증하고, 실패한 부분을 수정하는 반복 루프
- 난이도 인식 필터링(Difficulty-Aware Filtering): 쉬운 과제는 엄격하게, 어려운 과제는 관대하게 필터링하여 품질과 다양성 균형
주요 성능 결과
| 모델 | BeyondSWE-Doc2Repo | NL2RepoBench |
|---|---|---|
| Qwen3-30B-A3B (베이스라인) | 5.8% | — |
| DeNovoSWE-Agent-30A3B | 47.2% | — |
| Qwen3.5-35B-A3B (베이스라인) | 43.8% | 23.5% |
| DeNovoSWE-Agent-35A3B | 50.0% | 27.1% |
| Gemini3-Pro (참조) | 52.0% | — |
| Qwen3.5-Plus (참조) | 52.4% | — |

DeNovoSWE-Agent-35A3B는 오픈웨이트 모델임에도 Gemini3-Pro와 2.0%p, Qwen3.5-Plus와 2.4%p 차이에 불과하여, 고품질 장기 훈련 데이터가 모델 크기의 한계를 상당 부분 보완할 수 있음을 보여준다.
난이도 인식 필터링의 효과
필터링 전략의 핵심 통찰:
- 저난이도 구간 [0.0, 0.2): 낮은 궤적 점수는 본질적 난이도가 아니라 실행 노이즈나 불충분한 롤아웃일 가능성이 높음 → 엄격한 필터링
- 고난이도 구간: 궤적 점수가 낮아도 본질적 난이도를 반영 → 관대한 필터링으로 가치 있는 데이터 보존
이 전략은 BeyondSWE-Doc2Repo에서 0.488 → 0.500, NL2RepoBench에서 0.264 → 0.271로 추가 향상을 가져왔다.
시사점과 한계
시사점:
- 데이터 품질이 모델 크기를 잇는다: 훨씬 작은 오픈웨이트 모델이 고품질 장기 과제 데이터로 프로프라이어터리 모델에 근접
- 자동화된 검증 파이프라인: 사람 주석 없이 검증 가능한 전체 저장소 생성 데이터를 대규모 구축 가능
- 장기 추론 훈련의 새 패러다임: 단일 편집이 아닌 전체 프로젝트 생성이라는 실제 SWE 워크플로우에 가까운 훈련
한계:
- Python 생태계에 편중되어 있어 다른 언어/프레임워크로의 일반화는 미확인
- 생성된 저장소의 기능적 정확성 외에 코드 품질(가독성, 아키텍처) 평가는 부족
- 샌드박스 환경이 실제 개발 환경의 모든 복잡성을 담지 못함
결론
DeNovoSWE는 “전체 저장소를 처음부터 생성하는” 장기 소프트웨어 엔지니어링 에이전트를 훈련하기 위한 실용적이고 확장 가능한 데이터셋이다. 분할 정복과 비평-수정 기반의 자동 구축 파이프라인, 그리고 난이도 인식 필터링 전략은 향후 장기 추론 에이전트 연구에 중요한 기여가 될 것이다.
논문: DeNovoSWE: Scaling Long-Horizon Environments for Generating Entire Repositories from Scratch