DataArc-SynData-Toolkit

按规则批量造合成数据,替代敏感真实数据

DataArc-SynData-Toolkit 是 DataArcTech 开源的合成数据生成平台,用 Python 编写。它面向需要大量高质量训练数据但受限于隐私、成本或数据稀缺的团队,提供从配置到生成的一站式流程。核心能力包括:按字段和分布规则生成结构化表格数据,支持自定义约束与业务逻辑,可批量产出用于机器学习训练、测试和演示的数据集;同时兼顾数据脱敏场景,用合成数据替代真实敏感数据。项目以工具包形式组织,便于集成到现有数据管道,也适合快速搭建合成数据实验。相比从零写生成脚本,它把常用生成策略和配置抽象成可复用模块,降低门槛,让算法工程师和数据科学家更专注于模型与业务,而不是数据构造本身。

开源 free 数据集
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1782
维护状态 较活跃
是否开源
定价模式 free

项目数据

分类数据集
开发团队DataArcTech
所属国家
官网地址
定价模式free
价格说明开源工具,定价信息待确认
访问状态
是否开源
开源协议Apache-2.0
主要语言Python
技术栈/模型
GitHub 星标★ 1782
30天Star增速
HF 下载量
上线时间2025-11-21 00:00:00
最近更新2026-09-15 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-09-12
浏览次数0

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 7 步

环境要求

  • Python 环境(README 未标注具体版本,详见 docs/DEPENDENCIES.md)
  • uv 包管理工具(README 用 pip install uv 安装)
  • GUI 模式需要 Node.js 环境与 pnpm
  • 调用大模型需要 OpenAI 兼容的 API Key
  • 评估功能需要 Confident AI 的 API Key

安装与启动步骤

  1. 1安装 uv

    README 要求先安装 uv 作为依赖管理工具,若已安装可跳过此步直接执行后续 uv 命令。

    pip install uv
  2. 2安装依赖

    在项目根目录执行 uv sync,按 pyproject 配置同步安装全部依赖,硬件与依赖细节见 docs/DEPENDENCIES.md。

    uv sync
  3. 3准备配置文件

    参照 configs 下的示例文件修改成自己的生成配置,README 给出 sdg.yaml、sft.yaml、grpo.yaml、eval.yaml 四种范例。

  4. 4填写 API 密钥

    把密钥写入 .env 文件。OPENAI_API_KEY 必填,OPENAI_BASE_URL 为可选的自定义接口地址,CONFIDENT_API_KEY 用于评估。

    OPENAI_API_KEY=sk-xxx
    OPENAI_BASE_URL=https://api.openai.com/v1
    CONFIDENT_API_KEY=confident_us_xxx
  5. 5运行评估

    按评估配置样例写好 configs/eval.yaml 后执行该命令,结果会保存到配置的输出目录,并可在 Confident AI 网页可视化。

    uv run sdg eval configs/eval.yaml
  6. 6启动 GUI 后端

    使用 FastAPI 启动后端服务,uv 的 dev 模式会自动重载;需另开一个终端执行前端构建步骤。

    uv run fastapi dev sdgsystem/app/main.py
  7. 7构建前端界面

    切换到前端目录并安装依赖,以便配合后端使用图形界面完成零代码操作。

    cd sdgsystem/webui
    pnpm install

关键配置

配置项必填说明示例
OPENAI_API_KEY调用 OpenAI 兼容接口生成数据所需的密钥sk-xxx
OPENAI_BASE_URL自定义的 OpenAI 接口基础地址https://api.openai.com/v1
CONFIDENT_API_KEY访问 Confident AI(deepeval)评估服务的密钥,注册后可免费创建confident_us_xxx
configs/sdg.yaml合成数据生成的主配置文件示例,按需修改configs/sdg.yaml
configs/sft.yamlSFT 训练数据生成配置示例configs/sft.yaml
configs/grpo.yamlGRPO 训练数据生成配置示例configs/grpo.yaml

如何确认成功

执行 uv run sdg eval configs/eval.yaml 后无报错并输出结果文件到配置的输出目录,即表示运行成功。

常见问题

Q:没有 uv 可以吗?

A:README 的安装与运行命令全部基于 uv,建议先 pip install uv,再在项目根目录执行 uv sync 安装依赖。

Q:必须填 OPENAI_BASE_URL 吗?

A:不必。README 标注该项为 Optional,留空时使用默认 OpenAI 地址,使用代理或兼容接口时才需要填写。

Q:评估结果在哪里看?

A:结果可在 Confident AI 网页上可视化查看,同时也会保存到配置文件中指定的输出目录。

Q:GUI 怎么启动?

A:先执行 uv run fastapi dev sdgsystem/app/main.py 启动后端,再另开终端进入 sdgsystem/webui 执行 pnpm install。

注意事项

  • README 节选中未给出获取源码的命令,请自行克隆或下载仓库到本地后再执行上述步骤
  • .env 中包含真实密钥,切勿提交到版本库或公开分享
  • 安装章节疑似缺失第 1 步,依赖与硬件要求请以 docs/DEPENDENCIES.md 为准
  • 前端构建还需要 pnpm,请提前安装 Node.js 环境

核心亮点

  • 提供结构化表格数据的规则化生成能力,可直接用于模型训练与测试
  • 支持自定义约束和业务逻辑,生成结果更贴近真实分布
  • Python 工具包形态,便于集成进现有数据管道和实验流程

不足之处

  • 文档与示例丰富度待观察,上手可能需要阅读源码
  • 社区规模和生态插件相对有限,长期维护节奏待观察

适用场景

  • 金融、医疗等敏感行业用合成数据替代真实数据做模型训练
  • 为机器学习项目快速构造测试集和演示数据集
  • 在真实数据稀缺或标注成本高时扩充训练样本

替代项目

SDV、Faker

项目介绍

DataArc-SynData-Toolkit 是一个数据集领域的开源项目,官方简介:Synthetic Data Generation Platform By DataArcTech。项目使用 Python 开发,在 GitHub 上获得 1780 星标。

上一篇:OpusFilter

下一篇:synthetic-data-showcase

同类项目推荐

X-AnyLabeling 开源

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

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

★ 10456 2026-08-10
distilabel 开源

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

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

★ 3394 2026-08-10
DataGen 开源

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

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

★ 69 2026-08-09
stopes 开源

一键准备多语言翻译数据,从清洗到挖掘平行语料

A library for preparing data for machine translation research (monolingual preproces···

★ 313 2026-08-10