NeMo Data Designer
从零或基于种子数据生成高质量合成数据集。
证据显示:README 明确说明遥测功能可禁用(NEMO_TELEMETRY_ENABLED=false),并说明收集的数据类型(模型名称和 token 计数),这体现了数据流透明性。但未发现权限最小化、用户确认或回滚机制的明确证据。依赖安全方面,pyproject.toml 中注释了多个安全修复版本(如 aiohttp、jupyter-server 等),表明对依赖安全有一定关注。外部影响方面,README 提到可配置第三方端点,但未详细说明其影响。来源归属方面,README 提供了引用信息,但发布者身份未验证。扣分原因:缺少权限最小化、用户确认、回滚和敏感数据处理的具体实现细节。
证据显示:项目结构清晰,有多个测试文件(如 fern/scripts/tests/),表明自洽性较好。依赖可用性方面,pyproject.toml 定义了依赖组,但未提供完整的依赖锁定文件(如 uv.lock)的细节。失败消息方面,测试中未发现明确的错误处理或用户友好的失败消息。扣分原因:失败消息和依赖可用性的证据不足。
证据显示:README 描述了多种使用场景(生成多样数据、控制关系、验证质量等),并提供了快速入门示例,表明受众和场景覆盖较好。能力边界方面,文档提到了异步引擎和模型配置,但未明确说明限制。触发精度方面,CLI 命令和技能安装说明提供了触发方式,但未详细说明触发条件。环境适配方面,支持 Python 3.10-3.14,并提供了安装说明。扣分原因:触发精度和能力边界的细节不足。
证据显示:README 提供了清晰的信息架构,包括快速入门、文档链接和贡献指南。安装说明详细(pip 和源码安装)。命名稳定性方面,未发现重大命名变化,但未提供版本历史。示例和 FAQ 方面,提供了代码示例和文档链接,但未提供 FAQ。已知限制方面,README 提到了异步引擎的注意事项,但未全面列出。许可证为 Apache-2.0,完整。版本控制和变更日志方面,未发现 CHANGELOG 文件。维护责任方面,README 提供了贡献指南和问题跟踪。扣分原因:缺少 FAQ、已知限制和变更日志。
证据显示:输出可用性方面,README 描述了生成的数据集可用于生产级合成数据,并提供了预览模式。边际价值方面,提供了多种生成方式(统计采样、LLM、种子数据),但未与其他工具对比。成本效益方面,未提供性能或成本数据。扣分原因:成本效益和边际价值的证据不足。
证据显示:README 中的声明(如“20T+ Tokens Processed”)未提供具体数据来源,但提供了文档链接。跨来源佐证方面,未发现独立验证。事实与推断分离方面,README 区分了功能描述和遥测数据,但未明确区分事实和推断。扣分原因:声明缺乏可追溯性,且无独立验证。
- 发布者身份未验证,需谨慎对待来源。
- 遥测功能默认启用,需注意隐私影响,可设置 NEMO_TELEMETRY_ENABLED=false 禁用。
- 依赖安全注释表明部分依赖有已知漏洞,但未提供完整的依赖锁定文件,建议使用 uv.lock 确保可复现性。
- README 中的性能声明(如 20T+ tokens)缺乏可验证的数据来源。
这个 Agent 能做什么,适合哪些场景?
NeMo Data Designer 是 NVIDIA 推出的合成数据生成框架,可用于从零生成或基于现有种子数据扩充数据集。它提供统计采样器、LLM 文本列、依赖感知生成、内置验证器(Python、SQL 及自定义远程验证器)以及 LLM-as-a-judge 评分功能。支持预览模式,可在全规模生成前快速迭代。它可通过 pip 安装,并支持多个模型提供商(NVIDIA Build、OpenAI、OpenRouter)。该框架提供 Python 接口和 CLI 工具,并包含一个面向编码智能体的技能,可与 Claude Code 等工具集成。
NeMo Data Designer 通过列配置生成合成数据。用户使用 SamplerColumnConfig 和 LLMTextColumnConfig 定义列,指定采样器类型(如 CATEGORY)和提示模板。它使用异步引擎并行处理列,并支持依赖感知生成以控制字段间关系。内置验证器(Python、SQL 或远程)可确保数据质量,LLM-as-a-judge 可对输出进行评分。用户可通过 DataDesigner 类的 preview 方法预览数据集,并使用 data-designer config 命令配置模型提供商。该框架还提供 CLI 工具和技能集成,使编码智能体(如 Claude Code)能根据自然语言描述自动生成数据集。
- 需要为机器学习模型生成多样化训练数据的数据科学家,当真实数据稀缺或敏感时。
- 需要生成符合特定字段相关性的合成数据集的工程师,例如用于测试数据库查询的客户数据。
- 需要快速创建带注释的数据集以评估 LLM 输出的研究人员。
- 需要为基准测试生成多语言文本数据的开发者,可使用 LLM 提示模板。
- 希望在数据进入生产环境前验证数据完整性和业务规则的质量保证团队。
这个 Agent 有哪些优点和局限?
- 无缝支持多种模型提供商(NVIDIA Build、OpenAI、OpenRouter),无需更改代码即可切换。
- 内置验证器(Python、SQL、远程)确保生成数据的质量和业务规则合规。
- 异步引擎通过并行处理列和动态调整并发,提升大型数据集的性能。
- 提供预览模式和 LLM-as-a-judge 评分,便于在全面生成前快速迭代。
- 需要有效的 API 密钥(NVIDIA Build、OpenAI 或 OpenRouter),可能产生费用。
- 使用 NVIDIA Build 端点时有数据隐私问题,其服务条款可能限制生产使用。
- 框架仍处于早期阶段,可能缺少某些文档或稳定 API。
- 技能集成目前主要针对 Claude Code,其他编码智能体支持有限。
如何安装或部署这个 Agent?
通过 pip 安装:pip install data-designer。或从源代码安装:git clone https://github.com/NVIDIA-NeMo/DataDesigner.git && cd DataDesigner && make install。需要 Python 3.10 至 3.14。
如何使用这个 Agent?
设置 API 密钥之一:export NVIDIA_API_KEY="..." 或 export OPENAI_API_KEY="..." 或 export OPENROUTER_API_KEY="..."。在 Python 中导入 data_designer.config 和 DataDesigner,创建 DataDesignerConfigBuilder,添加列配置(如 SamplerColumnConfig 或 LLMTextColumnConfig),然后调用 data_designer.preview(config_builder=config_builder) 并预览样本。