V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
爱意满满的作品展示区。
duguying

在 Macbook 上自己尝试了一下 0.1B 的大模型训练

  •  
  •   duguying ·
    duguying · 10h 11m ago · 1295 views

    近年来 AI 是卷得越来越厉害了,作为一个普通开发者经常用 AI 辅助编程,但是没有接触过怎么去创造 AI ,这个五一假期,在家研究了一下大模型是怎么训练的……

    折腾下来发现一个挺尴尬的事实:网上教程要么是「调用 OpenAI API 」,要么是「分布式集群跑 Llama-3-70B 」,『在自己机器上从零训练一个能用的小模型』反而很少有人讲透

    干脆自己摸一遍,顺手做成工具 Tiny LLM Studio,目标就一个:在 MacBook 上把一个 0.1B 中文模型从 tokenizer 训到 DPO ,全流程跑通。

    技术栈没整花哨的:

    • 类 LLaMA 架构,约 96M 参数:RoPE + RMSNorm + SwiGLU + GQA
    • 32k byte-level BPE tokenizer
    • PyTorch ≥ 2.5 + MPS 后端,bf16 训练
    • 数据采集 / 清洗 / MinHash 去重 / 配置管理全做进 FastAPI + React Web UI 里
    • 预训练 → SFT → DPO → 流式 chat → 困惑度评估,一站式

    实测在 M4 Pro / 48GB 上吞吐 8k–15k tokens/s:0.5B tokens 大约 12 小时验证 loss 收敛。--resume 支持断点续训,吃完饭回来无缝接着练。

    自己尝试了一下训练,用 1G 的数据量,训练了 1 晚上,然后尝试用 ollama 直接调用大模型,结果吐一堆乱码

    后面继续用这 1G 数据再训练 1 晚上,然后进行 sft 微调训练,效果好一些了,至少吐出来的是大段中文

    继续用这 1G 数据再训练了第 3 个晚上,然后 sft 微调,吐文字不再大段乱码,而是小段中文短语

    用更大量的数据,训练足够多的时间,模型的响应效果会更好。不过这样在我 Macbook 上会需要更多时间。

    写到一半我又加了点工程化的私货:

    • 写了一个的手机 app,下楼买咖啡时也能远程看训练曲线、改超参
    • 集成了 ngrok tunnel ,启动时终端直接吐一个二维码,手机扫一下就连上,在公网也能访问

    整套放上 GitHub 了,MIT 协议。如果你也想从「用 AI 」过渡到「亲手了解 AI 是怎么炼出来的」,又不想为了学习先去租一张 8×H100 ,欢迎来一起折腾。

    GitHub 地址 https://github.com/duguying/100M。 项目地址 https://tinyllm.duguying.net

    9 replies    2026-05-08 18:38:22 +08:00
    nenosyyan
        1
    nenosyyan  
       9h 22m ago
    太牛了👍
    webcape233
        2
    webcape233  
       9h 17m ago
    自己训练的话用在特别的小应用领域上吗
    duguying
        3
    duguying  
    OP
       9h 14m ago
    @webcape233 特定的小应用领域上可能有点用处。主要还是为了学习和了解整个训练流程
    webcape233
        4
    webcape233  
       8h 24m ago
    @duguying 手头有个 mini m4 32G 的,不知道能跑起来怎么样,打算试试
    dong706
        5
    dong706  
       7h 49m ago
    我记得 github 上有一个国人的项目,就是讲大模型怎么炼出来的
    Doloroso
        6
    Doloroso  
       6h 14m ago
    码住,有时间 搞搞玩玩
    Iefty
        7
    Iefty  
       6h 2m ago
    有点意思,确实没怎么关注炼模型的过程
    adminpro
        8
    adminpro  
       5h 52m ago
    把公司中台数据喂给他,不知道行不行?
    achangzhou
        9
    achangzhou  
       1h 39m ago
    有点像 MiniMind, NanoChat 我给学生开课,让他们练习这个复刻。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3366 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 190ms · UTC 12:17 · PVG 20:17 · LAX 05:17 · JFK 08:17
    ♥ Do have faith in what you're doing.