【免费下载链接】DataArc-SynData-Toolkit
Synthetic Data Generation Platform By DataArcTech
DataArc SynData Toolkit是一个开源合成数据生成平台,除了能一键合成大模型训练数据,还内置了基于 verl 的模型后训练模块——你只需一条sdg train命令,就能在合成数据上完成SFT(监督微调)和GRPO(群组相对策略优化)训练,再配合 DeepEval 评估闭环,全程无需手写任何训练脚本。本文将带你快速上手这套"合成数据 → 后训练 → 评估"的完整工作流。
为什么值得用:后训练闭环一图看懂
传统流程里,"造数据"和"训模型"往往分散在两套工具里。DataArc SynData Toolkit 把这两步打通:上游从本地语料、HuggingFace 或教师模型蒸馏三条路线合成数据,下游直接接 verl 训练器,形成闭环。
官方给出的实测效果也很能打:用合成数据训练的 Qwen-2.5-7B 在医疗、金融、法律三个领域上分别提升了 22%、21% 和 23 个百分点,堪称"小成本大收益"。
快速安装与一键启动
📦 硬件要求、CUDA 版本与依赖配置详见官方文档 docs/DEPENDENCIES_zh.md。
三步完成安装(仓库中已内置 verl 框架,无需单独安装):
# 1. 克隆项目 git clone https://gitcode.com/gh_mirrors/da/DataArc-SynData-Toolkit cd DataArc-SynData-Toolkit # 2. 安装 uv 包管理器 pip install uv # 3. 一键同步全部依赖 uv sync如果你要合成数据来喂给训练,先创建.env文件填入 API 密钥,再执行uv run sdg generate configs/sdg.yaml生成训练集。详细流程可参考使用场景文档 docs/USE_CASES_zh.md。
SFT 训练:一条命令完成监督微调
SFT(Supervised Fine-Tuning)是最直观的后训练方式:用"问题-答案"对直接教会模型标准答法。DataArc 的启动器会自动把 JSONL 数据转换成 verl 需要的 Parquet 格式,你完全不用操心。
配置文件样例见 configs/sft.yaml,核心字段一目了然:
| 配置块 | 关键项 | 说明 |
|---|---|---|
data | train_files/val_files | 训练集与验证集路径(JSONL 格式) |
model | path、lora_rank | 基座模型;lora_rank: 0为全参微调,设为 32/64 即启用 LoRA 省显存 |
optim | lr: 1e-5 | 学习率 |
trainer | total_epochs、save_freq | 训练轮数与检查点保存频率 |
执行训练只需一条命令:
uv run sdg train configs/sft.yaml训练日志会实时打印到终端,同时保存在检查点目录的logs/training.log中。SFT 在底层调用 verl 的 FSDP 训练器(verl/trainer/fsdp_sft_trainer.py),多卡并行开箱即用,命令行还支持--num-gpus 4这类参数临时覆盖 GPU 数量。
GRPO 训练:让模型在"组内比较"中自我进化
GRPO(Group Relative Policy Optimization)是强化学习路线:对同一问题让模型生成多组回答,用奖励信号选出更好的回答来更新策略,无需人工标注答案。
配置文件见 configs/grpo.yaml,比 SFT 多三块关键设置:
| 配置块 | 关键项 | 说明 |
|---|---|---|
actor | lr: 1e-6、use_kl_loss | 策略网络学习率;KL 惩罚防止策略漂移 |
rollout | n: 4、gpu_memory_utilization | 每个问题采样 4 个回答;vLLM 显存占用比例 |
reward | data_source/custom_reward_function/reward_model | 三选一:内置规则奖励、自定义奖励函数或奖励模型 |
奖励配置是 GRPO 的核心。以数学题为例,把reward.data_source设为openai/gsm8k,verl 就会自动路由到内置的数学答案校验函数(如 verl/utils/reward_score/gsm8k.py),用标准答案核对模型输出得分。
uv run sdg train configs/grpo.yamlGRPO 在底层调用 verl 的 PPO 主入口(verl/trainer/main_ppo.py),并通过algorithm.adv_estimator: grpo切换为 GRPO 优势估计。数据预处理逻辑(JSONL 转 Parquet、注入 ground_truth)封装在 sdgsystem/trainer/data_preprocessing.py 中,全部自动完成。
💡经验之谈:先用 SFT 教会模型"答对",再用 GRPO 让它"答得更好",是当前公认的后训练黄金组合。
可视化训练:WebUI 里盯着 Loss 曲线跑
不想碰命令行?DataArc 的 React 前端提供了图形化训练页面(源码见 sdgsystem/webui/src/pages/training-page/),SFT 与 GRPO 一键切换,填表即可启动。
启动前后端(两个终端分别执行):
# 终端 1:FastAPI 后端 uv run fastapi dev sdgsystem/app/main.py # 终端 2:React 前端 cd sdgsystem/webui pnpm install pnpm dev前端亮点包括:通过 SSE 实时流式推送训练日志、自动解析train/loss和学习率指标、训练完成后可在界面里一键导出模型到 Hugging Face,甚至能中途取消任务。前端细节可查阅 sdgsystem/webui/README_zh.md。
合并权重与模型评估:闭环的最后一步
训练产出的 verl 检查点需要先合并成 HuggingFace 格式才能部署或评估:
python -m verl.model_merger merge --backend fsdp --local_dir <checkpoint> --target_dir <output>合并后,用内置的 DeepEval 模块评估后训练效果,覆盖答案正确性、格式合规性、成对偏好比较三大指标(配置样例见 configs/eval.yaml):
uv run sdg eval configs/eval.yaml评估代码位于 sdgsystem/deepeval/,结果既保存到本地输出目录,也可在 Confident AI 云端看板中可视化对比基座模型与后训练模型的表现。
总结:一条命令打通的后训练闭环
回顾一下完整链路:
- 装:
uv sync一键装好全部依赖 - 造:
uv run sdg generate configs/sdg.yaml合成训练数据 - 训:
uv run sdg train configs/sft.yaml(或grpo.yaml)一条命令启动后训练 - 评:
uv run sdg eval configs/eval.yaml验证效果
对于想验证"合成数据到底有没有用"的团队,这套工具链把试错成本压到了最低——改个配置、跑条命令,就能拿到可量化的提升。更多源码细节可深入 sdgsystem/trainer/ 目录,训练配置类定义在 sdgsystem/trainer/config.py,方法实现在 sdgsystem/trainer/methods/。
【免费下载链接】DataArc-SynData-Toolkit
Synthetic Data Generation Platform By DataArcTech
相关推荐
使用 TRL 完成大模型后训练全流程:SFT、奖励模型、DPO、PPO 与 GRPO 实战指南
使用 TRL 完成大模型后训练全流程:SFT、奖励模型、DPO、PPO 与 GRPO 实战指南 导读 本文以 AI Research SKILLs 仓库中 TR
AI 技能人工智能大模型深度学习DataArc SynData Toolkit图像模态教程:如何用VLM生成VQA视觉问答训练数据
DataArc SynData Toolkit图像模态教程:如何用VLM生成VQA视觉问答训练数据 DataArc SynData Toolkit 是由 Dat
Agentic RL终极实战指南:从SFT到GRPO的全流程模型训练
Agentic RL终极实战指南:从SFT到GRPO的全流程模型训练 想要掌握最前沿的Agentic RL技术吗?本文为你带来从监督微调 SFT 到组策略优化
教程文档AI Agent人工智能大模型
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考