duguying / 100M
0.1B LLM을 처음부터 훈련하기
이 프로젝트에 대해
duguying 님의 100M 프로젝트는 GitHub에서 40개의 별을 받으며 많은 개발자들의 주목을 받고 있습니다. 특히 Python 환경에서 유용하게 활용될 수 있으며, 최근 오픈소스 커뮤니티에서 활발한 기여와 토론이 이루어지고 있는 트렌딩 레포지토리입니다.
Language Breakdown
🇰🇷 한국어 번역 README
캐시 히트Tiny LLM Studio — 从零训练 0.1B 中文大模型的端到端工作台
在 Apple Silicon(M 系列)MacBook 上从零训练一个 ~0.1B 参数、类 LLaMA 架构(RoPE + RMSNorm + SwiGLU + GQA)的中文大模型,全程在一个 Web UI 里完成:
- Tiny LLM Studio(FastAPI + React 웹 UI):데이터원→ 采集任务 → Tokenizer → 数据集 → 훈련,一站式
- 32k 바이트 수준의 BPE 토큰나이저
- 类 LLaMA 模型实现(≈ 96M 参数)
- 预훈련(pretrain)
- 监督微调(SFT)
- 직접 선호优化(DPO)
- 推理与流式 채팅 CLI
목표 하드웨어:MacBook Pro M4 Pro / 48GB(统一内存),PyTorch ≥ 2.5 + MPS 后端。
快速开始
연기 테스트(검증模型代码)
目录结构
模型规格
| 配置 | 值 |
|---|---|
| 参数量 | ≈ 96M |
| 'vocab_size' | 32000 |
| 'hidden_size' | 768 |
| 'num_hidden_layers' | 12 |
| 'num_attention_heads' | 12 |
| 'num_key_value_heads' | 4 (GQA) |
| 'intermediate_size' | 2048년 |
| 'max_position_embeddings' | 2048년 |
| 'tie_word_embeddings' | 맞아 |
关于在 M4 上的훈련시간
实测吞吐约 8k–15k tokens/s(bf16 + MPS).
| 数据规模 | 预计时间 | 备注 |
|---|---|---|
| 0.5억 토큰 | ~12 小时 | 验证 loss 收敛 |
| 2B 토큰 | ~2 天 | 접근: Chinchilla 最优 |
| 5B 토큰 | ~5–8 天 | 极限级训练 |
支持 '--resume' 중단 续训,无需一次跑完。
镜像加速
国内访问 HuggingFace 慢,使用:
공网访问 웹 UI(터널 模式)
유사한 'expo start --tunnel':本地启动 WebUI 后开一条公网隧道,访问者不需要和你在同一局域网(甚至不需要在同一个国家)即可使用 Web UI 和所有 API.
实现基于 ngrok 官方 Python SDK('pip install ngrok',自带 Rust 客户端,无需安装外部 '
🌐 본 텍스트는 빠른 이해를 돕기 위한 요약 번역본입니다. 정확한 기술 정보 및 전체 코드는 GitHub 원문에서 확인하실 수 있습니다.
🔗 유사한 프로젝트
stas00/ml-engineering
Machine Learning Engineering Open Book
FareedKhan-dev/train-llm-from-scratch
A straightforward method for training your LLM, from downloading data to generating text.
SwanHubX/SwanLab
⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / verl / LLaMA Factory / ms-swift / Ultralytics / MMEngine / Keras etc.
이 정보는 AI가 자동으로 분석한 결과입니다. 정확한 내용은 원문을 확인하세요.
duguying/100M GitHub 원문 바로가기 →