Files
frankenstallm/source/CLAUDE.md
ModelHub XC d4abdb70fa 初始化项目,由ModelHub XC社区提供模型
Model: pathcosmos/frankenstallm
Source: Original Platform
2026-07-14 04:21:16 +08:00

105 lines
3.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## 작업 원칙 — 팀플레이
**병렬 처리 가능한 작업은 항상 서브 에이전트로 분배한다.**
- 복잡한 코드 작성 / 설계 판단 → `model: sonnet`
- 빠른 탐색 · 조회 · 간단한 파일 작성 → `model: haiku`
- 에이전트 완료 후 결과 회수; 필요 시 `resume` 으로 재호출
- 예: 모델 구현(sonnet) + 데이터 스크립트(sonnet) + 설정 파일(haiku) 동시 실행
---
## 프로젝트 목적
소규모 LLM(Large Language Model) 실험 프로젝트.
8× NVIDIA B200 GPU 환경에서 LLM **사전학습(pretraining)** 또는 **파인튜닝(fine-tuning)** 을 직접 구현하고 실험한다.
---
## 하드웨어 환경
| 항목 | 사양 |
|------|------|
| GPU | 8× NVIDIA B200 (183 GB VRAM each, **~1.47 TB total**) |
| RAM | 2.2 TB |
| CUDA | 13.0 |
| Storage (작업) | `/PROJECT/0325120031_A/ghong/taketimes/` → 3.5 TB, 여유 2.2 TB |
| Storage (홈) | `/home/ghong` → 5 GB (소규모 코드만 저장) |
**주의**: 체크포인트, 데이터셋 등 대용량 파일은 반드시 `/PROJECT/0325120031_A/ghong/taketimes/llm-bang/` 하위에 저장할 것. 홈 디렉토리(`/home/ghong`) 용량 초과 주의.
---
## 사전 설치된 라이브러리
```
torch 2.10.0a0+b4e4ee81d3.nv25.12 # NV 커스텀 빌드 (B200 최적화)
flash_attn 2.7.4.post1+25.12 # FlashAttention-2 사용 가능
datasets 4.4.1
tokenizers 0.22.1
huggingface_hub 1.2.3
```
> **경고**: PyTorch는 NVIDIA 커스텀 빌드(`nv25.12`)가 설치됨. `pip install torch` 로 재설치하면 B200 최적화가 깨질 수 있음 — PyTorch 재설치 금지.
## 추가 설치 필요 라이브러리
```bash
pip install transformers accelerate peft trl deepspeed bitsandbytes sentencepiece wandb
```
---
## 권장 프로젝트 구조
```
llm-bang/
├── CLAUDE.md
├── data/ # 학습 데이터 (원본 텍스트, 전처리 완료본)
├── tokenizer/ # 토크나이저 학습·저장
├── model/ # 모델 아키텍처 정의 (nn.Module)
├── train/ # 학습 스크립트 (단일 GPU / DDP / FSDP)
├── eval/ # 평가 스크립트 (perplexity, downstream task)
├── configs/ # YAML/JSON 학습 설정 파일
└── checkpoints/ # 모델 체크포인트 (대용량)
```
---
## 멀티-GPU 학습 실행 패턴
```bash
# torchrun (DDP) — 8 GPU
torchrun --nproc_per_node=8 train/pretrain.py --config configs/small_lm.yaml
# 단일 GPU 테스트
python train/pretrain.py --config configs/small_lm.yaml --device cuda:0
# FSDP (모델 샤딩, 대형 모델)
torchrun --nproc_per_node=8 train/pretrain.py --config configs/large_lm.yaml --strategy fsdp
```
---
## 모델 규모 가이드 (하드웨어 기준)
| 모델 크기 | 추천 전략 | 최소 GPU 수 |
|-----------|-----------|------------|
| ~1B param | DDP, bf16 | 1 GPU |
| ~7B param | DDP 또는 FSDP, bf16 | 24 GPU |
| ~13B param | FSDP, bf16/fp8 | 4 GPU |
| ~70B param | FSDP + ZeRO-3, bf16/fp8 | 8 GPU |
B200은 FP8 네이티브 지원 → 학습 시 `torch.float8_e4m3fn` 활용 가능.
---
## 참고 (이전 프로젝트)
`/PROJECT/0325120031_A/ghong/taketimes/_deprecated/work/` — 2CRM 두께 실측값 예측(LightGBM, ClickHouse) 프로젝트.
도메인 데이터(공장 센서, 코일 그레이드) 필요 시 참고.