Karpathy autoresearch 준비 실습: 5분 기준선과 results.tsv로 AI 연구 루프 열기 | DAKER 커뮤니티

DAKER 학습 Karpathy autoresearch 5분 기준선 대표 카드

prepare.py, train.py, program.md를 나눠 보고 첫 5분 기준선을 남기는 NotebookLM 카드.

Karpathy autoresearch는 작은 LLM 학습 코드를 에이전트가 반복 실험하게 만드는 공개 학습 프로젝트입니다. 2026년 7월 1일 기준 공식 README는 nanochat 기반 단일 GPU 설정, 5분 고정 학습 예산, val_bpb 지표를 핵심으로 설명합니다.

autoresearch 기준선이란, 에이전트가 train.py를 바꾸기 전에 원본 코드로 한 번 실행해 비교 기준을 남기는 첫 실험을 의미합니다.

오늘 배울 것은 무엇인가요?

한 줄 요약: nanochat 전체 파이프라인 글을 봤다면, 이제 같은 계열의 작은 연구 루프에서 “무엇을 고정하고 무엇을 실험할지”를 분리해 볼 차례입니다.

Karpathy autoresearch는 왜 nanochat 다음에 보나요?

autoresearch의 training code는 nanochat의 simplified single-GPU implementation입니다. nanochat이 토크나이저부터 chat UI까지 전체 제품형 파이프라인을 보여 줬다면, autoresearch는 그중 train.py를 에이전트가 바꿔 보며 연구 루프를 돌리는 쪽에 초점을 둡니다.

전체 흐름이 낯설면 먼저 nanochat 파이프라인 지도nanoGPT 학습 루프 글을 보고 돌아오면 좋습니다.

핵심 개념은 어떤 파일을 고정하고 어떤 파일을 바꾸느냐입니다

파일

역할

처음 실습에서의 판단

prepare.py

data prep, tokenizer, dataloader, evaluation

고정하고 수정하지 않기

train.py

GPT model, optimizer, training loop

baseline 뒤 에이전트가 실험

program.md

에이전트 연구 지시서

사람이 운영 규칙을 다듬기

results.tsv

실험 증거 기록

첫 줄 baseline부터 남기기

DAKER 학습 autoresearch prepare.py train.py results.tsv 워크플로 카드

uv run prepare.py, uv run train.py, val_bpb, results.tsv 기록을 연결한 NotebookLM 워크플로 카드.

따라 해볼 실습은 어떤 순서인가요?

  1. README를 읽고 요구사항이 single NVIDIA GPU, Python 3.10+, uv라는 점을 확인합니다.

  2. prepare.py, train.py, program.md 세 파일 이름을 종이에 쓰고 “수정 가능/고정”을 표시합니다.

  3. uv sync 후 uv run prepare.py로 data shards와 tokenizer 준비를 확인합니다.

  4. 아직 train.py를 고치지 말고 uv run train.py로 첫 baseline을 실행합니다.

  5. 결과에서 val_bpb, training_seconds, peak_vram_mb, num_params_M을 복사합니다.

  6. results.tsv를 만들고 baseline 행을 남긴 뒤 다음 실험부터 에이전트 루프로 넘깁니다.

자주 막히는 지점은 무엇인가요?

다음 학습 연결은 무엇인가요?

작은 모델 학습법에서 작은 기준선을 먼저 세우는 이유를 확인하고, GPT Tokenizer 실습microgpt 200라인 글로 토큰화와 핵심 알고리즘을 다시 묶어 보면 autoresearch의 실험 대상이 더 선명해집니다.

공식 출처는 어디까지 확인했나요?

자주 묻는 질문

autoresearch를 CPU나 Mac에서 바로 따라 할 수 있나요?

공식 README의 기본 경로는 single NVIDIA GPU를 요구합니다. 작은 기기에서는 공식 README의 작은 모델 조정 조언이나 별도 fork를 검토해야 하지만, 공개 본문에서는 확인된 기본 경로만 기준으로 삼습니다.

첫 실험에서 바로 성능 개선을 노려도 되나요?

아닙니다. 첫 실행은 baseline을 세우는 용도입니다. 기준선이 있어야 다음 변경의 keep/discard 판단이 가능합니다.

왜 val_bpb를 쓰나요?

공식 README는 val_bpb가 vocab size와 독립적이라 architecture changes를 비교하기 쉽다고 설명합니다. 낮을수록 좋습니다.

program.md는 프롬프트인가요?

가벼운 skill처럼 동작하는 연구 운영 문서에 가깝습니다. 사람은 program.md를 다듬고 에이전트는 train.py를 실험합니다.

오늘 어디까지 하면 충분한가요?

train.py를 고치기 전에 baseline 한 줄을 results.tsv에 남기면 오늘 목표는 달성입니다. 다음 글에서는 program.md로 keep/discard 규칙을 더 단단히 잡습니다.

지금 바로 할 일은 train.py 수정이 아니라, 첫 val_bpb 기준선을 남길 표부터 만드는 것입니다.

Redirecting to Karpathy autoresearch 준비 실습: 5분 기준선과 results.tsv로 AI 연구 루프 열기 | DAKER 커뮤니티...