显存只有 4GB?0.2B 的 ChatLM-mini-Chinese 也能本地跑中文对话

📅 2026/8/23 12:44:46
显存只有 4GB?0.2B 的 ChatLM-mini-Chinese 也能本地跑中文对话
显存只有 4GB0.2B 的 ChatLM-mini-Chinese 也能本地跑中文对话【免费下载链接】ChatLM-mini-Chinese中文对话0.2B小模型ChatLM-Chinese-0.2B开源所有数据集来源、数据清洗、tokenizer训练、模型预训练、SFT指令微调、RLHF优化等流程的全部代码。支持下游任务sft微调给出三元组信息抽取微调示例。项目地址: https://gitcode.com/gh_mirrors/ch/ChatLM-mini-Chinese如果手头只有一块 4GB 显存的显卡还能不能在本地搭一个会说中文的对话机器人ChatLM-mini-Chinese 想解决的就是这个问题。它是一款只有 0.2B 参数的轻量级中文对话模型float16 推理最少只需 512MB 显存预训练也只需 4GB 显存加 16GB 内存。读者主要是两类人想在普通硬件上快速搭中文对话原型的开发者和想完整跑通一次大模型训练流程的学习者。能力实证能干什么做到什么程度中文问答的可用性模型走 T5 的 Text-to-Text 路线把回答提问当成序列到序列的生成任务。跑起来后它对日常问题比如失眠该怎么做能给出分条建议对一段较长的科学新闻也能拟出标题。要说清楚的是它的预训练语料只有九百多万条覆盖不了所有领域冷门话题上仍会答非所问把它当原型比当成品更合适。命令行与 API 两种部署形态同一个模型有两种跑法命令行模式适合本地试交互API 模式适合把模型接进自己的应用用 HTTP 接口收发文本。上手路径三步把中文对话跑通部署拆成三步每步不超过一条命令。拉代码git clone --depth 1 https://gitcode.com/gh_mirrors/ch/ChatLM-mini-Chinese装依赖pip install -r requirements.txt一条命令装全部第三方库推荐 Python 3.10跑起来把模型权重下到model_save后python cli_demo.py进命令行对话或python api_demo.py起 API 服务设计取舍它为什么这么做几个选型背后都有明确的取舍逻辑理解这些比记住结论更有用。为什么是 T5 而不是 GPT 风格。编码器和解码器各用 10 层官方 T5-base 是 12 层这里刻意压小好让 0.2B 的参数装进 4GB 显存。Text-to-Text 框架让预训练、指令微调、偏好优化共用一套 seq2seq 范式不用在掩码预测和自回归生成之间来回切。为什么词表小、数据用流式加载。词表只有 29298基本只含中文和少量英文配合字符或字节级 tokenizer 进一步压小体积。GB 级数据集走流式加载加缓冲区打乱不落内存也不占磁盘这是它能压到 4GB 显存预训练的原因。为什么偏好优化选 DPO。相比 PPODPO 不用单独训奖励模型只要有偏好回答和拒绝回答的对照就能开训显存开销更低对小模型和单卡场景更友好。进阶玩法训练全流程与下游微调不想直接用现成权重、想自己训的话项目把每一步的脚本都开源了Tokenizer 训练train_tokenizer.py跑支持字符级与字节级语料超过约 2GB 建议先采样省内存Text-to-Text 预训练动态学习率 1e-4 到 5e-3双卡 A5000 约 8 天支持任意位置断点续训SFT 指令微调约 137 万条指令数据默认冻结 embedding 与 encoder、只训 decoder约 2 天DPO 偏好优化约 8 万条偏好对fp16、2 个 epoch单卡约 3 小时下游任务微调三元组信息抽取示例微调后 F1 达 0.74原有对话能力没丢代码见 finetune_examples/info_extract/训练细节在 model/trainer.py收尾手上正好有 4GB 左右显卡的话建议先从cli_demo.py把中文对话跑通确认可用后再决定是否深入训练和下游微调环节。【免费下载链接】ChatLM-mini-Chinese中文对话0.2B小模型ChatLM-Chinese-0.2B开源所有数据集来源、数据清洗、tokenizer训练、模型预训练、SFT指令微调、RLHF优化等流程的全部代码。支持下游任务sft微调给出三元组信息抽取微调示例。项目地址: https://gitcode.com/gh_mirrors/ch/ChatLM-mini-Chinese创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考