작은 로봇 에이전트가 교사의 하네스를 물려받아 성공률 62.8%를 낸다
TinyAstral: Transferring Self-Evolving Harnesses to Tiny Generalist Manipulation Agents
무엇인가
VLM 기반 로봇 에이전트의 성능은 플래너 모델만으로 결정되지 않는다. 모델이 고른 행동을 실제로 접지시키고 실행하는 주변 장치, 즉 도구 인터페이스와 피드백, 태스크 메모리, 실패 복구 로직을 논문은 '하네스'라고 부른다. 플래너는 무엇을 어떤 순서로 할지 정하고, 하네스는 분할·깊이 추정·충돌 없는 모션 플래닝·폐루프 보정을 담당한다. 모델은 도구가 명시적으로 요청하지 않는 한 관절 각도나 좌표를 출력하지 않는다. 여기서 논문이 던지는 질문은 이렇다. 큰 교사 모델의 하네스를 개선한 뒤, 그 개선분을 추론 비용이 훨씬 낮은 소형 에이전트로 옮길 수 있는가.
어떻게 동작하나
1단계는 가중치를 고정한 교사(Qwen3.8-Flash-Next)의 하네스를 재귀적 자기개선(RSI)으로 진화시키는 것이다. 개선 주체는 '마스터'라 불리는 프론티어 LLM 에이전트 묶음으로, 이들은 하네스만 수정하고 환경에서 직접 행동하지 않는다. 현재 하네스를 개발용 시드에서 돌린 뒤 이미지·도구 호출·도구 결과·교사 추론 로그를 읽고 실패를 오프타깃 배치, 거짓 완료(done은 통과했지만 최종 상태가 실패), 누락된 프리미티브, 태스크 메모리 오류 등 열 개 클래스로 분류한다. 그다음 새 도구나 정직한 도구 반환, 지각 수정, 실패 처리, 메모리 국소 수정 같은 후보 컴포넌트를 작성한다. 편집은 반드시 일반적이어야 해서 태스크 이름으로 분기하는 코드는 금지되고, 시스템 프롬프트와 기존 도구 설명은 부모와 바이트 단위로 동일해야 하며, 새 컴포넌트는 명시적 트리거가 발동할 때만 로그에 마커를 남겨야 한다. 별도 코드 감사가 트리거가 발동하지 않을 때 후보가 부모와 단계별로 동일하게 동작하는지 검증한다. 채택은 사전 등록된 쌍 통계 검정으로 자동 결정되며, 학습·선택·평가 시드는 서로 겹치지 않는 구간을 쓴다. 최종 통합 단계에서는 7개 후보 중 3개만 채택됐고, 전체 과정에서 296개의 후보 기능과 7회의 통합 사이클이 돌았다.
무엇과 다른가
2단계는 최종 하네스 H*를 동결하고 그 안에서 교사 궤적을 모으는 것이다. 여기서 두 가지 장치가 눈에 띈다. 하나는 복구 분기로, 성공한 교사 에피소드의 앞 k개 호출을 같은 시드의 새 시뮬레이터에서 재생한 뒤 분기점에 교란을 주입한다. RoboTwin에서는 잡은 물체가 미끄러지거나 다음 파지 전에 목표 물체가 6~10cm 움직이고, Guava와 LIBERO에서는 파지 실패나 밀기 부족, 배치된 물체의 이탈이 주입된다. 교란 효과가 실제로 발생했고 재생이 기록된 모든 결과 코드를 재현했으며 교사가 여전히 엄격 성공에 도달한 경우에만 분기를 남긴다. 다른 하나는 엄격 성공 필터로, done으로 종료되고 최종 상태가 성공 판정을 받은 에피소드만 학습에 쓴다. 여기에 AgiBot World, Fractal, BridgeData V2, DROID, Berkeley UR5 같은 공개 실로봇 데이터를 하네스 포맷으로 변환해 상태·실패 판단 27,918개, 서브골 계획 4,187개, 다음 도구 호출 9,771개를 보조 과제로 붙였다. 최종 학습 세트는 83,753개 결정 샘플이고 절반이 시뮬레이션이다. Qwen3.5-4B의 언어모델 파라미터 전체를 2 에폭 파인튜닝하며, 배포 시에는 동결된 같은 하네스 안에서 교사를 대체해 bf16으로 가속기 한 대에서 서빙된다.
어떻게 쓰나
핵심 결과는 하네스 진화의 이득이 소형 모델까지 전달된다는 것이다. RoboTwin 500개 에피소드에서 교사 가중치를 고정한 채 하네스만 바꿨을 때 성공률이 33.4%에서 63.6%로 올랐다. 진화에 쓰이지 않은 DeepSeek-V4.1-Flash도 모델별 하네스 수정 없이 30.6pp 개선됐고, 학습 전 4B 플래너는 14.6%에서 41.2%가 됐다. 하네스 네 버전(H1, H7, H16, H*)마다 별도 학생을 학습시킨 결과 성공률이 36.2%, 49.8%, 60.0%, 62.8%로 올라 각 버전의 교사에 근접했다. 같은 H* 안에서 증류 학생은 학습 전 4B 모델보다 21.6pp 높다.
전제와 한계
최종 4B 학생은 세 학습 벤치마크에서 교사와 거의 같다. RoboTwin 62.8% 대 63.6%, Guava 93.6% 대 94.7%, LIBERO-PRO 78.3% 대 80.0%다. 동일 에피소드 비교에서 Guava-4B, PyRUA-Lean-4B, SenseNova-RoboRSI-27B 같은 공개 에이전트를 앞섰고, 자기 교사 모델을 경쟁사 하네스에 넣은 조합도 이겼다(Guava 하네스 93.6% 대 78.9%, LIBERO-PRO에서 MotorMind 57.3%, PyRUA-Lean 53.0%). RSI와 학습에 한 번도 쓰지 않은 SimplerEnv, VLABench, EB-Manipulation에서도 교사와 5.0pp 이내, 같은 하네스를 쓴 552B DeepSeek-V4.1-Flash와 2.4pp 이내에 머문다. 배포 측정에서 가속기·초는 25.3으로 교사 123.8의 약 5분의 1, DeepSeek-V4.1-Flash 249.6의 약 10분의 1이고 중위 에피소드 시간도 가장 짧다.
분석 파트에서 가장 큰 효과를 낸 것은 교사의 추론 텍스트를 남기는 것이다. 샘플은 그대로 두고 추론만 비우면 LIBERO-PRO에서 19.3pp, SimplerEnv Google VM에서 11.2pp, VLABench에서 10.0pp 성공률이 떨어졌고, LIBERO-PRO에서는 300개 중 49개가 호출 한도에서 끝났다(전체 레시피에서는 7개). 실로봇 보조 데이터는 held-out 실로봇 에피소드의 다음 호출 정확도를 0.235에서 0.923으로 끌어올렸지만 일곱 개 시뮬레이션 설정에서는 통계적으로 검출 가능한 성공률 변화가 없었다. 모델 크기 효과는 벤치마크마다 달라서, 0.8B 학생은 RoboTwin 61.8%, Guava 93.8%로 4B에 근접했으나 LIBERO-PRO에서는 54.7%로 4B의 78.3%에 크게 못 미쳤다.
개발자 관점에서 이 논문의 실무적 함의는 에이전트 품질 개선을 모델 파인튜닝이 아니라 하네스 수정과 그 검증 절차에서 먼저 찾으라는 것이다. 특히 태스크 이름 분기 금지, 트리거 발동 시에만 동작 변경, 부모 대비 단계별 동등성 감사, 쌍 통계 검정과 시드 분리라는 규칙은 LLM이 코드를 자동 수정하는 파이프라인에 그대로 이식할 수 있는 안전장치다. 다만 저자가 밝힌 전제를 확인해야 한다. 태스크 메모리는 RoboTwin에만 적용되며 태스크당 짧은 종료 상태 노트 하나를 RSI 중 다듬고 평가 시에는 동결해 읽기 전용으로 쓴다는 점, 나머지 다섯 벤치마크는 메모리를 쓰지 않는다는 점, 수용 판정이 개발 시드에 한정된다는 점, 그리고 경쟁 시스템과의 비교는 각자의 실행·채점 프로토콜 차이가 부록에 정리돼 있다는 점이다. 0.8B처럼 작은 모델에서 LIBERO-PRO 성능이 크게 떨어지는 것도 모델 크기를 줄일 때 반드시 재확인해야 할 지점이다. 저자들은 향후 과제로 더 많은 RSI 환경으로 방법을 확장하는 것을 남겼다.