
DataFlow
用 LLM 算子搭流水线,把脏数据一键变成训练集
DataFlow 是一个面向大模型时代的数据准备框架,目标是让数据清洗、合成与加工像搭积木一样简单。它把数据处理的每个环节抽象成可复用的 Operator(算子),再通过 Pipeline 把算子串成完整流程,覆盖去重、过滤、格式转换、质量评估、指令数据合成等常见需求。核心能力包括:基于最新 LLM 的智能算子,可自动完成语义级清洗与数据生成;模块化流水线设计,支持灵活编排与并行执行;内置 Gradio 界面,无需写代码即可跑通流程;同时提供可扩展接口,方便接入自定义模型与算子。项目论文被 SIGMOD'27 收录,说明其在数据管理领域有学术支撑。相比传统脚本式清洗,DataFlow 把 LLM 能力沉淀成标准算子,降低了构建高质量训练数据集的工程门槛,适合需要批量生产与治理数据的团队。
项目数据
使用教程
环境要求
- Python >= 3.10(已在 Windows / Linux / macOS 的 3.10、3.11、3.12 上测试通过)
- 推荐安装 uv 以加速依赖安装
- 如需本地 GPU 推理,需具备可用的 NVIDIA GPU 环境并安装 vLLM 依赖
- 使用 Docker GPU 特性需提前安装 NVIDIA Container Toolkit
安装与启动步骤
-
1安装 uv
DataFlow 官方推荐用 uv 来安装,速度更快;若已有 uv 可跳过此步。
pip install uv -
2安装 DataFlow
安装 CPU 通用版本;如需用本地 GPU 推理,改用带 vllm 扩展的安装命令。
uv pip install open-dataflow -
3安装 GPU 版(可选)
仅当你想用自己的 GPU 做本地推理时执行,会一并装上 vLLM 相关依赖。
uv pip install "open-dataflow[vllm]" -
4验证安装
执行版本检查命令,能打印出版本号即表示安装成功。
dataflow -v -
5Docker 预构建镜像(可选)
不想配环境可直接拉取官方镜像运行,容器内含 CUDA 12.4.1 与 vLLM。
docker run --gpus all -it molyheci/dataflow:cu124 -
6自行构建镜像(可选)
在仓库根目录基于自带 Dockerfile 构建自定义镜像,构建完成后再启动容器。
docker build -t dataflow:custom . docker run --gpus all -it dataflow:custom -
7Colab 快速体验(可选)
不想本地安装可打开官方 Colab 笔记本,直接跑通第一个翻译示例流程。
如何确认成功
运行 dataflow -v,若输出 open-dataflow codebase version: 1.0.0 及版本比对信息,说明安装成功。
常见问题
Q:支持哪些 Python 版本和操作系统?
A:需要 Python 3.10 及以上,官方在 Windows、Linux、macOS 上使用 Python 3.10、3.11、3.12 均已测试通过。
Q:想用自己的 GPU 做本地推理怎么装?
A:把安装命令换成 uv pip install "open-dataflow[vllm]",即可获得 vLLM 相关的本地推理依赖。
Q:Docker 镜像里包含什么?
A:预构建镜像 molyheci/dataflow:cu124 已内置 CUDA 12.4.1 支持和预装 vLLM,可直接用于 GPU 加速。
Q:docker run 报 GPU 相关错误怎么办?
A:带 --gpus all 启动需要宿主机安装 NVIDIA Container Toolkit,请先按其官方安装指南配置好再运行。
Q:不装环境能先体验一下吗?
A:可以,官方提供了 Google Colab 笔记本,打开即可跑通第一个 DataFlow 翻译项目示例。
注意事项
- 优先使用 uv 安装,官方说明可显著加速依赖安装过程。
- vllm 扩展与 Docker 镜像面向 GPU 场景,普通清洗流程使用基础安装即可。
- Docker 方式必须确保 NVIDIA Container Toolkit 已安装,否则 --gpus all 无法生效。
- README 未给出 DataFlow 的配置文件说明,可通过 dataflow -v 先确认版本与更新情况。
核心亮点
- 算子化设计让数据清洗、合成、评估可自由组合复用
- 内置 Gradio 界面,非工程用户也能跑通完整流程
- 紧跟最新 LLM,支持语义级清洗与指令数据合成
不足之处
- 算子与流水线数量仍在增长,复杂业务需自行扩展
- LLM 算子依赖外部模型调用,成本与延迟需自行权衡
适用场景
- 为大模型微调批量清洗和合成指令数据集
- 对爬取或业务日志做语义去重与质量过滤
- 在低代码界面里快速搭建可复现的数据处理流水线
替代项目
Data-Juicer、NeMo-Curator、datatrove
项目介绍
同类项目推荐
X-AnyLabeling
开源
一站式AI辅助标注,图像视频文本通吃,导出格式随心配
X-AnyLabeling: A lightweight, efficient, and unified cross-platform desktop applicat···
distilabel
开源
基于论文的合成数据流水线,快速生成高质量 AI 反馈数据。
Distilabel is a framework for synthetic data and AI feedback for engineers who need ···
DataGen
开源
用大模型一键生成定制化训练数据,告别数据荒
[ICLR'25] DataGen: Unified Synthetic Dataset Generation via Large Language Models
stopes
开源
一键准备多语言翻译数据,从清洗到挖掘平行语料
A library for preparing data for machine translation research (monolingual preproces···