| --- |
| license: bsd-3-clause |
| language: |
| - zh |
| - en |
| pipeline_tag: text-generation |
| tags: |
| - chinese |
| - rnn |
| - lstm |
| - transformer |
| - seq2seq |
| - tutorial |
| - educational |
| - cpu |
| - mobile |
| --- |
| |
| # 春梦蝶最小示例模型集合 |
|
|
| ## 关于作者 |
|
|
| 一个热爱 AI 的中学生。欢迎交流学习。 |
|
|
| ## 项目简介 |
|
|
| 这是一个从零开始、逐级递进的**最小示例模型集合**,展示了如何用最少的代码和数据,在手机上训练出能“说话”的猫娘模型。 |
|
|
| 从最简单的字符级 RNN 到带注意力的 Seq2Seq,每个版本都是一个独立可运行的**最小单元**。 |
|
|
| ## 五个版本 |
|
|
| | 版本 | 目录 | 架构 | 权重状态 | 说明 | |
| |------|------|------|---------|------| |
| | v1 | `v1_rnn_mini` | 单层 RNN | ✅ 提供 | 最小的能说话模型,约 2 万参数 | |
| | v2 | `v2_rnn_expanded` | 单层 RNN | ✅ 提供 | 语料扩充至 2500 字 | |
| | v3 | `v3_lstm` | 双层 LSTM | ✅ 提供 | 从 RNN 升级到 LSTM,约 40 万参数 | |
| | v4 | `v4_transformer` | 极简 Transformer | ❌ 未提供 | 手机 CPU 训练效果不佳,代码保留供参考 | |
| | v5 | `v5_seq2seq_attention` | Seq2Seq + Attention | ❌ 未提供 | 2100 万参数,超出手机性能,代码保留供参考 | |
|
|
| ## 项目特点 |
|
|
| - **在手机上训练和运行**:所有脚本均在 ZeroTermux(Android)环境下完成 |
| - **极低门槛**:只需 Python + PyTorch(CPU 版),无需 GPU |
| - **真正的“最小示例”**:从几十行代码开始,逐步演进到更复杂的架构 |
| - **开箱即用**:有提供权重的版本,直接 `python run.py` 即可聊天 |
|
|
| ## 权重说明 |
|
|
| - v1、v2、v3:提供训练完成的最终权重(`final.pth`) |
| - v4:因手机 CPU 训练效果差,只提供代码,不提供权重 |
| - v5:因参数量过大(2100万),超出手机性能,只提供代码参考(如果想尝试,建议手动加上CUDA或者找更好的手机) |
|
|
| > 中间 checkpoint 因文件大小和存储限制未包含在仓库中,如需完整训练日志或中间版本,可自行运行训练脚本生成。 |
|
|
| ## 如何使用 |
|
|
| ### 手机端(ZeroTermux) |
|
|
| 1. 安装 [ZeroTermux](https://github.com/hanxinhao000/ZeroTermux) |
| 2. 安装依赖: |
| ```bash |
| pkg update && pkg upgrade |
| pkg install python python-torch python-numpy |
| ``` |
| 3. 克隆本仓库: |
| ```bash |
| git clone https://huggingface.co/XingChina/ChunMengDie-Mini-Examples |
| cd ChunMengDie-Mini-Examples |
| ``` |
| 4. 进入任意子目录(如 `v1_rnn_mini/`): |
| ```bash |
| cd v1_rnn_mini |
| python run.py |
| ``` |
|
|
| ### 电脑端 |
|
|
| ```bash |
| pip install torch numpy |
| git clone https://huggingface.co/XingChina/ChunMengDie-Mini-Examples |
| cd ChunMengDie-Mini-Examples/v1_rnn_mini |
| python run.py |
| ``` |
|
|
| ## 许可证 |
|
|
| 本项目采用 **BSD 3-Clause** 许可证。详见 [LICENSE](./LICENSE) 文件。 |
|
|
| ## 相关项目 |
|
|
| - [ChunMengDie-1.0-0.4B](https://huggingface.co/XingChina/ChunMengDie-1.0-0.4B) —— 4 亿参数的“大模型”(实验阶段) |
| - 本项目是该大模型的“最小可解释版本”集合 |