䏤鶿®µæºå¨å¦ä¹ 工使µ | AIçæåç¿»è¯
é®é¢ï¼è®ç» nanoGPT æ¶ï¼æ¨èçæµç¨æ¯å éè¿ Claude Code è¿è¡ä¸æ¬¡ç龿µè¯ï¼ç¶åå¨åç¬çç»ç«¯ä¸æå¨è¿è¡å®æ´çè®ç»å½ä»¤ï¼å 为è®ç»éè¦å¾é¿æ¶é´ï¼åï¼
çæ¡ï¼
æ¯çââè¿æ£æ¯æ£ç¡®çæµç¨ï¼ä¹æ¯æºå¨å¦ä¹ è®ç»ä¸å ¬è®¤çæä½³å®è·µã以ä¸è§£éå ¶åçæ§åå ·ä½æä½æ¹å¼ï¼
为ä»ä¹è¿ç§ä¸¤é¶æ®µæµç¨æ¯æ£ç¡®ç
é¶æ®µä¸ï¼éè¿ Claude Code è¿è¡ç龿µè¯ï¼å¿«éæ£æ¥ï¼
ç龿µè¯æ¯ä¸ç§æå°åãå¿«éçæµè¯ï¼ç¨äºå¨æå ¥é¿æ¶é´è®ç»ä»»å¡ä¹åç¡®è®¤ä½ ç设置ä¸ä¼åºéãéè¿ Claude Codeï¼ä½ å¯ä»¥è¦æ±å®è®¾ç½®ãé 置并å¯å¨ä¸ä¸ªé常ççè¿è¡ï¼å°éè¿ä»£ï¼ï¼ä»èè½å¤ï¼
- éªè¯ç¯å¢ï¼ä¾èµé¡¹å¦
torchãtiktokenãnumpyæ¯å¦å·²å®è£ ï¼ - ç¡®è®¤æ°æ®é¢å¤çèæ¬æ£å¸¸å·¥ä½ï¼
prepare.pyå·²è¿è¡å¹¶çætrain.bin/val.binï¼ - æ£æ¥é ç½®è¦åæ¯å¦ææï¼æ¨¡å大å°ãæ¹å¤§å°çæ²¡ææ¼åé误ï¼
- ç¡®ä¿æ£ç¡®æ£æµå° GPU/MPS/CPU
- 使ç¨è¾å°ç
batch_sizeæblock_sizeå°½æ©ææ OOMï¼å åä¸è¶³ï¼é误
nanoGPT çå ¸åç龿µè¯å¯è½å¦ä¸æç¤ºï¼
# ç龿µè¯ï¼ä»
è¿ä»£ 10 次以确认设置æ£å¸¸
python train.py config/train_shakespeare_char.py \
--max_iters=10 \
--eval_interval=5 \
--device=cuda
Claude Code ä¼äº¤äºå¼å°è¿è¡æ¤å½ä»¤ï¼è¯»åè¾åºï¼å¹¶è½å¤å èè°è¯ä»»ä½é误ââè¿æ£æ¯ Claude Code æ é¿çå·¥ä½ï¼ç卿ãè¿ä»£å¼ãå ·èº«åæä½ï¼ã
é¶æ®µäºï¼å¨åç¬çç»ç«¯ä¸è¿è¡å®æ´è®ç»ï¼é¿æ¶é´è¿è¡çä»»å¡ï¼
ç龿µè¯éè¿åï¼ä½ ä¸åºè®© Claude Code è¿è¡çæ£çè®ç»ï¼å 为ï¼
- 宿´ç nanoGPT GPT-2ï¼124Mï¼è®ç»å¯è½éè¦æ°å°æ¶å°æ°å¤©ï¼ä¾å¦ï¼åå¼ A100 ä¸ 4 å¤©ï¼æ 8ÃH100 ä¸çº¦ 3 åéï¼å éè¿è¡ï¼ï¼
- å³ä½¿æ¯è士æ¯äºå符模åï¼å¨ GPU ä¸ä¹éè¦5 åéï¼å¨ CPU ä¸åéè¦ 8 å°æ¶ä»¥ä¸
- Claude Code ä¼è¯ä¸éç¨äºé¿æ¶é´é»å¡è¿ç¨ââå®ä»¬å¯è½è¶ æ¶æä¸¢å¤±ä¸ä¸æ
- ä½ å¸æè®ç»è¿ç¨ç¬ç«è¿è¡ï¼è䏿¯ä¸ AI ä¼è¯ç»å®
å æ¤ï¼ä½ éè¦æå¼ä¸ä¸ªåç¬çç»ç«¯å¹¶æå¨è¿è¡ï¼
# 对äºè士æ¯äºï¼å°åï¼CPU å好ï¼GPU ä¸çº¦ 5 åéï¼ï¼
python train.py config/train_shakespeare_char.py
# å¯¹äº GPT-2 宿´å¤ç°ï¼éè¦ 8ÃA100ï¼ï¼
torchrun --standalone --nproc_per_node=8 train.py config/train_gpt2.py
ä½¿ç¨ tmux æ screen æ¥ä¿æè®ç»å¨æå¼è¿æ¥æ¶ä»ç¶è¿è¡ï¼
tmux new -s nanogpt_train
python train.py config/train_shakespeare_char.py
# Ctrl+B, D å离ï¼tmux attach -t nanogpt_train éæ°è¿æ¥
宿´æµç¨æ»ç»
ä¸ä¸æç¤ºï¼æ£æ¥ç¹æ¢å¤
nanoGPT å¨è®ç»è¿ç¨ä¸ä¼èªå¨ä¿åæ£æ¥ç¹ï¼out_dir ä¸ç ckpt.ptï¼ã妿è®ç»å´©æºï¼ä½ å¯ä»¥æ¢å¤ï¼
python train.py config/train_shakespeare_char.py --init_from=resume
è¿ä½¿å¾æå¨ç»ç«¯æ¹æ³æ´å å®å ¨ââ妿åºç°é®é¢ï¼ä½ æ éä»å¤´å¼å§ã
ç®èè¨ä¹ï¼æ¯çï¼éè¿ Claude Code è¿è¡ç龿µè¯ â ï¼èªå·±å¨åç¬çç»ç«¯ä¸è¿è¡å®æ´è®ç» â ââè¿æ¯æ£ç¡®ä¸ä¸ä¸ç模å¼ã
åèèµæï¼
- nanoGPT GitHubï¼Andrej Karpathyï¼
- å¨ Modal ä¸è®ç» nanoGPT - AI Engineering Academy
- ç龿µè¯æä½³å®è·µ
- æ¢ç´¢ NanoGPT - DoltHub å客
