面向基础模型的数据处理系统,提供 200 多种可组合算子,用于清洗、过滤、去重和合成文本、图像、音频与视频数据。
NVIDIA-NeMo/Curator
GPU 加速的数据处理工具包,用于构建可重复的流水线,对大规模文本、图像、视频和音频数据做过滤、去重和转换,服务于 AI 训练。
- Star
- 1,818
- Fork
- 351
- 未关闭 Issue
- 297
- 最近提交
- 4小时前
这是什么?
NeMo Curator 是一个用于准备 AI 模型训练数据的 Python 工具包,帮助机器学习工程师和数据团队搭建可重复的数据处理流水线。流水线由加载、过滤、去重、分类、写出等阶段组成,并为文本、图像、视频和音频分别提供模块。
每个阶段可声明自己所需的 CPU、GPU 和副本数,执行器会据此自动扩缩容。同一套流水线定义既能在单机运行,也能在多节点 Ray 集群上运行,包括 Slurm 管理的 HPC 环境。生产默认执行器为 Xenna,同时提供基于 Ray 的实验性后端。
该项目属于 NVIDIA NeMo 套件,可通过 uv 或 Docker 安装,Linux 上提供基于 CUDA 12 的 GPU 文本处理路径。
核心功能
- 01提供加载、过滤、去重、分类和写出等模块化阶段。
- 02借助 RAPIDS 实现 GPU 加速的去重和分类。
- 03同一流水线可在笔记本或多节点 Ray 集群上运行。
- 04针对文本、图像、视频、音频提供专门的模块。
- 05内置兼容 OpenAI 接口的推理服务,用于合成数据流程。
适用场景
- 在大模型预训练前对网页文本做去重和质量过滤。
- 对大规模图像集做过滤和向量化,用于训练数据准备。
- 通过场景检测和运动过滤准备视频片段。
- 对语音数据做转写和过滤,用于音频模型训练。
快速上手
- 1
安装 uv 包管理器(README 中的安装脚本通过管道传给 sh,因此此处不提供命令)
- 2
创建虚拟环境并安装 CPU 文本扩展包
uv venv && source .venv/bin/activate uv pip install "nemo-curator[text_cpu]" - 3
打印版本号以验证安装
python -c "import nemo_curator; print(nemo_curator.__version__)"
使用前须知
- CUDA 12 GPU 文本路径需要 Linux x86_64 系统,并且约需 16 GB 显存。
- CUDA 12 文本扩展不支持标准 pip 安装,需要使用特定的 uv 覆盖文件。
- 音频和视频流程需要 FFmpeg,最好通过自定义容器镜像来处理。
- 从 26.09 版本起,NVIDIA 不再在 NGC 上发布新的 NeMo Curator 容器镜像。
标签
常见问题
- Curator 是什么?
- GPU 加速的数据处理工具包,用于构建可重复的流水线,对大规模文本、图像、视频和音频数据做过滤、去重和转换,服务于 AI 训练。 NeMo Curator 是一个用于准备 AI 模型训练数据的 Python 工具包,帮助机器学习工程师和数据团队搭建可重复的数据处理流水线。流水线由加载、过滤、去重、分类、写出等阶段组成,并为文本、图像、视频和音频分别提供模块。
- Curator 可以免费使用吗?用的什么许可证?
- Curator 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- Curator 还在维护吗?
- 活跃维护中。Curator 最近一次提交是在 2026年10月21日。
- Curator 适合用来做什么?
- 在大模型预训练前对网页文本做去重和质量过滤。 对大规模图像集做过滤和向量化,用于训练数据准备。 通过场景检测和运动过滤准备视频片段。 对语音数据做转写和过滤,用于音频模型训练。
- Curator 怎么安装和运行?
- 安装 uv 包管理器(README 中的安装脚本通过管道传给 sh,因此此处不提供命令) 创建虚拟环境并安装 CPU 文本扩展包: uv venv && source .venv/bin/activate uv pip install "nemo-curator[text_cpu]" 打印版本号以验证安装: python -c "import nemo_curator; print(nemo_curator.__version__)"
- 在哪里获取 Curator?
- 源代码和安装说明在 GitHub 上:https://github.com/NVIDIA-NeMo/Curator
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
用于构建 RAG、智能体和文档处理应用的 Python 框架,帮助 LLM 连接私有数据。
基于 LLM 的 Python 数据处理与 ETL 系统,用自然语言描述操作,对大量结构化与非结构化数据做 map-reduce 处理。
基于机器学习编译的大语言模型部署引擎,可在多种 GPU、浏览器和移动设备上原生运行 LLM。
一个轻量级 Python 库,用统一的 OpenAI 风格接口调用多家大模型服务,并提供带工具和 MCP 支持的 Agents API。
MNN 是阿里巴巴开源的轻量级深度学习推理与训练引擎,适用于移动端、嵌入式设备及端侧大模型部署。