Deep Researcher Agent: 잠든 사이에도 24시간 딥러닝 실험을 자율 수행하는 LLM 에이전트 프레임워크

Deep Researcher Agent 소개

Deep Researcher Agent는 도쿄대학교(The University of Tokyo)의 Xiangyue Zhang이 공개한, 딥러닝 실험을 24시간 자율적으로 수행하는 LLM 에이전트 프레임워크입니다. 논문 작성이나 코드 생성에 초점을 맞춘 기존 AI 연구 보조 도구들과 달리, 이 프로젝트는 가설 수립(hypothesis formation), 코드 구현, 학습 실행, 결과 분석, 그리고 반복적인 개선이라는 실험의 전체 수명 주기(full experiment lifecycle)를 대상으로 합니다. 연구자가 잠을 자거나 휴가를 떠난 사이에도 에이전트가 대신 하이퍼파라미터를 탐색하고, 학습을 실행하며, 로그를 해석해 다음 실험을 계획하는 방식으로 동작합니다.

실제 공개된 수치에 따르면 4개의 연구 프로젝트에서 500회 이상의 자율 실험 사이클을 수행했고, 한 프로젝트에서는 200회 이상의 자동 실험을 통해 기준선(baseline) 대비 52%의 지표 개선을 달성했다고 보고되어 있습니다.

Deep Researcher Agent 프로젝트가 주목받는 이유는, LLM 에이전트를 24시간 상주시킬 때 가장 큰 걸림돌이었던 비용(cost) 문제를 정면으로 다뤘다는 점입니다. 대부분의 에이전트 프레임워크는 학습이 진행되는 동안에도 수 분 간격으로 LLM을 호출해 "지금 잘 돌아가고 있는지"를 점검하기 때문에 하루에 수십 달러 이상의 API 비용이 발생합니다. Deep Researcher Agent는 학습 중에는 LLM을 호출하지 않고 kill -0 $PIDnvidia-smi, 로그 파일 tail 같은 운영체제 수준의 점검만 수행하는 Zero-Cost Monitoring 구조를 채택해, 8시간 학습을 포함한 24시간 사이클의 평균 LLM 비용을 $0.08 수준까지 낮췄다고 기술 보고서(Technical Report)에 명시되어 있습니다.

                    LLM Active              Zero Cost              LLM Active
                  ┌────────────┐    ┌─────────────────────┐    ┌────────────┐
                  │   THINK    │    │   TRAIN & MONITOR    │    │  REFLECT   │
                  │ (5-10 min) │    │   (hours/days)       │    │ (5-10 min) │
                  │            │    │                      │    │            │
                  │ • Analyze  │    │ • kill -0 $PID       │    │ • Parse    │
                  │ • Plan     │    │ • nvidia-smi         │    │   logs     │
                  │ • Code     │    │ • tail log           │    │ • Compare  │
                  │            │    │                      │    │ • Decide   │
                  │  ~$0.05    │    │      $0.00           │    │  ~$0.03    │
                  └────────────┘    └─────────────────────┘    └────────────┘

내부적으로는 Claude Code와 Codex CLI를 모두 지원하는 에이전트 백본(backbone) 위에서, 사용자가 작성한 PROJECT_BRIEF.md 하나만으로 실험 루프를 가동할 수 있도록 설계되어 있습니다. 프로젝트의 목적은 연구자를 대체하는 것이 아니라, 코드 수정·학습 실행·로그 파싱·모니터링과 같은 반복적인 실험 오퍼레이션(experiment-ops) 계층을 에이전트에게 위임해 사람이 사고(thinking)·해석·판단에 더 많은 시간을 쓸 수 있게 하는 것입니다. 저자는 README에서도 과학적 순수성과 "human in the loop"의 중요성을 반복적으로 강조하며, 결과 위조나 사람 없는 연구에 사용되지 않기를 바란다는 철학적 입장을 함께 밝히고 있습니다.

Deep Researcher Agent와 기존 연구 자동화 도구 비교

다른 AI 연구 보조 도구들이 "논문 작성"이나 "아이디어 생성"처럼 실험의 일부 단계만 담당했던 것과 달리, Deep Researcher Agent는 학습을 실제로 장시간 굴리는 실험 실행(execution) 단계를 핵심 대상으로 삼습니다. 아래는 기술 보고서의 서술과 README의 정보를 바탕으로 주요 특성을 정리한 비교 표입니다.

