synthea

一键生成百万级合成病人数据,告别隐私合规烦恼

Synthea 是一个开源的合成患者群体模拟器,用 Java 编写,能够生成大规模、真实感强的合成电子健康记录(EHR)数据。它解决了医疗数据隐私与可用性之间的矛盾,为研究人员和开发者提供无需真实患者信息即可进行算法训练、系统测试和学术研究的数据源。其核心能力包括基于临床指南的疾病模拟、人口统计学建模、FHIR 标准输出,以及支持自定义模块扩展。通过模拟个体从出生到死亡的完整健康轨迹,Synthea 能生成包含诊断、用药、手术、过敏史等丰富字段的数据集,并支持多种格式(如 FHIR、CSV)导出。项目由 MITRE 团队维护,社区活跃,广泛应用于医疗 AI 模型训练、医疗信息系统互操作性测试等领域。

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

项目数据

分类数据集
开发团队synthetichealth
所属国家
定价模式free
价格说明开源项目,Apache-2.0许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议Apache-2.0
主要语言Java
技术栈/模型fhir,health-data,simulation,synthea,synthetic-data,synthetic-population
GitHub 星标★ 3357
30天Star增速
HF 下载量
上线时间2016-06-17 00:00:00
最近更新2026-09-23 00:00:00
维护状态维护中
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-10
浏览次数10

使用教程

难度:入门 约 10 分钟 部署方式:本地安装 4 步

环境要求

  • Java JDK 17 或更新版本(强烈建议使用 LTS 版本 17 或 25)
  • Git 命令行工具
  • 可访问 GitHub 的网络(用于克隆仓库与下载依赖)

安装与启动步骤

  1. 1检查 Java 版本

    Synthea 要求 JDK 17 或更新版本,优先用 LTS 17 或 25,非 LTS 新版本可能出问题。

    java -version
  2. 2克隆代码仓库

    从 GitHub 拉取 Synthea 源码到本地,并进入项目目录。

    git clone https://github.com/synthetichealth/synthea.git
    cd synthea
  3. 3构建并运行测试

    用仓库自带的 Gradle Wrapper 编译项目并执行测试套件,首次运行需下载依赖,耗时较长。

    ./gradlew build check test
  4. 4查看运行说明

    该 README 只讲开发者构建流程;若只想生成数据,请按官方 wiki 的 Basic Setup and Running 操作。

关键配置

配置项必填说明示例
exporter.fhir.bulk_data否设为 true 时以 ndjson 格式输出 Bulk FHIR 数据true
exporter.ccda.export否设为 true 时额外导出 C-CDA 格式数据true
exporter.csv.export否设为 true 时额外导出 CSV 格式数据true

如何确认成功

执行 ./gradlew build check test 后输出 BUILD SUCCESSFUL,且测试全部通过、无失败用例。

常见问题

Q:Java 版本报错或编译失败怎么办?

A:确认 java -version 为 JDK 17 或更新版本,并尽量换成 LTS 的 17 或 25,非 LTS 的新版本可能出现兼容问题。

Q:我只想生成数据,不想改代码,怎么跑?

A:README 建议直接看官方 wiki 的 Basic Setup and Running 页面,那里是面向普通使用者的运行说明;本仓库的 Quick Start 面向开发者。

Q:怎么得到 CSV 或 C-CDA 格式的数据?

A:在配置中将 exporter.csv.export 或 exporter.ccda.export 设为 true;需要 ndjson 的 Bulk FHIR 则把 exporter.fhir.bulk_data 设为 true。

Q:需要自己单独安装 Gradle 吗?

A:不需要,仓库自带 Gradle Wrapper,直接用 ./gradlew 命令即可。

注意事项

  • Synthea 默认使用马萨诸塞州普查数据作为人口统计基线,如需其他地区需自行配置。
  • 生成的合成数据虽非真实患者,但在用于研究或对外发布前仍建议确认合规要求。
  • README 节选未给出运行生成器的具体命令,实际运行方式请以官方 wiki 为准。

核心亮点

  • 基于真实临床指南模拟疾病进展,数据可信度高
  • 输出标准 FHIR 格式,无缝对接主流医疗 IT 系统
  • 支持自定义模块,灵活扩展模拟场景和疾病类型

不足之处

  • 文档/社区待观察
  • 生成大规模数据时性能消耗较大,需较高计算资源

适用场景

  • 医疗 AI 模型训练与验证,如疾病预测、影像分析
  • 医疗信息系统开发与测试,如 EHR 互操作性、HL7 FHIR 接口调试
  • 医学教育与科研,用于生成教学案例或流行病学研究模拟数据

替代项目

MDClone、Synthetic Data Vault (SDV)、PatientGen

项目介绍

synthea 是数据集领域的开源项目,由 synthetichealth 开发,2016 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(3,357)位列前 30%,在数据集分类的 279 个项目里位列前 11%。

近 42 天,它的 GitHub 星标从 3,297 增加到 3,357,净增 60。

项目仍在小幅维护中,最近一次代码更新于 2026-09-23。Apache-2.0许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:医疗AI模型训练与验证,如疾病预测、影像分析。同类可对比的替代方案包括 MDClone、Synthetic Data Vault (SDV)、PatientGen。

上一篇:distilabel

下一篇:greenmask

同类项目推荐

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