LLM数据处理框架:Data-Juicer、DataFlow、NeMo Curator+DataDesigner

LLM数据处理框架:Data-Juicer、DataFlow、NeMo Curator+DataDesigner 本文汇总介绍几款LLM数据处理框架。Data-Juicer项目主页一个专为LLMs和多模态大模型设计的一站式、高性能、可扩展的开源GitHub6.5K Star379 Fork数据处理与治理框架。已成为支撑Qwen系列大模型训练数据pipeline的核心工具。文档。目标是解决大模型训练中海量、异构、低质原始数据如网页、论坛、百科、图文对、音视频到高质量、安全、合规训练语料的转化难题覆盖从采集、清洗、过滤、去重、增强到格式标准化的全链路。特性多模态原生支持。提供统一Dataset抽象屏蔽模态差异。支持纯文本图像OCR、美学评分、NSFW检测、图文相关性过滤音频语音识别ASR、静音检测、音频质量评估视频关键帧提取、字幕识别、场景分类图文混合文档PDF/Word/PPT结构化解析内容对齐丰富内置算子Operators。提供100可组合的预定义算子覆盖常见数据处理需求类别示例算子过滤语言识别、敏感词过滤、低信息量文本剔除清洗HTML标签去除、乱码修复ftfy、PII脱敏增强回译BackTranslation、问答对生成去重MinHash-LSH近似去重、ExactDedup精确去重质量评估Perplexity评分、CLIP图文相似度、图像清晰度格式转换JSONL↔Parquet、多模态样本对齐灵活Pipeline编排。使用YAML配置文件定义处理流程dataset_path:./raw_data.jsonlnp:8# 并行进程数ops:-LanguageIdFilter:lang:enmin_ratio:0.8-PiiRedactionOp:entity_types:[PERSON,PHONE,EMAIL]-DocumentMinhashDeduplicator:hash_bits:128支持条件分支、循环、自定义算子扩展。高性能与可扩展单机分布式支持本地多进程、Ray集群、Slurm作业调度流式处理内存占用低适合TB/PB级数据高效I/O基于Apache Arrow和memory mapping减少磁盘瓶颈实测性能在1280核CPU集群上2.8小时完成5TB文本去重安全与合规内置PII个人身份信息识别与脱敏模块符合GDPR、中国《个人信息保护法》支持敏感内容过滤政治、暴力、色情等提供数据血缘追踪便于审计与大模型生态深度集成输出格式直接兼容HuggingFace Datasets、ModelScope支持为Qwen、Llama、InternLM等主流模型定制数据模板可生成用于SFT、RLHF、DPO的指令微调数据应用场景大语言模型预训练语料清洗清洗Common Crawl、Wikipedia、The Pile等、去除低质、重复、含PII的网页多模态模型训练数据构建从网络图文对中筛选高相关性样本CLIP score 0.3、视频-字幕对齐提取高质量教学视频指令微调数据生成自动生成“问题-答案”对、过滤不安全或事实错误的样本企业私有数据治理内部文档脱敏后用于RAG或微调、构建合规的知识库实战基于pip安装pipinstallpy-data-juicer[nlp,vision,generic]dj-run--configyour_pipeline.yamlPython SDK集成示例fromdata_juicerimportExecutor executorExecutor(configpipeline.yaml)executor.run()DataFlow论文开源GitHub5K Star560 ForkLLM数据处理加工的框架以模块化、可复用的系统级抽象为核心提供近200个可重用算子和6个跨文本、数学推理、代码、Text-to-SQL等领域的通用管道支持PyTorch风格的管道构建API并通过DataFlow-Agent实现自然语言到可执行管道的自动转换。文档。类似产品NeMo Curator。核心优势LLM驱动优先将LLM生成与精炼作为一等公民支持细粒度语义控制而现有框架以过滤/清洗为主编程模型更灵活采用PyTorch风格的模块化API支持IDE友好开发、断点续跑和编译优化而非依赖配置文件自动化能力更强通过DataFlow-Agent实现自然语言到管道的自动生成与调试支持算子合成而现有框架缺乏深度自动化能力。论文中已有实验证明效果其在多个任务中表现优异如T2S任务执行精度超SynSQL 3%代码基准测试平均提升7%仅10K样本的DataFlow-Instruct-10K数据集可让基础模型性能超越1M Infinity-Instruct数据训练的模型为数据中心型AI开发提供可靠、可复现且可扩展的解决方案。架构解读全局存储抽象采用表格化数据表示提供read/write统一接口支持多存储后端文件系统、数据库等。分层编程接口LLM服务API统一本地引擎vLLM、SGLang和在线APIChatGPT、Gemini调用。算子接口两阶段设计初始化执行支持键值对形式的灵活I/O绑定。提示模板接口解耦提示构建与算子逻辑支持跨场景复用。管道接口PyTorch风格支持编译优化、断点续跑。算子分类按功能分为生成Generator、评估Evaluator、过滤Filter、精炼Refiner四类共近200个可重用算子。扩展支持支持第三方算子、管道扩展提供CLI脚手架工具。关键组件DataFlow-Agent基于LangGraph的多代理系统支持自然语言指令自动生成、调试可执行管道核心流程为意图分解→算子合成→管道组装→验证。可提高自动化能力对非专业开发者也更友好还能自动化调试和优化减少人工干预。DataFlow-Ecosystem支持Python包形式的扩展通过CLI工具快速搭建算子、管道项目。管道类型管道类型核心功能关键实验结果文本数据准备预训练数据过滤、SFT数据合成/过滤、对话生成30Btokens训练平均得分35.69超Random等基线DataFlow-Chat-15K超ShareGPT/UltraChat数学推理数据准备问题合成、质量验证、CoT生成MATH、GSM8K、AIME数据集1-3分提升10K样本训练平均得分55.7超Open-R1、Synthetic-1代码数据准备代码指令合成、精炼基准测试平均提升7%DataFlow-Code-10K使Qwen2.5-14B平均得分达51.0T2S数据准备SQL生成/增强、问题生成、一致性过滤超SynSQL3%执行精度EHRSQL基准提升31.8%Agentic RAG数据准备多跳问题生成、质量筛选10K样本数据集OOD平均得分超HotpotQA、Musique等人类标注数据集知识提取医疗文本清洗、QA合成PubMedQA准确率53.40%超CoT36.40%和RAG43.33%发展方向多模态扩展支持表格、图、多模态数据。领域定制开发DataFlow-AI4S、工业级定制版本。生态完善推进社区贡献形成标准化数据准备协议。NeMoNeMo Curator开源GitHub1.6K Star287 Fork数据预处理与清洗工具。主要功能数据去重精确/模糊/子字符串去重质量过滤基于内容质量的分类和筛选语言检测多语言文本识别和分类多模态处理文本、图像、视频、音频的统一处理框架GPU加速利用NVIDIA RAPIDS进行GPU加速处理分布式执行支持Ray集群的分布式处理技术特点流水线架构模块化的Stage设计支持流式执行生产就绪在Nemotron模型训练中实际应用性能优化针对大规模数据集优化如RedPajama v2应用场景为LLM训练准备大规模数据集从原始数据如Common Crawl中提取高质量内容多模态数据集的统一预处理企业级数据清洗流水线维度NeMo CuratorNeMoData Designer核心任务数据清洗和筛选数据生成和创造输入数据大规模原始数据种子数据或无数据输出数据清洗后的高质量数据新生成的合成数据处理方向减法过滤、去重加法生成、扩充技术重点性能优化、GPU加速质量控制、关系建模典型用例准备训练数据集创建测试数据集数据流向原始数据→高质量数据种子数据→扩展数据复杂度处理大规模数据的复杂性生成逻辑的复杂性NeMo DataDesigner一个生产级开源GitHub2K Star185 Fork合成数据生成编排框架。核心目标从零开始、或基于少量种子数据可控、可验证、可版本化地生成高质量结构化数据集天然支持模型蒸馏Knowledge Distillation场景下的许可合规合成数据管道。与OpenRouter的Distillable Models、Nemotron系列模型无缝配合已成为HuggingFace上众多顶级开源合成数据集背后的生成引擎。官方文档。围绕统计分布控制、字段强依赖、质量验证、许可合规、Agent自动化五大维度构建真正把合成数据从“一次性实验”变成可复现、可规模化、可用于生产蒸馏训练的工业标准。主要功能合成数据生成从零生成或基于种子数据扩展关系控制字段间的依赖关系和相关性控制质量验证内置Python、SQL和自定义验证器评分系统使用LLM-as-a-judge进行质量评估快速迭代预览模式支持快速原型开发特点工业级可控性统计分布字段依赖异步引擎细胞级异步执行重叠独立列处理质量闭环ValidatorLLM Judge双保险灵活配置支持多种采样器和LLM模型蒸馏原生合规enforce_distillable_text解决许可痛点Agent友好技能集成让AI帮你写代码生成数据轻量易部署pip安装即用支持本地/云端任意OpenAI-兼容模型应用场景模型蒸馏数据生成教师模型Nemotron/Llama等生成结构化QA对、指令-响应对用于学生模型知识迁移业务结构化数据集产品评论、客户画像、知识问答、多语言对话、模拟日志等种子数据增强少量真实数据→海量变体同时保持统计分布隐私合规场景生成替代真实用户数据的测试集Agent/RAG原型验证快速构建领域特定数据集原理AI模型训练尤其是SFT、DPO、蒸馏痛点真实数据稀缺、隐私敏感、许可受限随机prompt生成的数据分布不可控、字段无逻辑关联、质量无法验证数据不可版本化、不可复现、难以规模化蒸馏时许可合规风险高Teacher模型生成的数据可能不允许用于Student训练。五大核心价值直接对症从零或种子数据生成高质量合成数据集支持统计采样LLM生成种子扩充三种方式字段依赖关系强控制通过Jinja模板实现列间逻辑关联保证数据真实性和一致性内置全链路质量保障Python/SQL/自定义验证器 LLM-as-a-Judge自动评分许可合规蒸馏管道原生支持enforce_distillable_textTrue等机制直接对接OpenRouter Distillable ModelsAgent技能与CLI自动化支持CC等Agent一键描述需求→自动生成Schema验证数据集DataDesigner让合成数据生成升级为声明式、可追踪、可规模化的生产级管道NVIDIA内部用它构建Nemotron模型的预训练/后训练数据集。项目采用ConfigBuilder Column定义的核心设计模式主流程为定义Schema列配置 → 预览迭代 → 正式生成 → 验证评分 → 导出数据集三种Column生成方式源码级核心SamplerColumn统计采样器控制精确分布Category、Numeric、Person demographics等LLMTextColumnLLM动态生成文本支持{{ previous_column }}字段依赖引用Seed-based Column基于用户提供的少量真实种子数据进行增强/变体生成字段依赖与提示词模板示例config_builder.add_column(dd.SamplerColumnConfig(nameproduct_category,sampler_typedd.SamplerType.CATEGORY,paramsdd.CategorySamplerParams(values[Electronics,Clothing,...])))config_builder.add_column(dd.LLMTextColumnConfig(namereview,model_aliasnvidia-text,promptWrite a brief product review for a {{ product_category }} item you recently purchased.))质量验证与评分内置ValidatorsPython函数、SQL查询、自定义本地/远程ValidatorLLM-as-a-Judge用另一个LLM对生成结果打分完整性、准确性、无幻觉等Preview模式生成少量样本快速迭代配置避免浪费Token模型Provider与配置。支持NVIDIA Build API、OpenAI、OpenRouter、任意OpenAI兼容端点CLI一键管理data-designer config providers>Agent技能集成.skills/data-designer/目录npx skills add NVIDIA-NeMo/DataDesigner安装后可在CC等Agent中直接输入需求如生成一个产品QA数据集Agent自动完成Schema设计、验证和生成。DataDesigner采用纯Python声明式框架设计98.7% Python仓库结构清晰architecture/、docs/、packages/、skills/、tests_e2e/等。核心组件DataDesignerConfigBuilder声明式API所有列配置、依赖、验证规则均在此定义支持版本化ModelProvider抽象层统一封装NVIDIA/OpenAI/OpenRouter支持extra_body参数如{provider: {enforce_distillable_text: True}}Generation Engine内置批处理、并行、重试、规模化机制自动处理长上下文与Token限制Validation Scoring Pipeline可链式组合多个Validator LLM JudgeTelemetry可选关闭仅收集模型别名与Token统计用于社区洞察热门模型蒸馏专用扩展在ModelConfig中加入extra_body{provider:{enforce_distillable_text:True,# 确保生成数据可合法用于蒸馏only:[deepinfra]# 限制仅使用支持蒸馏的端点}}结合OpenRouter的Distillable Models集合直接生成Teacher→Synthetic Data→Student全链路许可合规数据。NVIDIA官方示例Notebookproduct-question-answer-generator_OR_v3.ipynb就是完整蒸馏管道演示。整个架构体现配置即代码Config-as-Code、声明式、版本化、可审计的工程思想为企业级RAG、Agent、推荐系统等场景提供可落地的合成数据基础设施。实战提供多种部署方式pippip install>gitclone https://github.com/NVIDIA-NeMo/DataDesigner.gitcdDataDesignermakeinstall必须要设置环境变量export NVIDIA_API_KEYnvapi-xxx # 或 export OPENAI_API_KEY... / OPENROUTER_API_KEY... export NEMO_TELEMETRY_ENABLEDfalse # 可选关闭遥测完整快速示例生成产品评论数据集importdata_designer.configasddfromdata_designer.interfaceimportDataDesigner data_designerDataDesigner()config_builderdd.DataDesignerConfigBuilder()# 步骤1采样类别config_builder.add_column(dd.SamplerColumnConfig(nameproduct_category,sampler_typedd.SamplerType.CATEGORY,paramsdd.CategorySamplerParams(values[Electronics,Clothing,Home Kitchen,Books])))# 步骤2LLM生成评论依赖上一步config_builder.add_column(dd.LLMTextColumnConfig(namereview,model_aliasnvidia-text,promptWrite a brief product review for a {{ product_category }} item you recently purchased.))# 预览迭代previewdata_designer.preview(config_builderconfig_builder)preview.display_sample_record()# 正式生成规模化# dataset data_designer.generate(config_builderconfig_builder, num_records10000)生成后可直接导出CSV/JSONL用于NeMo Microservices的Knowledge Distillation Job或Hugging Face Trainer。NeMo DataDesigner把合成数据生成提升到声明式、合规、可规模化的新高度尤其在模型蒸馏、隐私保护、领域定制化Agent场景下价值巨大。