특성 Deep Researcher Agent 일반적인 LLM Agent 프레임워크 논문 작성형 AI 연구 보조
대상 단계 가설 → 코드 → 학습 → 분석 → 반복 (전체 루프) 단일 작업 수행 또는 짧은 실행 글쓰기, 문헌 요약 중심
학습 중 LLM 호출 0회 (Zero-Cost Monitoring) 수 분 간격 주기적 호출 해당 없음
24시간 LLM 비용 약 $0.08 $50 이상 보고 사례 낮지만 실험은 불가
메모리 구조 2-Tier 상수 크기(~5K chars, ~1.5K tokens) 대화 이력이 시간에 비례해 증가 세션 단위 리셋
도구 구성 Leader-Worker, 에이전트당 3~5개 도구 단일 에이전트에 수십 개 도구 검색/요약 도구 위주
연속 운영 실적 30일 이상 무인 연속 운영 보고 수 시간~수 일 수준 해당 없음

Deep Researcher Agent의 핵심 아이디어와 THINK-EXECUTE-REFLECT 루프

프레임워크의 동작 원리는 Think → Execute → Reflect 라는 세 단계로 구성된 지속적인 루프입니다. Think 단계에서는 프로젝트 브리프와 메모리 로그를 읽어 다음 실험을 설계하고, Execute 단계에서는 코드와 설정을 수정한 뒤 드라이런(dry-run)을 거쳐 GPU에서 실제 학습을 시작합니다.

┌──────────────────────────────────────────────────────┐
│  ┌──────────┐    ┌──────────┐    ┌──────────┐       │
│  │  THINK   │───→│ EXECUTE  │───→│ REFLECT  │──┐    │
│  │          │    │          │    │          │  │    │
│  │ Analyze  │    │ Dry-run  │    │ Evaluate │  │    │
│  │ Plan     │    │ Launch   │    │ Compare  │  │    │
│  │ Decide   │    │ Monitor  │    │ Update   │  │    │
│  └──────────┘    └──────────┘    └──────────┘  │    │
│       ↑                                         │    │
│       └─────────────────────────────────────────┘    │
│                    ↻ 24/7 Loop                       │
└──────────────────────────────────────────────────────┘

학습이 돌아가는 동안 Reflect로 바로 넘어가지 않고, 운영체제 수준의 신호만으로 학습 완료를 감지한 뒤 Reflect 단계에서 로그를 파싱하고 기준선과 비교해 다음 사이클의 결정을 내리게 됩니다. 이 루프 자체는 새로운 아이디어가 아니지만, "학습 중에는 LLM을 전혀 부르지 않는다"는 제약을 끝까지 밀고 나간 점이 이 프로젝트의 정체성을 만듭니다.

논문이 제시하는 세 가지 핵심 기여는 Zero-Cost Monitoring, Two-Tier Constant-Size Memory, 그리고 Minimal-Toolset Leader-Worker Architecture입니다. 각각은 장기간 운영되는 LLM 에이전트에서 흔히 발생하는 실패 모드, 즉 비용 폭증·컨텍스트 증가·도구 스키마 오버헤드를 직접 겨냥한 설계 결정입니다. 아래에서 각 요소를 순서대로 살펴봅니다.

Deep Researcher Agent의 Zero-Cost Monitoring 구조

학습이 수 시간에서 수십 시간에 이르는 딥러닝 실험에서, 에이전트가 주기적으로 LLM을 호출해 진행 상황을 확인하면 하루 $50 이상의 비용이 발생하는 것이 일반적입니다. Deep Researcher Agent는 이 구간을 LLM 비활성(LLM-inactive) 구간으로 정의하고, 프로세스 생존 확인(kill -0), GPU 사용률 확인(nvidia-smi), 로그 파일 tail 같은 OS 수준 신호만을 사용해 학습이 끝날 때까지 대기합니다. 학습이 종료된 뒤에야 Reflect 단계에서 LLM을 재호출해 결과를 해석하기 때문에, 전체 사이클에서 LLM이 실제로 활성 상태인 시간은 Think와 Reflect 단계의 수 분 남짓으로 제한됩니다. 그 결과 24시간 사이클 기준 평균 LLM 비용이 약 $0.08로 보고되며, 이는 "에이전트 운영 비용" 자체가 연구 지속성의 병목이 되지 않도록 만드는 데 기여합니다.

Deep Researcher Agent의 2-Tier 상수 크기 메모리

