面向大语言模型的全流程数据准备系统,支持通过可复现的算子流水线进行数据生成、清洗、评估与过滤。
项目定位#
DataFlow 是由 OpenDCAI(开放数据中心 AI 团队)开源的大语言模型数据准备与训练系统,旨在从 PDF、纯文本、低质量 QA 等噪声数据源中提炼高质量训练数据,以提升 LLM 在医疗、金融、法律、学术研究等垂直领域的性能。
核心架构#
系统采用 PyTorch 风格的 Pipeline → Operator → Prompt 三层层次化架构:
- Pipeline:编排多个算子的执行顺序,管理数据流转。
- Operator:封装特定数据处理任务,对外提供一致的调用 API。
- Prompt:底层提示模板,定义与 LLM 的具体交互方式。
能力矩阵#
流水线编排与算子体系#
- 内置 10+ 核心算子 定义交互模式与设计原则,100+ 流水线专用算子 涵盖生成、评估、过滤、精炼等多类别。
- 支持完全自定义算子的即插即用,可通过 GitHub 或 PyPI 进行模块化分发。
- 数据治理算法封装为算子流水线,支持公平比较不同策略,可轻松替换底层大模型以分析数据质量与模型性能的关系。
数据合成与清洗工作流#
- 多类型数据生成:支持文本、数学、代码数据生成(DataFlow-Instruct-10K 数据集已验证效果)。
- 工具驱动生成:集成 AgenticRAG、Text2SQL 等工具辅助数据生成(Text2SQL 工作流被 ICDE 2026 收录,数学数据工作流被 KDD 2026 收录)。
- 文档结构化提取:支持大规模 PDF → QA 转换、书籍 PDF → 视觉 QA 转换。
DataFlow Suite 四大组件#
| 组件 | 功能 |
|---|---|
| DataFlow-WebUI | 可视化拖拽式流水线构建与管理界面(前端 Vue.js + 后端 FastAPI) |
| DataFlow-Agent | AI 驱动助手,根据自然语言意图自动组合和优化算子与流水线 |
| DataFlow-Ecosystem | 模块化分发层,标准化算子注册,支持领域扩展(如 DataFlow-MM、DataFlow-AI4S) |
| RayOrch | 基于 Ray 的高性能分布式计算编排层 |
典型应用场景#
- LLM 预训练数据准备:从原始文本提取和过滤高质量预训练语料。
- SFT 数据合成:自动生成高质量指令-响应对。
- RL 训练数据准备:为强化学习训练提供高质量数据。
- RAG 系统数据构建:从 PDF/文档中提取结构化知识。
- 领域专用数据准备:医疗、金融、法律、学术研究等垂直领域。
- 数学/代码数据增强:专门针对数学推理和代码生成任务的数据流水线。
- Text2SQL 数据增强:SQL 感知的数据增强框架(+3% 执行准确率)。
- 企业级数据治理:基于 Git 生态的可追溯、可管理的数据治理工作流。
安装与快速开始#
pip 安装(推荐):
pip install uv
uv pip install open-dataflow
若需本地 GPU 推理(vLLM):
uv pip install open-dataflow[vllm]
验证安装:dataflow -v
Docker 安装:
docker pull molyheci/dataflow:cu124
docker run --gpus all -it molyheci/dataflow:cu124
启动 WebUI:dataflow webui(自动打开 http://localhost:8000/)
关键配置#
- LLM 后端:通过
api_url配置任意 OpenAI 兼容接口,支持本地 vLLM 推理后端。 - 密钥管理:API Key 通过环境变量
DF_API_KEY注入。 - 数据格式:输入/输出原生支持 JSON、JSONL、CSV。
- 支持平台:Windows、Linux、macOS(Python 3.10 / 3.11 / 3.12)。
待确认信息#
- DataFlow-MM、DataFlow-AI4S 等领域扩展模块缺少具体仓库链接。
- DataFlow-Agent 与 RayOrch 的独立仓库/文档链接未明确。
- DataFlow-Instruct-10K 数据集缺少下载或 HuggingFace 托管链接。
- 首发时间标注为 2025-06-28,与引用会议时间线存在潜在矛盾,待确认。