10월 중순, Sakana AI가 Agentic Scientist라는 저장소를 공개했습니다. 사용법은 단순합니다. 연구 과제를 task.md로 적어 둔 디렉터리를 가리키면, 코딩 에이전트가 아이디어를 내고, 프로그램을 만들고, 실험을 돌리고, 베이스라인과 비교하고, Ablation을 수행하고, 봉인된 최종 평가를 거쳐 논문 초고까지 씁니다. 흥미로운 건 새 모델을 만든 게 아니라는 점입니다. 이미 있는 코딩 에이전트를 "AI 과학자"로 부리는 순서와 통제 절차를 설계한 것입니다.
이 구분이 실무적으로 중요합니다. 화려한 자동 발견보다, 이 저장소가 어떻게 재현성과 봉인 평가를 강제하는지가 개발자에게 배울 점입니다.
무엇인지, 무엇이 아닌지
Agentic Scientist는 SakanaAI/AI-Scientist-v3 저장소로 공개됐고, Apache 2.0 라이선스에 논문은 arXiv 2610.18933입니다. 저자는 Robert T. Lange, Luca Grillotti, Yutaro Yamada, Rujikorn Charakorn, David Ha입니다.
공식 설명의 핵심 문장은 이렇습니다. "task.md에서 출발해, 에이전트가 아이디어를 제안하고, 실험을 실행하고, 과제 루브릭에 비추어 결과를 평가하고, 더 강한 프로그램을 향해 반복한다. 파이프라인은 이어서 베이스라인과 Ablation, 봉인된 최종 평가, 사후 분석을 수행하고 논문을 쓴다."
여기서 짚을 점은 세 가지입니다.
[무엇인가]
- 코딩 에이전트를 실험자로 부리는 오케스트레이션 계층
- claude / codex / cursor / opencode / gemini / pi 를 Headless CLI로 구동
- 단계마다 실행 디렉터리 하나에 산출물을 남겨 재현성을 강제
[무엇이 아닌가]
- 새로운 기반 모델이나 학습 알고리즘이 아니다
- "논문 한 편 = 검증된 새 지식"을 보장하지 않는다
- 사람의 검토 없이 무인으로 돌려도 안전하다는 뜻이 아니다
즉 이 시스템은 "AI가 과학을 한다"는 주장의 실체라기보다, 에이전트가 여러 단계를 거쳐 결과를 쌓아 올리는 그래프를 어떻게 만들고 봉인하는지에 대한 하나의 참조 구현입니다.
6단계 파이프라인
파이프라인은 순서대로 돌고, 뒤에 선택 단계가 붙습니다.
[Agentic Scientist 파이프라인]
1. Task drafting task.md → 봉인된 평가기(evaluator)와 루브릭
(배포된 스캐폴드가 없을 때만 작성, 실험적)
2. Investigation 아이디어 → 실험 → 평가 루프 (에이전트의 본 작업)
3. Ablations 우승 프로그램 vs 베이스라인·제거 변형 비교
4. Final evaluation 봉인된 환경에서 다시 채점
5. Post-hoc analysis 산출물에서 추가 근거 채굴
6. Paper 원고 작성·컴파일·감사(audit)
(+) Review / Revision 선택: 외부 리뷰어에게 원고 전송
각 단계는 자체 컨테이너에서 돌고, 오직 실행 로컬 스냅샷만 읽는다.
단계별 산출물은 표로 정리하면 이렇습니다.
| 단계 | 하는 일 | 남기는 것 |
|---|---|---|
| Task drafting | task.md를 봉인 평가기·루브릭으로 변환 | 초안 로그, 검증 감사 기록 |
| Investigation | 아이디어→실험→평가 반복 | 아이디어, 시도, 우승 프로그램, 옵티마이저 메모리 |
| Ablations | 베이스라인·제거 변형 비교 | 비교 결과, 재현 횟수 |
| Final evaluation | 봉인 환경에서 재채점 | 최종 점수 |
| Post-hoc analysis | 산출물에서 추가 분석 | 선택된 분석 결과 |
| Paper | 원고 작성·컴파일·감사 | 원고·PDF·매니페스트, 선택적 AI 리뷰 |
흥미로운 설계는 "Investigation + 태스크 스냅샷만으로도 논문을 쓸 수 있다"는 규칙입니다. 나머지 단계는 증거를 더할 뿐이고, 실패하면 "저하됨(degraded)"으로 표시됩니다. 즉 한 단계가 죽어도 전체가 무너지지 않고, 없어진 증거를 숨기지 않습니다.
실행 디렉터리가 곧 재현성 단위
모든 실행은 예측 가능한 디렉터리 하나에 결과를 남깁니다.
results/<task>/<agent>/<run_id>/
├── task_drafting/ 초안 로그와 검증 감사
├── task/ 실행 로컬 태스크 스냅샷 (불변)
├── investigation/ 아이디어·시도·우승자·옵티마이저 메모리
├── ablations/ 베이스라인과 Ablation
├── final_evaluation/ 봉인된 최종 평가
├── posthoc/ 사후 분석
└── paper/ 원고·PDF·매니페스트·선택적 AI 리뷰
여기서 눈여겨볼 점은 두 가지입니다. 첫째, 각 단계는 "실행 로컬 스냅샷"만 읽고 examples/는 절대 수정하지 않습니다. 실험이 예제 코드를 오염시키지 않으니, 같은 조건으로 다시 돌리기 쉽습니다. 둘째, 디렉터리 구조가 곧 계약입니다. 어떤 단계가 무엇을 만들어야 하는지가 경로로 고정돼 있어서, 부분 재실행이 가능합니다.
실제 실행 흐름
아래 명령은 저장소 README에 실린 공식 예시입니다. 이 글에서 직접 실행한 결과가 아니라, 어떤 순서로 통제하는지를 보여주기 위해 옮겼습니다.
# 1) 에이전트 이미지와 파이썬 환경 준비
docker build -t agentic-scientist/agent-cli:latest -f src/docker/agent-cli/Dockerfile .
uv sync && source .venv/bin/activate
# 2) 무엇이 준비됐는지, 무슨 명령이 돌지 미리 확인
agsci doctor examples/circpack # 호스트·이미지·자격증명·스캐폴드 점검
agsci run examples/circpack --dry-run # 단계별 명령만 출력, 실행 안 함
# 3) 예산을 줄여 첫 end-to-end 실행을 빠르게
agsci run examples/circpack \
investigation.execution.max_idea_cycles=2 \
ablations.execution.num_replications=1 \
ablations.execution.max_evals_per_variant=2 \
posthoc.execution.max_selected_analyses=1
# 4) 일부 단계만 이어서 실행 (원래 에이전트·모델을 다시 지정)
agsci run examples/circpack execution.phases=ablations,posthoc,paper \
paths.run_dir=results/circpack/claude/20260331_094917
# 5) 실행 결과를 브라우저로 열람
agsci inspect start # http://127.0.0.1:8765
기본 예산은 아이디어 사이클 3회, Ablation 반복 5회, 사후 분석 3건입니다. GPU가 필요한 과제는 프리셋으로 선언합니다. 예를 들어 GRPO 예제는 vLLM 샘플링용과 학습용으로 GPU 2장이 필요하고, 모델 가중치 약 3GB를 한 번 내려받습니다. 각 평가 학습은 1~2시간이 걸리고, 하네스 평가 타임아웃은 기본 7200초입니다. agsci doctor가 보이는 GPU가 프리셋과 맞지 않으면 계산 단계를 시작하지 않습니다.
에이전트는 agent.name=<agent> agent.model=<model>로 갈아끼울 수 있어서, 같은 실험을 여러 에이전트와 모델로 반복할 수 있습니다. 어떤 에이전트가 어떤 단계를 잘하는지 비교하려는 설계로 읽힙니다.
권한이 곧 위험: --allow yolo
저장소가 상단에 굵게 붙여 둔 보안 경고는 그대로 옮길 가치가 있습니다.
[공식 보안 경고 요약]
Agentic Scientist는 코딩 에이전트를 "전체 도구 권한(Headless --allow yolo)"으로
실행합니다. 그래서 다음이 가능합니다.
- 임의 명령 실행
- 넘겨준 API 키 상속
- 읽는 과제 파일과 논문이 에이전트의 행동을 유도
권고:
- 워크스테이션이 아니라 Docker 이미지 안에서 실행
- 신뢰하는 과제와 출처만 돌릴 것
- 공유 전에 실행 디렉터리를 검토 (에이전트 로그가 문서 내용·경로를 그대로 남김)
이 경고는 앞선 아티클에서 다룬 것과 같은 문제를 가리킵니다. 에이전트에게 셸·파일·네트워크 권한을 주는 순간, 그 격리 경계가 제품의 안전 경계가 됩니다. 자동 연구 파이프라인은 특히 위험합니다. 에이전트가 읽는 문서가 곧 지시가 될 수 있기 때문입니다.
한계와 미해결 문제
공식 문서가 밝히는 한계도 분명합니다.
[알려진 한계]
- 순수 연구 브리프에서 태스크를 자동 작성하는 기능은 실험적
→ 원형 패킹처럼 단순한 과제는 되지만, 월드모델·표 분포 이동 같은
큰 과제는 파이프라인 계약을 만족하는 스캐폴드를 못 만들 수 있다
- 배포된 스캐폴드가 없는 과제는 초안이 반려될 수 있으니 태스크 감사를 확인
- API 키 사용료와 GPU 비용은 별도
- 에이전트 로그에 문서 내용이 남을 수 있다 (보안)
정리하면, 이 저장소는 "무엇을 발견했는가"보다 "발견 과정을 어떻게 통제하고 기록하는가"에서 배울 게 많습니다.
작은 프로젝트에 옮기는 방법
전체 파이프라인을 돌리지 않아도, 구조는 그대로 가져올 수 있습니다.
[task.md → baseline → experiment → held-out evaluation 적용]
1. task.md에 과제를 명시
- 목표, 성공 기준, 허용 도구, 실패 조건까지 적는다
2. 평가기를 먼저 봉인한다
- 결과물을 점수화하는 코드를 실험과 분리해 고정
- 에이전트가 평가기를 수정할 수 있으면 실험이 무의미해진다
3. experiment와 baseline을 같은 조건으로 돌린다
- 변수 하나만 바꾼 비교를 최소 한 번
4. held-out 평가를 마지막에 한 번
- 실험 중에 본 데이터로 최종 점수를 매기지 않는다
5. 산출물을 한 디렉터리에 모은다
- 아이디어·시도·우승자·평가 결과를 경로로 남긴다
핵심은 "봉인"과 "한 디렉터리"입니다. 실험자가 평가기를 만질 수 있으면 점수는 신뢰할 수 없고, 산출물이 흩어지면 다시 돌릴 수 없습니다. Agentic Scientist는 이 두 원칙을 컨테이너와 디렉터리 계약으로 강제한 사례입니다.
결론: 자동 연구의 병목은 아이디어가 아니라 봉인이다
에이전트가 아이디어를 얼마나 잘 내는지는 눈에 띄는 지표가 아닙니다. 실제로 신뢰를 만드는 것은 실행 순서, 봉인된 평가, 그리고 실패를 숨기지 않는 보고입니다. Agentic Scientist가 흥미로운 이유도 여기 있습니다. 새 모델을 자랑하는 대신, 여러 단계를 거치는 무인 작업에서 무엇을 고정하고 무엇을 남길지를 설계로 보여줍니다.
작은 과제 하나에 이 순서를 그대로 옮겨 보면 감이 옵니다. task.md를 쓰고, 평가기를 먼저 봉인하고, 베이스라인과 실험을 같은 조건으로 돌리고, 봉인 평가를 마지막에 한 번 돌립니다. 이 루프를 통제하는 방법은 루프 엔지니어링이란 무엇인가와 모델 vs 하네스, 그리고 에이전트 KPI: 토큰에서 성과까지에서 더 깊게 다뤘습니다.
함께 읽으면 좋은 글
참고 자료
- Agentic Scientist 공식 저장소 (SakanaAI/AI-Scientist-v3, Apache 2.0)
- The Agentic Scientist 논문 (arXiv:2610.18933)
- Sakana AI 저장소: AI-Scientist (이전 세대)
- Headless CLI (에이전트 실행 계층)
이 주제를 직접 따라가며 배우고 싶다면
에이전트를 여러 단계로 나눠 실행·평가·검증을 반복하게 만드는 일은 결국 하네스와 루프, 그래프를 설계하는 일입니다. 어디에서 봉인하고 어디에서 사람이 개입할지를 정하는 구조를 직접 그려보면 자동 연구 파이프라인의 감이 잡힙니다.