┌─────────────────────────────────────────┐
│ Tier 1: PROJECT_BRIEF.md               │
│ • Frozen project reference              │
│ • Max 3,000 chars                       │
├─────────────────────────────────────────┤
│ Tier 2: MEMORY_LOG.md                   │
│ • Key Results (auto-compact at 1,200ch) │
│ • Recent Decisions (rolling last 15)    │
│ • Max 2,000 chars                       │
├─────────────────────────────────────────┤
│ Total: ~5K chars / ~1,500 tokens        │
│ SAME whether running 1 day or 6 months  │
└─────────────────────────────────────────┘

장기 실행되는 에이전트에서 흔히 관찰되는 문제는, 시간이 지남에 따라 대화 이력이 무제한으로 늘어나 컨텍스트(context)가 포화되거나 토큰 비용이 선형 이상으로 증가하는 현상입니다. Deep Researcher Agent는 이를 막기 위해 메모리를 두 계층으로 분리합니다:

Tier 1은 최대 3,000자 분량의 PROJECT_BRIEF.md로, 프로젝트의 목표와 제약을 고정된 참조로 유지합니다. Tier 2는 2,000자로 제한되는 MEMORY_LOG.md이며, 내부적으로는 "Key Results"(1,200자에서 자동 압축)와 "Recent Decisions"(최근 15건만 롤링 유지) 섹션으로 나뉩니다.

두 계층을 합쳐도 약 5K 문자, 약 1,500 토큰 수준으로 고정되어, 하루를 돌리든 6개월을 돌리든 같은 크기의 메모리만 사용한다는 점이 특징입니다.

Deep Researcher Agent의 Minimal-Toolset Leader-Worker 구조

멀티 에이전트(multi-agent) 시스템에서 흔한 함정은, 하나의 에이전트에 너무 많은 도구(tool)를 매달아 매 호출마다 도구 스키마가 반복적으로 전송되면서 토큰 오버헤드가 커지는 것입니다. Deep Researcher Agent는 이를 Leader-Worker 구조로 해결합니다.

              ┌───────────────┐
              │    Leader     │  Persistent conversation
              │   (Planner)   │  within each cycle
              └───┬───┬───┬───┘
                  │   │   │
          ┌───────┘   │   └───────┐
          ↓           ↓           ↓
    ┌──────────┐ ┌──────────┐ ┌──────────┐
    │   Idea   │ │   Code   │ │ Writing  │
    │  Agent   │ │  Agent   │ │  Agent   │
    │ (4 tools)│ │ (5 tools)│ │ (3 tools)│
    └──────────┘ └──────────┘ └──────────┘

Leader(Planner) 에이전트는 하나의 사이클 안에서 대화를 지속하며 계획을 수립하고, 실제 작업은 Idea Agent(4개 도구), Code Agent(5개 도구), Writing Agent(3개 도구)와 같이 3~5개의 도구만 갖춘 Worker에게 위임합니다. 동시에 실행되는 Worker는 항상 하나뿐이며 나머지는 비용 없이 대기(idle)하기 때문에, 병렬 LLM 호출로 인한 비용 팽창이 일어나지 않습니다. 기술 보고서는 이 설계로 호출당 토큰 오버헤드를 최대 73%까지 줄였다고 보고합니다.

Deep Researcher Agent의 인간 개입(Human-in-the-Loop) 제어

완전한 자율성이 아니라 "감독받는 자율성(supervised autonomy)"을 지향한다는 점도 중요한 설계 결정입니다. 사용자는 세 가지 파일로 연구 방향을 통제할 수 있습니다. PROJECT_BRIEF.md는 목표와 탐색 공간, 금지된 방향 등 안정적인 규칙을 담고, HUMAN_DIRECTIVE.md는 "다음 사이클부터 이 방향으로 바꿔라"와 같은 일시적 지시를 전달하며, workspace/MEMORY_LOG.md는 실험 결과와 결정 이력을 누적합니다. 예를 들어 "증강(augmentation)만 바꾸고 백본(backbone)은 고정", "3 run 연속 0.3p 이상의 개선이 없으면 이 방향 중단", "이상하게 높은 지표는 같은 seed와 새 seed로 재현 확인 후에만 개선으로 인정" 같은 규칙을 지시 파일에 적어 두면, 에이전트가 다음 사이클부터 해당 규칙을 반영해 움직입니다.

Deep Researcher Agent의 실제 운영 성과

