首页
/ 【亲测免费】 Phi2-Chinese-0.2B:从零开始训练你的中文小模型

【亲测免费】 Phi2-Chinese-0.2B:从零开始训练你的中文小模型

2026-01-21 05:07:37作者:幸俭卉

项目介绍

Phi2-Chinese-0.2B 是一个开源的实验性项目,旨在帮助开发者从零开始训练自己的中文小模型。该项目提供了完整的代码和模型权重,尽管预训练数据较少,但其灵活性和可定制性使其成为初学者和进阶开发者的理想选择。如果你需要效果更好的中文小模型,可以参考项目 ChatLM-mini-Chinese

项目技术分析

数据清洗

Phi2-Chinese-0.2B 在数据清洗阶段进行了多种处理,包括句末添加句号、繁体转简体、删除重复标点符号、NFKC Unicode标准化等。这些步骤确保了数据的高质量,为后续的模型训练奠定了坚实的基础。

Tokenizer 训练

项目采用了 byte levelBPE 分词器,并提供了 char levelbyte level 两种分词器的训练代码。Tokenizer 训练非常吃内存,建议在大数据集时进行采样以节省资源。

CLM 因果模型预训练

通过使用 bell open source 的数据集 BELLE,项目进行了无监督预训练。预训练过程中,模型输入和输出相同,计算交叉熵损失时需要错开一位。

SFT 指令微调

SFT 训练的数据格式经过精心设计,模型计算损失时会忽略标记 "##回答:" 之前的部分,确保模型能够正确理解指令。

RLHF 优化

项目采用了更简单、更节省显存的 DPO 偏好优化方法,通过构造 promptchosenrejected 三列数据,对 SFT 模型进行微调。

项目及技术应用场景

Phi2-Chinese-0.2B 适用于多种应用场景,包括但不限于:

  • 对话系统:模型可以用于构建智能对话系统,提供自然语言交互能力。
  • 文本生成:通过微调,模型可以生成高质量的中文文本,适用于写作、摘要生成等任务。
  • 检索式生成(RAG):项目提供了 RAG 的具体实现代码,适用于需要结合检索和生成能力的应用场景。

项目特点

  • 开源与可定制:项目完全开源,开发者可以根据自己的需求进行定制和扩展。
  • 实验性:项目为实验性质,随时可能进行大改,适合愿意尝试和探索的开发者。
  • 高效训练:支持 flash attention 2 加速,提升训练效率。
  • 灵活的 Tokenizer:提供两种分词器训练代码,适应不同数据集的需求。
  • RLHF 优化:采用 DPO 方法进行偏好优化,提升模型性能。

结语

Phi2-Chinese-0.2B 是一个极具潜力的开源项目,适合那些希望从零开始训练中文小模型的开发者。无论你是初学者还是经验丰富的开发者,这个项目都能为你提供丰富的资源和灵活的定制选项。赶快加入我们,一起探索中文模型的无限可能吧!


项目地址Phi2-Chinese-0.2B

模型权重Hugging Face

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起