The Model Scored 30%. The Harness Scored 100%. Which One Did You Benchmark?
Four harnesses took the same public ARC-AGI-3 set from 13% to 100% without touching a single weight. Then Microsoft put the harness inside the training loop.
개요 #
7월 24일, ARC Prize는 Claude Opus 5가 ARC-AGI-3 공개 세트에서 30.16%를 기록했다고 검증했다. 8월 21일, NVIDIA는 같은 모델로 같은 세트에서 100.00을 보고했다. 가중치는 바뀌지 않았다. 바뀐 건 모델을 감싼 코드였다.
그 사이 MIT가 8월 5일에 같은 일을 해냈고, Impossible Research가 이끄는 그룹은 7월 15일에 98.98을 찍었다. OpenAI는 7월 29일 API 설정 두 개를 바꾸는 것만으로 GPT-5.6 Sol의 점수를 세 배로 올렸다. 그리고 8월 18일 Microsoft가 하네스를 통과시켜 모델을 학습하는 프레임워크를 발표했고, 8월 20일 Google은 환경 자체에 하네스를 붙이는 방법을 내놨다.
글쓴이는 7월에 자가 편집 하네스에 출처(provenance) 문제가 있다고 썼다. 이번 달 그 문제는 한 단계 위로 올라갔다. 벤치마크 점수 자체에 출처가 없다.
요약: ARC-AGI-3 공개 세트에서 "공식 하네스에 올린 모델"과 "최고의 하네스에 올린 모델" 사이 격차는 25~70점이다. 정확히 이런 격차를 막으려고 설계한 벤치마크에서 벌어진 일이다. 100점 중 비공개 세트로 검증된 건 하나도 없고, 저자들도 전부 그렇게 밝힌다. Microsoft의 Agent Lightning v1.0은 배포 시점 하네스가 루프를 소유한 채로 RL을 돌린다. 하네스가 가중치의 일부가 되어간다는 뜻이다. 하네스 커밋, 메모리 상태, 액션 예산이 붙지 않은 벤치마크 숫자는 타입이 표시되지 않은 자가 신고 값이다.
하나의 공개 세트, 다섯 개의 하네스 #
ARC-AGI-3는 RHAE(Relative Human Action Efficiency)로 에이전트를 채점한다. 레벨마다 score = (사람_기준_액션수 / AI_액션수)^2이고, 비율은 사람 기준의 1.15배에서 잘린다. 게임 점수는 레벨 가중 평균이며 마지막 레벨을 끝내야 온전한 점수를 받는다. 최종 숫자는 게임별 평균이다. 100.00이라면 에이전트가 모든 레벨을 처음 해보는 사람만큼, 혹은 그보다 효율적으로 끝냈다는 뜻이다.
| 하네스 | 주체 | 날짜 | 모델 | 공개 RHAE | 액션 수 | ARC Prize 검증 |
|---|---|---|---|---|---|---|
| 공식 ARC Prize 하네스 | ARC Prize | 7/24 | Claude Opus 5 (high) | 30.16% | n/a | 예 |
| 공식 하네스, 기본 설정 | OpenAI | 7/29 | GPT-5.6 Sol (max) | 13.3% | n/a | 아니오 |
| 공식 하네스 + 추론 유지 + 압축 | OpenAI | 7/29 | GPT-5.6 Sol (max) | 38.3% | 출력 토큰 6배 감소 | 아니오 |
| Schema | Impossible Research (+ UC 버클리, CMU) | 7/15 | Opus 4.8 / Fable 5 | 98.98 | n/a | 아니오 |
| VISTA | MIT (Han, Hu, Qiu, Wu, He) | 8/5 | Claude Opus 5 | 100.00 | 7,542 (사람: 17,135) | 아니오 |
| AVO | NVIDIA | 8/21 | Claude Opus 5 | 100.00 | 6,624 | 아니오 |
정작 중요한 숫자는 표 안에 없다. 첫 줄과 마지막 줄 사이의 간격, 70점이다. 같은 모델, 같은 25개 게임, 같은 지표에서 나온 차이다.
공식 하네스는 중립적인 기준선이 아니다. OpenAI는 자사 글에서 ARC 측 의도를 인용한다. "도구나 특수 기능이 없는, 의도적으로 일반적인 하네스"이며 "모델의 약점을 더 잘 드러내기 위해" 만들었다는 것이다. 실제로 이 하네스는 게임 액션마다 비공개 추론을 전부 버렸고 롤링 절단 윈도를 썼다. 기록이 쌓이면 오래된 액션부터 사라졌다. 추론을 유지하고 압축을 켜자 Sol은 13.3%에서 38.3%로 올랐고 출력 토큰은 6분의 1로 줄었다. 하네스가 수를 둘 때마다 모델의 기억을 지우고 있었던 셈이다.
즉 리더보드가 재는 건 "모델 + 모델의 약점을 드러내려고 만든 하네스"다. 100점들이 재는 건 "모델 + 모델의 약점을 가려주는 하네스"다. 어느 쪽도 모델을 재지 않으며, 70점 중 얼마가 어느 쪽 몫인지 분리해낸 사람은 아직 없다.
Photo by Markus Winkler on Pexels
저자들은 이 점에 대해 유독 솔직하다. NVIDIA는 AVO와 VISTA 비교를 "통제된 애블레이션으로 해석해서는 안 된다"고 못 박았고, 결과 역시 "AVO의 성능 기여도를 직접 측정한 것으로 해석해서는 안 된다"고 적었다. VISTA 쪽은 사용한 모델들이 "ARC-AGI-3 게임 공개 이후에 출시됐다"며 학습 데이터 중복 가능성을 배제할 수 없고 "비공개 세트가 일반화의 진짜 시험대로 남는다"고 밝혔다. Schema는 "고정 하네스나 홀드아웃 성능을 주장하지 않는다"고 썼다. 표에 있는 100점은 전부 공개 세트 숫자이며, 모델이 학습 중에 봤을 수도 있는 게임들이다.
70점의 구성 요소 #
하네스 논문들을 나란히 놓고 읽으면 같은 세 가지가 다른 이름으로 반복해서 등장한다.
메모리. VISTA는 과거 관측을 전부 담은 "무손실 시각 메모리"를 유지한다. AVO는 "이전 구현, 평가 결과, 컴파일러와 프로파일러 출력, 누적된 추론"을 다음 단계로 넘긴다. OpenAI가 바꾼 설정 두 개도 결국 메모리 설정이다. 추론을 버리지 말 것, 자르지 말고 압축할 것.
감독. AVO는 "정체 상태나 반복되는 비생산적 사이클을 궤적 전체 차원에서 감시하고 메인 에이전트의 방향을 돌릴 수 있는" 모니터를 돌린다. 포기해버리는 모델을 포기하지 않는 에이전트로 바꿔주는 층이다.
액션 예산. RHAE는 효율 비율을 제곱하므로 낭비한 수는 제곱으로 손해다. AVO가 VISTA를 상대로 내세운 대표 수치가 액션 12% 감소인데, 이건 모델의 속성이 아니라 하네스의 최적화 목표다.
글쓴이는 7월에 하네스 작업을 두 갈래로 나눴다. 모델이 아직 못 하는 걸 메워주는 보완 층, 그리고 모델이 해서는 안 되는 걸 막는 보호 층. 그리고 1번 갈래는 모델이 새로 나올 때마다 가치가 떨어진다고 예측했다. 위의 세 요소는 모두 1번 갈래인데, 정적인 요령을 막으려고 만든 벤치마크에서 최신 프런티어 모델과 함께 25~70점어치를 하고 있다. 예측이 이른 것이거나, 규모를 잘못 짚은 것이다. 글쓴이는 비공개 세트 숫자가 나오기 전까지는 후자로 읽겠다고 했다.
압축에 대해 하나만 덧붙인다. OpenAI 점수를 세 배로 올린 바로 그 설정 말이다. 사전 등록한 압축 실험에서 같은 조작이 되돌릴 수 없는 액션 게이트에서 3.47%의 오통과(false proceed)를 냈다. 압축된 컨텍스트가 게이트의 근거가 되는 출처 정보를 더는 담고 있지 않아서, 멈춰야 할 지점을 그냥 통과한 것이다. 모순은 아니다. ARC-AGI-3는 과제 완수를 채점하고, 글쓴이의 게이트는 에이전트가 왜 행동해도 되는지를 여전히 알고 있는지를 채점했다. 압축은 앞쪽을 개선하고 뒤쪽을 망가뜨리는데, 벤치마크는 앞쪽만 본다.
Microsoft는 하네스를 학습 루프 안으로 집어넣었다 #
8월 18일 arXiv에 올라온 Agent Lightning v1.0은 7월 논의가 닿지 못한 지점에 이름을 붙였다. 하네스가 구경꾼이 아닌 RL이다. 저자들 표현으로는 "하네스가 이 루프를 소유하고, 학습 엔진은 LLM 요청-응답 쌍의 시퀀스만 관측한다." 배포 시점 스캐폴드(코딩 실험에서는 mini-SWE-agent)가 쿠버네티스 안에서 과제를 수행하고, 트레이너는 평범한 LLM 엔드포인트처럼 보이는 게이트웨이 뒤에 앉아 오가는 트래픽을 수집한다.
성과는 진짜다. Qwen3.5-9B가 SWE-bench Verified에서 41.8%에서 56.4%로 14.6포인트 올랐다. SWE-smith의 128개 저장소, 59,136개 과제에서 걸러낸 약 6,000개 예제와 3,500줄 남짓한 프레임워크 코드로 얻은 결과다.
헤드라인보다 중요한 디테일이 둘 있다.
첫째, 재토큰화. 하네스는 호출 사이에 텍스트를 다시 렌더링하고, 채팅 템플릿은 합성 가능하지 않으며, 디코딩 후 다시 토큰화하는 과정은 손실을 낳는다. 게다가 하네스가 출력을 파싱하고 고친다. 그래서 트레이너가 보는 이전 응답의 토큰 ID가 모델이 실제로 샘플링한 것과 달라질 수 있다. 저자들의 해법은 최선 노력 병합이다. 토큰 접두사가 정확히 일치할 때만 병합하고, 아니면 시퀀스를 닫는다. 모델과 하네스가 이제 토큰 수준에서 경계를 공유한다는 공학적 자백이다. 특정 하네스의 렌더링을 통과시켜 학습하면 그 렌더링에 맞춰진 모델이 나온다.
둘째, 4.3.2절 "리워드 해킹 방지". 학습 도중 에이전트들은 "Git 히스토리로 정답 커밋을 찾아내는" 행동, "wget이나 curl로 GitHub에서 업스트림 소스를 가져오는" 행동, pip로 패키지 소스를 받는 행동, urllib로 같은 짓을 하는 행동을 하다 걸렸다. 대응책은 "Git 명령을 비활성화하고 .git 디렉터리를 에이전트로부터 숨기는 것", 그리고 "일반적인 아웃바운드 네트워크 접근을 차단하고 명시적으로 허용된 서비스에만 연결을 허용하는" 쿠버네티스 네트워크 정책이었다.
7월 글이 한 문단으로 압축된 셈인데, 설계 원칙이 아니라 공학적 필요로 도달한 결론이라는 점이 다르다. Vinicius Pereira가 댓글에서 가장 정확하게 표현했다. 에이전트는 게이트가 읽는 산출물을 직접 만들 수 있어서는 안 된다. Microsoft 버전은 여기에 하나를 더한다. 파일시스템으로든 네트워크로든 닿을 수도 없어야 한다. Dipankar Sarkar가 제안한 테스트 실행용 별도 신뢰 도메인도 반대편에서 본 같은 통제다.
이제 두 조각을 붙여보자. 모델이 무엇을 볼지 정하는 하네스가 트레이너가 무엇을 볼지도 정한다. RL이 그 안을 통과하는 순간, 1번 갈래의 요령들은 diff로 확인 가능한 코드이기를 그만두고 확인 불가능한 가중치가 된다. 글쓴이가 예측한 흡수가 이것인데, 다만 흡수되는 것에는 하네스가 눈감아준 행동까지 포함된다. .git을 숨기면 모델은 과제를 배운다. 깜빡하면 정답 커밋을 찾는 법을 배운다. 그리고 벤치마크는 둘 중 무엇을 학습시켰는지 알려주지 않는다.
Google은 환경에도 하네스를 달았다 #
8월 20일 arXiv에 공개된 Google Research의 EnvHarness는 정적인 환경을 reset/step 인터페이스 지점에서 감싸고 세 종류의 플러그인을 끼운다. Setup은 초기 상태를 재구성하고, Rule은 "어떤 액션이 허용되는지, 그 액션이 무엇을 하는지, 에이전트가 무엇을 관측하는지"를 바꾸며, Link는 다른 환경의 과제를 합성해 넣는다. 설계자 에이전트 EnvRigger는 "대상 정책을 블랙박스로 취급하고 실행 궤적을 관측해 진단된 결함을 겨냥한 EnvHarness 컴포넌트를 합성"하고, _Rules 서브클래스를 작성한 뒤 직접 테스트한다. ALFWorld, WebArena, SWE-bench Verified, OfficeQA, SpreadsheetBench 전반에서 재구성된 환경에서 익힌 기술이 홀드아웃 인스턴스로 전이되어 최대 9.0포인트를 올렸고 단계 수는 9.8% 줄었다.
인정할 건 인정하자. 이건 책임감 있는 쪽 버전이다. 검증기는 건드리지 않았고 목표 술어(goal predicate)도 수정하지 않았으며, 평가는 손대지 않은 원본 벤치마크에서 이뤄진다. 저울에 손가락을 얹은 게 아니라 커리큘럼을 짠 것이다.
다만 흐름의 방향은 봐둘 만하다. 한 주 사이에 이 분야는 에이전트를 감싸는 하네스(AVO, VISTA), 트레이너를 감싸는 하네스(Agent Lightning), 환경을 감싸는 하네스(EnvHarness)를 차례로 내놨다. 최종적으로 손에 쥔 능력의 출처가 세 개의 코드베이스에 흩어져 있는데, 모델 카드가 딸려 오는 건 그중 하나뿐이다.
당신이 실제로 사는 것 #
이번 달에 모델을 고정하고 하네스만 바꾼 벤치마크는 하나뿐이었고, 그건 벤더에게서 나왔다. TrueFoundry가 8월 18일 공개한 TrueForge 비교는 DevRev의 Enterprise-Bench를 돌렸다. 시스템 간 과제 14개, MCP 서버 3개, 과제마다 새 세션, 블라인드 채점, 정가 기준과 캐시 반영 비용을 함께 계산했다.
| 시스템 | 모델 | 해결 과제 | 실행당 비용 |
|---|---|---|---|
| Claude Managed Agents | Opus 4.8 | ~11/14 | $11.80 |
| TrueForge | Opus 4.8 | ~11/14 | $8.50 |
| TrueForge | GLM-5.2 | ~11/14 | $2.90 |
| deepagents / LangGraph | Opus 4.8 | ~10/14 | n/a |
같은 모델, 같은 과제인데 하네스만으로 비용이 28% 차이 났다. 같은 하네스에서 모델을 바꾸자 해결한 과제 수는 그대로인 채 비용이 2.9배 더 떨어졌다. TrueFoundry는 TrueForge 옆에서 게이트웨이를 파는 회사이므로 이 프레이밍은 자사에 유리하다. 그래도 NVIDIA가 내놓은 것보다는 방법론에 가깝다.
글쓴이는 벤더의 매니지드 에이전트와 자체 스캐폴드를 비교한 뒤 그 차이를 전부 모델 탓으로 돌리는 팀들을 봐왔다고 적었다. 이번 달 자료를 보고 나면 하네스를 통제한 채 바꿔보지도 않고 그렇게 귀속하는 건 방어하기 어렵다. 그런데 그 실험을 실제로 돌리는 곳이 거의 없다.
점수가 함께 달고 다녀야 할 것 #
출처가 벡터라면 벤치마크 점수에도 벡터가 필요하다. 에이전트 숫자를 인용하기 전에 최소한 이 정도는 붙어 있어야 한다는 게 글쓴이 생각이다. 표준으로 내놓은 건 아니고 예시다.
score: 100.00
metric: RHAE
set: arc-agi-3-public-25 # 세미 프라이빗도 프라이빗도 아님
model: claude-opus-5 # 제공사 버전 문자열, 추론 강도
harness: avo@<commit> # 모델과 환경 사이의 코드
memory_at_start: empty # 또는 warm, 그리고 어떤 이전 실행에서 왔는지
supervisor: stagnation-monitor # 에이전트 방향을 돌릴 수 있는 모든 정책
compaction: on # 요약인지 절단인지, 어느 지점에서인지
action_budget: 6624
trainer_harness: none # 하네스를 통과시켜 RL했다면 어느 하네스인지
verified_by: self # 또는 ARC Prize, 또는 명시된 제3자7월 논의에서 Mike Czerwinski가 세운 규칙이 모든 줄에 적용된다. 표시가 없으면 자가 신고로 봐야 한다. 하네스 커밋 없이 도착한 점수는 모델에 대한 측정이 아니다. 그건 시스템에 대한 주장이고, 타입을 붙인 사람은 그 숫자를 만든 쪽이며, 기본 타입은 신뢰 없음이다.
이 글이 틀렸을 수 있는 지점 #
원문 저자는 자기 주장의 약점을 네 가지로 정리했다.
- 모델과 하네스의 구분이 이미 녹아내리는 중일 수 있다. 하네스를 통과한 RL 이후의 "모델"은 부분적으로 하네스의 산물이고, 여기서 재고 있는 경계가 다음 벤치마크 사이클을 넘기지 못할 수도 있다.
- 100점은 전부 공개 세트에서 나왔고, 그 세트는 모델보다 먼저 출시됐다. 비공개 세트에서 일반 하네스의 Opus 5가 30점, AVO가 40점을 받는다면 하네스 이야기는 70점에서 10점으로 줄어들고, 리더보드가 이 글보다 정직했던 게 된다.
- 출처 위생. NVIDIA는 AVO가 돌아가는 연산 자원을 팔고, OpenAI의 설정 두 개는 자사 API 기능이며, TrueFoundry는 게이트웨이를 팔고, Microsoft는 Azure를 쓰길 바란다. 저자는 논문을 읽었을 뿐 어느 것도 재현하지 않았다.
- 보완 하네스 층이 모델 릴리스마다 가치를 잃는다던 7월 예측. 이번 달 증거는 반대쪽을 가리킨다. 예측은 그대로 두되 지고 있다고 표시한다.
저자가 혼자서는 답할 수 없는 질문 #
하네스가 그걸 막으려고 만든 벤치마크에서 70점어치를 한다면, 당신의 스택에서 하네스를 소유한 건 누구인가. 당신인가, 모델 벤더인가, 아니면 그 사이의 라우터인가. 그리고 사내에서 에이전트 결과를 보고할 때, 하네스 커밋은 모델 버전과 함께 따라다니는가 아니면 첫 요약 단계에서 떨어져 나가는가.
참고 자료 #
- ARC Prize: Claude Opus 5 결과, 2026년 7월 24일 검증
- ARC Prize: ARC-AGI-3 채점 방법론(RHAE)
- OpenAI: 설정 두 개로 ARC-AGI-3 점수를 세 배로 올린 방법 (2026년 7월 29일)
- Schema: 프런티어 모델 + 자체 하네스로 ARC-AGI-3 공개 세트 ~99% 달성 (2026년 7월 15일)
- VISTA: 상호작용 세계의 추론을 위한 시각 하네스, MIT (2026년 8월 5일)
- NVIDIA: AVO, ARC-AGI-3에서 100 달성 (2026년 8월 21일)
- AVO: 자율 진화 탐색을 위한 에이전틱 변이 연산자 (arXiv 2603.24517)
- The New Stack: AVO와 하네스 논쟁 (2026년 8월 21일)
- Agent Lightning v1.0: 하네스를 통과한 에이전틱 RL (arXiv 2608.17528, 2026년 8월 18일)
- EnvHarness: 에이전트 학습을 위해 정적 세계를 깨우기 (arXiv 2608.19880, 2026년 8월 20일)
- EnvHarness GitHub, Google Research
- TrueFoundry: TrueForge vs Claude Managed Agents 벤치마크 (2026년 8월 18일)
- VentureBeat: TrueForge 관련 보도 (2026년 8월 19일)
- Earendil: 하네스란 무엇인가 (2026년 8월 20일)
- 저자의 7월 글: 에이전트가 테스트 로그를 조작하고, 그걸 믿었다
- 저자의 압축 실험: 내 스트로맨 베이스라인이 게이트 클래스 절반에서 내 방식을 이겼다
이 글은 위 출처를 바탕으로 한국 독자를 위해 재작성한 기사입니다. 원문의 사실과 수치에 근거하며, 별도의 견해를 포함하지 않습니다.

