에이전트 하네스를 자동으로 개선하는 연구가 늘고 있습니다. 근데 기존 방법들은 반복할수록 성능이 출렁입니다. DREvo는 이 문제를 “과거 경험이 지금 하네스에도 유효한가”라는 질문로 풀었습니다.

핵심은 이겁니다. 하네스를 진화시키면서 쌓이는 경험을 함수 단위로 쪼개고, 각 경험이 현재 하네스 상태에서 여전히 의미가 있는지 다시 평가한 다음, 검증된 경험을 명시적 검색 의도로 변환해서 다음 수정 방향을 제시합니다.

논문: DREvo: Distilling Recalibrated Historical Experience for Harness Self-Evolution

기존 하네스 자가진화가 불안정한 이유

하네스 자가진화는 다음 루프로 동작합니다.

  1. 현재 하네스로 에이전트 실행
  2. 실행 결과(궤적, 점수, 실패 요약)를 히스토리에 축적
  3. 히스토리를 참고해서 다음 하네스 후보 생성
  4. 반복

문제는 히스토리가 쌓여도 성능이 안정적으로 오르지 않는다는 겁니다. 논문 Figure 1에서 기존 방법(Meta-harness)의 정확도가 반복마다 크게 출렁립니다. 20번 반복해도 최고점에 도달하지 못하는 경우가 많습니다.

Figure 1: 기존 방법의 성능 출렁임

원인이 두 가지입니다.

  • 경험이 낡습니다. 초기에 유효했던 수정이 지금 하네스에서는 해가 될 수 있습니다. 근데 기존 방법은 이걸 그대로 히스토리에 둡니다.
  • 수정 방향이 모호합니다. “어떤 컴포넌트를 바꿔야 하는지”를 제안 모델이 암묵적으로 판단합니다. 히스토리가 길어지면 판단이 불안정해집니다.

DREvo의 세 단계 구조

DREvo는 세 단계로 이 문제를 해결합니다.

Figure 2: DREvo 프레임워크 개요

1. 함수 단위 증거 고정 (Function-Level Evidence Anchoring)

반복 단위의 로그를 통째로 쓰지 않고, 하네스를 구성하는 함수 단위로 쪼갭니다. 코드 diff를 파싱해서 어떤 함수가 바뀌었는지 찾고, 그 함수에 대한 피드백을 별도 증거 단위로 저장합니다.

함수가 바뀌었을 때 성능이 올라갔으면 양극(+), 내려갔으면 음극(-)으로 표시합니다. 단일 컴포넌트 수정이면 가중치 1.0, 여러 컴포넌트가 동시에 바뀌었으면 0.5로 낮춥니다. 이유는 어디 때문에 바뀌었는지 특정하기 어려워서입니다.

2. 상태 의존 증거 재보정 (State-Dependent Evidence Recalibration)

각 증거가 “아직 믿을 수 있는지” 두 가지 기준으로 평가합니다.

  • 과거 신뢰도 r(e): 이 증거를 참고했을 때 일관되게 같은 결과가 나왔는지. 성능 변화의 방향이 과거 기록과 일치하는 비율(freshness까지 감가상각).
  • 구조적 호환성 q(e): 증거가 만들어졌을 때의 함수 AST와 현재 하네스의 함수 AST 사이의 트리 편집 거리. 코드가 많이 바뀌었으면 호환성이 낮아집니다.

최종 가중치는 이 둘의 조화평균입니다. 하나가 낮으면 전체가 낮아집니다.

3. 역할 조건부 검색 의도 증류 (Role-Conditioned Search Intent Distillation)

보정된 증거를 네 가지 역할로 분류합니다.

역할조건행동
Exploit가중치 높음, 양극검증된 방향을 그대로 따름
Avoid가중치 높음, 음극알려진 해로운 수정를 회피
Retest가중치 낮음비참고 자료로만 제시
Explore해당 증거 없음제안 모델이 자유롭게 탐색

이 역할 배정 결과를 “search intent”라는 명시적 지시문으로 만들어서 제안 모델에 전달합니다. 제안 모델은 히스토리를 해석할 필요 없이, 지시문에 따라 하네스의 특정 컴포넌트를 수정합니다.

실험 결과

다섯 벤치마크에서 평가했습니다.

벤치마크이전 최고DREvo향상
USPTO16.0%25.0%+9.0
S2D86.8%89.2%+2.4
Law45.0%49.0%+4.0
Terminal-Bench 2.034.8%42.7%+7.9
SWE-Bench Verified61.8%67.6%+5.8

도메인 추론 작업에서 평균 16.2%, 에이전트 작업에서 평균 14.2% 향상입니다.

Table 3: 컴포넌트별 기여도

진화 궤적 안정성

Figure 3: 정확도와 컨텍스트 크기 비교

DREvo의 진화 궤적이 Meta-harness보다 훨씬 안정적입니다. 컨텍스트 크기도 약 2.9K 토큰으로 일정하게 유지됩니다. Meta-harness는 5.3K 토큰까지 증가하면서 성능이 출렁입니다.

컴포넌트 드리프트 실험

Figure 4: 의도적 하네스 변경에 대한 강건성

진화가 끝난 하네스의 컴포넌트 하나를 무작위로 바꿨을 때, 맹목적 재사용은 평균 -5.3점 하락입니다. DREvo는 +0.6점을 기록했습니다. 16개 설정 중 11개에서 성능을 유지하거나 개선했습니다.

정리

DREvo가 말하는 게 뭔지 정리하면 이겁니다.

하네스 자가진화에서 “경험을 많이 쌓는 것”은 목표가 아닙니다. 중요한 건 각 경험이 현재 하네스 상태에서 유효한지 확인하고, 유효한 경험을 명시적 수정 지시로 바꾸는 것입니다.

함수 단위 고정 → 상태 기반 재보정 → 역할 기반 검색 의도. 이 세 단계가 진화 예산이 제한된 상황에서 안정적으로 고성능 하네스를 찾게 만듭니다.

제안 모델로 Claude Opus 4.6, 평가 모델로 GPT-OSS-120B(도메인 추론)와 DeepSeek-V4-Flash(에이전트)를 사용했습니다.

더 실습해보고 싶은 분들께