karpathy/nanochat
The best ChatGPT that $100 can buy.
해결하는 문제
nanochat는 대규모 언어 모델(LLM)을 처음부터 훈련하기 위한 최소한의, 수정 가능한, 비용 효율적인 하네스를 제공합니다. LLM 개발의 인지적 및 재정적 복잡성을 제거하여, 사용자가 단일 GPU 노드에서 토큰화, 사전 훈련, 피니튜닝, 평가, 추론까지 전체 파이프라인을 100달러 미만으로 처리할 수 있도록 합니다.
작동 방식
이 프로젝트는 --depth(Transformer 레이어 수)라는 단일 '복잡성 다이얼'을 중심으로 구축됩니다. 사용자가 깊이를 설정하면 시스템은 Transformer 너비, 헤드 수, 학습률, 가중치 감쇠 등의 다른 최적의 하이퍼파라미터를 자동으로 계산합니다. 자동 캐스팅에 의존하지 않고, 정밀도를 명시적으로 관리하기 위해 커스텀 Linear 레이어를 사용하여 VRAM과 성능에 대한 더 나은 제어를 보장합니다.
대상 사용자
- 연구자: 스케일링 법칙과 마이크로 모델 성능을 실험하고 싶은 분들.
- 개발자: 에ンド투엔드 LLM 라이프사이클을 이해할 수 있는 읽기 쉬운 '강력한 베이스라인' 코드베이스를 원하는 분들.
- 애호가: 예산을 절감하면서 GPT-2 수준의 모델을 훈련하고 싶은 분들.
주요 특징
- 에ンド투엔드 파이프라인: BPE 토큰화와 사전 훈련부터 SFT, RL, CLI를 통한 대화까지 모두 포함.
- 계산 최적화: 모델 깊이에 따라 하이퍼파라미터를 자동 조정하여 최적의 성능을 보장.
- 고효율성: 8XH100 GPU 노드에서 GPT-2 수준의 모델을 약 1.5시간 내에 훈련 가능.
- 미니멀리즘 디자인: 복잡한 설정 객체나 팩토리를 피하여 쉽게 포크하고 읽을 수 있도록 유지.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch