synthetic-data-kit

一键生成高质量合成数据,告别数据短缺和隐私烦恼

synthetic-data-kit 是一个用于生成高质量合成数据集的 Python 工具,旨在解决真实数据获取成本高、隐私风险大、样本不均衡等问题。它通过可复现的流程,支持从数据探索、生成到评估的完整闭环,帮助用户创建逼真且符合业务逻辑的模拟数据。核心能力包括:灵活的数据模式定义、多种生成策略(如统计模型、规则引擎)、内置质量评估与偏差检测,以及易于扩展的插件架构。该工具特别适用于机器学习模型开发、隐私保护场景下的数据共享,以及测试环境的数据填充,能显著提升数据准备效率。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1641
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队meta-llama
所属国家
官网地址
定价模式free
价格说明开源工具,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型data,generation,llm,python,synthetic
GitHub 星标★ 1641
30天Star增速
HF 下载量
上线时间2025-03-27 00:00:00
最近更新2026-09-23 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:进阶 约 20 分钟 部署方式:命令行工具 8 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 运行环境(README 未标注具体版本)
  • 可用的 LLM 后端:本地 vLLM 服务或外部 API 端点
  • YAML 配置文件(默认 configs/config.yaml)
  • 使用 API 端点时需准备 api_key(如 llama-api-key)

安装与启动步骤

  1. 1获取项目源码

    从 GitHub 拉取仓库并进入项目目录;README 的 Installation 小节为空,此处为通用准备动作。

    git clone https://github.com/meta-llama/synthetic-data-kit.git
    cd synthetic-data-kit
  2. 2配置 LLM 后端

    编辑默认配置 configs/config.yaml,把 llm.provider 设为 vllm 或 api-endpoint,并填好对应地址与模型名。

  3. 3检查后端连通性

    运行内置检查命令,确认配置的 LLM 后端可以正常访问,避免后续生成任务失败。

    synthetic-data-kit system-check
  4. 4导入原始数据

    用 ingest 命令导入文件或整个目录,支持多种文件格式(README 示例为 PDF)。

    synthetic-data-kit ingest docs/paper.pdf
  5. 5生成合成数据

    用 create 命令生成 QA 对、带 CoT 的 QA 对或 summary 格式;具体参数 README 未给出,请按需查阅项目文档。

    synthetic-data-kit create
  6. 6筛选高质量样本

    用 curate 命令以 Llama 作为裁判筛选高质量样本,阈值由 curate.threshold 控制(示例为 7.0)。

    synthetic-data-kit curate
  7. 7导出微调格式

    用 save-as 命令把结果保存为你的微调框架支持的格式;可选格式 README 未逐一列出。

    synthetic-data-kit save-as
  8. 8使用自定义配置

    创建覆盖用的 YAML 文件,通过 -c 参数指定,即可在不改默认配置的情况下切换后端或参数。

    synthetic-data-kit -c my_config.yaml ingest docs/paper.pdf

关键配置

配置项必填说明示例
llm.provider是选择 LLM 后端类型vllm
vllm.api_base否本地 vLLM 服务的 API 地址http://localhost:8000/v1
vllm.model否vLLM 后端加载的模型名meta-llama/Llama-3.3-70B-Instruct
api-endpoint.api_key否调用外部 API 端点所需的密钥llama-api-key
generation.temperature否生成时的采样温度0.7
curate.threshold否Llama 裁判筛选样本的分数阈值7.0

如何确认成功

执行 synthetic-data-kit system-check,命令无报错即表示配置的 LLM 后端可正常连通。

常见问题

Q:README 里 Installation 小节是空的,怎么安装?

A:节选内容中未给出 pip 或 Docker 安装命令,建议直接克隆仓库后按仓库内文档补齐依赖,或参考项目 GitHub 主分支 README。

Q:应该选 vLLM 还是 API 端点?

A:有本地 GPU 并已部署 vLLM 时用 provider: vllm;没有本地算力则用 provider: api-endpoint 并填写外部服务的 api_base、api_key 和 model。

Q:如何在不改默认配置的情况下换配置?

A:新建一个覆盖用的 YAML 文件,用 -c 参数指定,例如 synthetic-data-kit -c my_config.yaml ingest docs/paper.pdf。

Q:生成的数据存在哪里?

A:README 说明所有数据默认以 Lance 格式存储,后续 curate 和 save-as 都基于这份数据继续处理。

注意事项

  • README 节选缺少安装步骤与各命令的参数说明,实际执行前请先查看完整 README。
  • 本教程中的 create、curate、save-as 命令仅给出了命令名,参数需自行按项目文档补全。
  • vllm.api_base、api_key 等值请替换为你自己的真实地址与密钥,示例值不可直接用于生产。

核心亮点

  • 提供从数据剖析到生成评估的完整工作流,开箱即用
  • 内置多种生成算法和可插拔架构,适配不同数据形态
  • 强调数据质量与偏差检测,生成结果更可信

不足之处

  • 文档/社区待观察
  • 对复杂业务规则的支持可能依赖自定义扩展

适用场景

  • 机器学习模型开发需要大量训练数据时
  • 涉及用户隐私,需用合成数据替代真实数据
  • 测试环境需要模拟真实业务数据

替代项目

SDV (Synthetic Data Vault)、Faker、ydata-synthetic

项目介绍

synthetic-data-kit 是数据集领域的开源项目,由 meta-llama 开发,2025 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(1,641)位列前 30%,在数据集分类中处于中上游。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-23。开源工具,MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:机器学习模型开发需要大量训练数据时。同类可对比的替代方案包括 SDV (Synthetic Data Vault)、Faker、ydata-synthetic。

上一篇:Curator

下一篇:dolma

同类项目推荐

X-AnyLabeling 开源

一站式AI辅助标注,图像视频文本通吃,导出格式随心配

X-AnyLabeling: A lightweight, efficient, and unified cross-platform desktop applicat···

★ 10528 2026-08-10
aisheets 开源

像用表格一样批量调 AI,不写代码就能造和改数据集

Build, enrich, and transform datasets using AI models with no code

★ 1645 2026-09-20
distilabel 开源

基于论文的合成数据流水线,快速生成高质量 AI 反馈数据。

Distilabel is a framework for synthetic data and AI feedback for engineers who need ···

★ 3398 2026-08-10
DataGen 开源

用大模型一键生成定制化训练数据,告别数据荒

[ICLR'25] DataGen: Unified Synthetic Dataset Generation via Large Language Models

★ 69 2026-08-09