이 프로젝트가 제시하는 수치는 벤치마크가 아니라 수 개월에 걸친 실제 자율 운영에서 측정한 운영 실적이라는 점이 특징적입니다. 에이전트는 500회 이상의 자율 실험 사이클을 완료했고, 한 프로젝트에서는 200회 이상의 자동 실험을 통해 기준선 대비 52%의 최대 개선을 달성했다고 보고됩니다. 동시 관리된 프로젝트는 4개의 GPU 서버에 걸친 4개의 연구 프로젝트였으며, 사람의 개입 없이 가장 오래 연속 운영된 기록은 30일 이상입니다. 24시간 사이클 기준 평균 LLM 비용은 $0.08 수준이며, 학습 시간이 긴 프로젝트일수록 전체 시간 중 "LLM이 쉬고 있는 구간"의 비율이 커져 비용 효율이 더 높아지는 구조입니다.

지표
자율 실험 사이클 500회 이상
단일 프로젝트 최대 개선 기준선 대비 52% (200회 이상 자동 실험)
동시 관리 프로젝트 4개 GPU 서버, 4개 프로젝트
최장 연속 자율 운영 30일 이상
24시간 사이클당 LLM 비용 약 $0.08

Deep Researcher Agent 설치 및 사용법

프로젝트는 Python 3.10 이상과 1개 이상의 NVIDIA GPU, Anthropic 또는 OpenAI API 키를 요구하며, Claude Code 또는 Codex CLI 중 하나가 설치되어 있어야 합니다. 설치는 저장소를 클론한 뒤 의존성을 설치하고, 포함된 install 스크립트를 실행해 슬래시 명령어들을 Claude Code에 등록하는 순서로 진행됩니다.

git clone https://github.com/Xiangyue-Zhang/auto-deep-researcher-24x7.git
cd auto-deep-researcher-24x7
pip install -r requirements.txt
python install.py
python -m core.loop --check

설치가 끝나면 /auto-experiment, /experiment-status, /gpu-monitor, /daily-papers, /paper-analyze, /conf-search, /progress-report, /obsidian-sync 총 8개의 슬래시 명령이 Claude Code에 등록됩니다. 실험을 시작하기 위해서는 프로젝트 폴더 하나와 그 안에 최소한의 PROJECT_BRIEF.md 파일만 있으면 충분합니다.

# Goal
Train a ResNet-50 on CIFAR-100 to reach 80%+ accuracy.

# Codebase
Create the training code from scratch in PyTorch.

# What to Try
- Start with a basic ResNet-50 baseline.
- If accuracy < 75%, improve optimization and schedule.
- If accuracy is 75-80%, try augmentation.
- If accuracy > 80%, stop and report.

# Constraints
- Use GPU 0 only
- Max 100 epochs per run

실행은 Claude Code 세션에서 슬래시 명령으로, 혹은 Python 모듈을 직접 호출하는 두 가지 방식 모두 지원됩니다. --max-cycles 옵션을 생략하면 무한 루프로 동작하며, 특정 횟수만큼만 돌리고 중단하는 것도 가능합니다.

# 방법 A: Claude Code 슬래시 명령
/auto-experiment --project ~/my-first-experiment --gpu 0

# 방법 B: Python 직접 실행
python -m core.loop \
  --project ~/my-first-experiment \
  --gpu 0 \
  --max-cycles 5

진행 상황은 /experiment-status로 언제든 조회할 수 있고, Obsidian 볼트(vault)를 연동하면 대시보드와 일일 노트가 자동으로 갱신됩니다. 볼트가 없는 환경에서는 workspace/progress_tracking/ 아래의 로컬 텍스트 파일로 동일한 정보가 저장되기 때문에, Obsidian 의존성 없이도 진행 상황 기록이 유지됩니다.

라이선스

Deep Researcher Agent는 Apache-2.0 라이선스으로 공개되어 있어 개인 및 상업적 목적으로 자유롭게 사용, 수정, 재배포할 수 있습니다. 다만 저자들은 README에서 "에이전트가 실험을 대신 실행해 주더라도 아이디어·해석·책임은 사람에게 남겨달라"는 취지의 요청을 명시하고 있으며, 결과 위조나 사람 없이 생성된 연구에 이 도구가 쓰이지 않기를 바란다고 덧붙이고 있습니다. 라이선스 자체는 permissive하지만, 연구 윤리 측면의 이 권고도 함께 참고할 만합니다.

:scroll: Deep Researcher Agent 기술 문서(Technical Report)

:github: Deep Researcher Agent 프로젝트 GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: