Arbor는 중국인민대학교(RUC) NLPIR 팀이 공개한 자율 연구 에이전트다. 벤치마크와 목표를 주면 가설을 세우고, 코드를 수정하고, 실험을 실행하고, 결과를 학습해 스스로 개선을 반복한다. “Toward Generalist Autonomous Research via Hypothesis-Tree Refinement” 논문으로 발표됐으며, CLI와 Claude Code·Codex 스킬 버전을 모두 제공한다.
핵심 아이디어: Hypothesis Tree
일반적인 에이전트는 아이디어를 시도하다 실패하면 이전 시도를 잊는다. Arbor는 모든 시도를 Idea Tree(아이디어 트리)에 기록한다. 실패한 가설은 가지치기(prune), 성공한 가설은 수확(harvest)되며, 각 결과에서 추출된 인사이트가 트리 위로 역전파(backpropagate)되어 이후 아이디어가 더 나은 출발점에서 시작된다.
두 에이전트의 협력
Arbor는 역할이 다른 두 에이전트가 협력한다:
| 에이전트 | 역할 |
|---|---|
| Coordinator | 연구 디렉터. Idea Tree 유지, arbor 사이클 구동, 실험 배분 |
| Executor | 연구 엔지니어. 아이디어 하나를 구현하고, 격리된 git worktree에서 실험 실행 후 결과 보고 |
Arbor 사이클 (6단계)
- Observe — Coordinator가 Idea Tree의 현재 상태를 다시 파악한다
- Ideate — 부모 노드를 선택해 가설 후보를 제안한다
- Select — 가장 유망한 아이디어를 선택한다
- Dispatch — 선택된 가설을 Executor에게 배분한다. 독립 worktree에서 실행
- Backpropagate — 결과·점수·인사이트를 기록하고 상위 노드로 역전파
- Decide — 결과를 held-out 검증 데이터로 평가해 병합·가지치기·계속 여부 결정
모든 실험은 별도 git worktree + 전용 브랜치에서 실행되므로 main 브랜치는 직접 수정 안된다.
주요 특징
- 범용 최적화 — 모델 훈련, 데이터 합성, 하네스 엔지니어링 등 메트릭이 있는 모든 태스크에 적용 가능
- 장시간 실험 지원 — 넉넉한 타임아웃, 타임아웃 시 부분 메트릭 복구, 단계별 예산(smoke→pilot→full)
- 모델 유연성 — Anthropic, OpenAI, DeepSeek, Gemini, Qwen, vLLM, Ollama 등 지원 (LiteLLM)
- 실시간 모니터링 — 라이브 터미널 대시보드, 읽기 전용 WebUI
- Human-in-the-loop — 선택적 인간 검토 단계 삽입 가능
설치
# CLI 버전
pip install arbor-agent
# Claude Code 스킬 버전
/plugin marketplace add RUC-NLPIR/ArborClaude Code 스킬 버전은 기존 코딩 에이전트 세션 안에서 Arbor를 실행할 수 있어 환경 전환 없이 사용 가능하다.
누가 쓰면 좋을까
- AI 리서처: 반복 실험(ablation, 하이퍼파라미터 탐색, 데이터 증강 전략)을 자동화하고 싶은 경우
- ML 엔지니어: 긴 최적화 루프를 무인으로 돌리고 결과 정리가 필요한 경우
- Claude Code 사용자: 에이전트 스킬 형태로 연구 자동화를 코딩 워크플로에 통합하고 싶은 경우
라이선스
Apache 2.0 — 상업적 사용, 수정, 재배포 모두 허용.
관련 문서
- searchswarm — 위임 지능 기반 딥 리서치 멀티에이전트 프레임워크
- claude-code-harness — Claude Code에 Plan→Work→Review 루프를 추가하는 워크플로 도구
참고 자료
- RUC-NLPIR/Arbor — GitHub 공식 저장소
- Toward Generalist Autonomous Research via Hypothesis-Tree Refinement — arXiv 논문