100% 本地 · Apple Silicon 原生 · 端到端 Web UI

在 MacBook 上从零
训练你的 0.1B 中文大模型

Tiny LLM Studio 是一个端到端的小模型训练工作室:在一个 Web UI 里完成 数据采集 → 清洗去重 → Tokenizer → 数据集 → 预训练 → SFT → DPO → 推理对话 全流程,专为 Apple M 系列芯片 + MPS 后端优化,一台 MacBook 就能跑完。

100M
参数量 · 类 LLaMA 架构
8–15k
tokens/s · M4 Pro · bf16
48 GB
统一内存 · 全部可用
~12h
0.5B tokens 验证训练
特性

训练 LLM,可以更优雅

从语料抓取到模型对话,每一步都被设计成「点几下就能跑起来」,但保留了训练大模型该有的所有控制力。

端到端 Web UI

FastAPI + React,6 个 Tab 覆盖数据源、采集、Tokenizer、数据集、训练、仪表盘。零前端构建,启动后端即可访问。

实时监控

Server-Sent Events 推送 step/eval/ckpt 事件,loss 曲线 SVG 折线图秒级刷新;任何步骤都能看到日志、进度、错误信息。

类 LLaMA 现代架构

RoPE + RMSNorm + SwiGLU + GQA(3:1)。100M 参数量,与主流中文 LLM 同构,可借鉴权重与训练经验。

完整训练流水线

预训练 (pretrain) → 监督微调 (SFT) → 偏好对齐 (DPO) → 推理对话 (chat CLI),4 个阶段一气呵成。

多源数据采集

HuggingFace 数据集、远程 jsonl URL、本地文件,三种数据源 + 一键预设(SkyPile / 维基 / Belle / COIG)。MinHash 去重 + 质量过滤。

Apple Silicon 原生

PyTorch ≥ 2.5 + MPS bf16 autocast,48GB 统一内存全部可用作"显存"。无需 NVIDIA 显卡。

流程

6 步走完 LLM 全生命周期

从空白项目到能流畅对话的中文小模型,每一步都内置在工作室里。

1
数据源
HF / URL / 本地
一键预设 4 种
2
采集
流式清洗
MinHash 去重
3
Tokenizer
32k byte-level
BPE 训练
4
数据集
打包 train.bin
/ val.bin
5
训练
pretrain / SFT
/ DPO 一键
6
推理
流式 chat CLI
/ Ollama 发布
模型规格

100,092,672 个参数 · 麻雀虽小

所有架构选型都为「在 MacBook 上能稳定跑完」而设计。无任何过度工程化。

模型架构
参数量 ≈ 100M
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 true
训练性能(M4 Pro · 48GB)
吞吐 8k–15k tok/s
0.5B tokens 验证 ~12 小时
2B tokens · Chinchilla ~2 天
5B tokens · 极限 ~5–8 天
精度 bf16 autocast
注意力 SDPA + RoPE
归一化 RMSNorm
FFN SwiGLU
支持 --resume 续训
工作室一览

6 个 Tab,覆盖整个训练生命周期

启动 scripts/07_corpus_platform.sh 后浏览器打开 localhost:8000 即可看到。

📊 仪表盘

数据源 / 采集任务 / Tokenizer / 数据集 / 训练任务的总数与运行中数量;按数据源分布表。

🌐 数据源

支持 HuggingFace / URL / 本地三种类型;提供 SkyPile、维基、Belle、COIG 4 个一键预设。

📥 采集任务

选数据源 + 设置目标 GB → 开跑;SSE 实时进度条,可取消、可预览前 8 条样本。

🔤 Tokenizer

浏览器内训练 32k byte-level BPE;扫描阶段每 5000 文档上报进度;可保留多版本。

📦 数据集

多选采集任务 + Tokenizer → 打包 train.bin / val.bin;状态、token 数、构建日志全程可见。

🚀 训练

一键启动 pretrain / SFT / DPO;实时 loss 曲线(SVG 折线)+ 事件流 + 完整日志 + 进度条 + 取消运行。

5 分钟跑通你的第一个 LLM 训练

跟着「快速开始」一步步来,半小时内即可看到第一根 loss 曲线。