Y-Trainer 是一个LLM模型微调训练框架。
-
📉 精准对抗过拟合: 专门优化,有效解决SFT中的过拟合难题。
-
🧩 突破遗忘瓶颈: 无需依赖通用语料,即可卓越地保留模型的泛化能力,守住核心能力的同时实现专项提升!
-
🏆 单卡强化学习:无需依赖参考模型、教师模型,仅需基础模型+奖励函数,即可稳定的进行强化学习训练。
官网介绍: Y-Trainer
该框架包含以下三个核心组件:继续预训练(CPT)指令微调(SFT)强化学习(RL)[将很快发布需要配合Y-agent使用]。
支持多种模型预训练方法,能够高效利用训练数据,提升模型在特定领域的能力。
与传统 SFT 不同,我们采用了一套自研的训练方法,具备如下优势:
- 支持对训练预料进行评分。可以在训练之前,排查有问题的语料。
- 在尽可能保留基座模型能力的前提下,限制语料中错误知识的影响;
- 无需进行数据集平衡操作,实现快速收敛,同时几乎不会损害模型的原始能力。
基于 SFT 构建的全新强化学习框架,具有以下显著优势:
- 低资源需求: 无需依赖参考模型、奖励模型、价值网络等组件,仅需合理设计奖励函数即可完成训练;
- 训练稳定: 以高熵 token 作为分支节点,自动生成语料树,并通过内置聚类算法进行剪枝,确保充分的探索空间。结合自适应梯度计算策略,无需KL散度约束,整个训练过程更加稳定可靠。
注意:本项目可以用于qwen2.5、 qwen3系列模型,主要测试4B、7B、8B等模型,目前不支持Moe模型,如果其他需求请联系我们,同时欢迎开源工作者加入本项目。
您既可以训练完整模型,也可以仅训练 LoRA 适配器。
同时支持在单 GPU 或多 GPU 环境下进行训练。
cd y-trainer
pip install -r requirements.txt通过命令启动训练服务(启动前可以通过configs/sever_config.py修改端口和指定大模型文件夹)
python main.py浏览器打开:http://localhost:8010
linux无法直接打开浏览器的云服务器,可以通过ssh连接到云服务器,即可在本地浏览器打开。
例如: ssh -p 39114 -L 0.0.0.0:8010:localhost:8010 root@connect.xxx.sss.com
网页便捷使用训练、集成注意力分析、内容压缩、样本生成和聚类筛选功能的专业AI文本处理工具。

您也可以通过以下示例脚本轻松训练自己的模型。
单GPU
# Continue pretraining
bash scripts/pretrain_ds.sh
# sft training
bash scripts/sft.sh
# windows sft training
./scripts/sft.bat以SFT为例,其他类似
python -m start_training \
--model_path_to_load model_or_path \ # 需要训练的模型目录
--lora_path ./lora \ # 加载lora的文件目录(基于lora检查点继续训练是采用此方式)
--training_type 'sft' \ # 训练方式
--epoch 3 \ # 训练轮数
--checkpoint_epoch '0,1' \ # 保存检查点轮数
--use_NLIRG 'true'\ #核心算法,默认启用
--data_path ./data/sft_example.json \ # 加载数据集的位置,修改此参数,可以指定你的数据集文件
--output_dir outputdir \ # 输出的模型文件目录
--use_lora 'true' \ #使用lora方式进行训练
--batch_size 1 \ # 不建议修改,默认1
--token_batch 10 \ # 不建议修改,默认10
--enable_gradit_checkpoing 'true' \ # 开启梯度检查点
--lora_target_modules "q_proj,k_proj,v_proj,o_proj,gate_proj,up_proj,down_proj" # 指定训练的网络层
多GPU
# Continue pretraining
bash scripts/pretrain_ds.sh
# sft training
bash scripts/sft_ds.sh进行继续预训练时, 请参考 此文件
[
{
"ID": 0,
"output": "your content 1"
},
{
"ID": 1,
"output": "your content 2"
}
]进行指令微调时, 请参考 此文件
[
{
"id": 0,
"instruction": "instruction 0",
"output": "output 0",
"input": ""
},
{
"id": 1,
"instruction": "instruction 1",
"output": "output 1",
"input": ""
}
]只有output字段的token会被训练。
更多教程请参见 Y-Studio 官方文档。
Y-Agent Studio 框架完全开源、可商用。下载后即可无限制使用全部功能。
该框架融合了代码的灵活性与可视化界面的便捷性,支持以下能力:
- 流程编排与迭代
- 自动化测试
- 语料标注与生产管理
- 高度可定制的工作流,支持嵌套结构与有环的循环连接
- 完善的日志系统,提供可视化展示与自动化分析
- 开放的系统集成能力,可与您现有的 IT 系统无缝对接
- 支持自动化测试、语料标注、语料生产与管理
- 解决了垂直领域训练导致基座模型能力下降的问题
