模型简介
模型特点
模型能力
使用案例
🚀 MedGemma模型卡片
MedGemma是基于Gemma 3开发的一系列模型变体,经过针对医学文本和图像理解的训练,能助力开发者加速构建医疗AI应用。目前有4B多模态版本和27B纯文本版本。
🚀 快速开始
安装依赖库
首先,安装Transformers库。从transformers 4.50.0版本开始支持Gemma 3。
$ pip install -U transformers
运行模型
使用pipeline
API运行模型
from transformers import pipeline
import torch
pipe = pipeline(
"text-generation",
model="google/medgemma-27b-text-it",
torch_dtype=torch.bfloat16,
device="cuda",
)
messages = [
{
"role": "system",
"content": "You are a helpful medical assistant."
},
{
"role": "user",
"content": "How do you differentiate bacterial from viral pneumonia?"
}
]
output = pipe(text=messages, max_new_tokens=200)
print(output[0]["generated_text"][-1]["content"])
直接运行模型
# pip install accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "google/medgemma-27b-text-it"
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [
{
"role": "system",
"content": "You are a helpful medical assistant."
},
{
"role": "user",
"content": "How do you differentiate bacterial from viral pneumonia?"
}
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**inputs, max_new_tokens=200, do_sample=False)
generation = generation[0][input_len:]
decoded = tokenizer.decode(generation, skip_special_tokens=True)
print(decoded)
✨ 主要特性
- 多模态支持:4B版本支持文本和视觉模态,27B版本仅支持文本模态。
- 长上下文支持:支持至少128K令牌的长上下文。
- 高性能表现:在多种医学基准测试中表现出色,优于其基础Gemma模型。
📦 安装指南
安装Transformers库,Gemma 3从transformers 4.50.0版本开始支持。
$ pip install -U transformers
💻 使用示例
基础用法
from transformers import pipeline
import torch
pipe = pipeline(
"text-generation",
model="google/medgemma-27b-text-it",
torch_dtype=torch.bfloat16,
device="cuda",
)
messages = [
{
"role": "system",
"content": "You are a helpful medical assistant."
},
{
"role": "user",
"content": "How do you differentiate bacterial from viral pneumonia?"
}
]
output = pipe(text=messages, max_new_tokens=200)
print(output[0]["generated_text"][-1]["content"])
高级用法
# pip install accelerate
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "google/medgemma-27b-text-it"
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [
{
"role": "system",
"content": "You are a helpful medical assistant."
},
{
"role": "user",
"content": "How do you differentiate bacterial from viral pneumonia?"
}
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
input_len = inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**inputs, max_new_tokens=200, do_sample=False)
generation = generation[0][input_len:]
decoded = tokenizer.decode(generation, skip_special_tokens=True)
print(decoded)
📚 详细文档
模型信息
描述
MedGemma是基于Gemma 3的一系列变体,针对医学文本和图像理解进行了训练。目前有4B多模态版本和27B纯文本版本。MedGemma 27B仅在医学文本上进行了训练,并针对推理时间计算进行了优化。开发者可以对MedGemma变体进行微调以提高性能。
模型架构概述
MedGemma基于Gemma 3构建,使用与Gemma 3相同的仅解码器Transformer架构。更多架构信息请参考Gemma 3 模型卡片。
技术规格
属性 | 详情 |
---|---|
模型类型 | 仅解码器Transformer架构,见Gemma 3技术报告 |
模态 | 4B:文本、视觉;27B:仅文本 |
注意力机制 | 采用分组查询注意力(GQA) |
上下文长度 | 支持长上下文,至少128K令牌 |
关键出版物 | 即将发布 |
模型创建时间 | 2025年5月20日 |
模型版本 | 1.0.0 |
输入和输出
输入:
- 文本字符串,如问题或提示
- 总输入长度为128K令牌
输出:
- 对输入的生成文本响应,如问题的答案、图像内容分析或文档摘要
- 总输出长度为8192令牌
性能和验证
MedGemma在多种不同的多模态分类、报告生成、视觉问答和基于文本的任务中进行了评估。
关键性能指标
文本评估
MedGemma 4B和仅文本的MedGemma 27B在一系列仅文本的医学知识和推理基准测试中进行了评估。
指标 | MedGemma 27B | Gemma 3 27B | MedGemma 4B | Gemma 3 4B |
---|---|---|---|---|
MedQA (4-op) | 89.8 (best-of-5) 87.7 (0-shot) | 74.9 | 64.4 | 50.7 |
MedMCQA | 74.2 | 62.6 | 55.7 | 45.4 |
PubMedQA | 76.8 | 73.4 | 73.4 | 68.4 |
MMLU Med (text only) | 87.0 | 83.3 | 70.0 | 67.2 |
MedXpertQA (text only) | 26.7 | 15.7 | 14.2 | 11.6 |
AfriMed-QA | 84.0 | 72.0 | 52.0 | 48.0 |
对于所有MedGemma 27B结果,使用测试时间缩放来提高性能。
伦理和安全评估
评估方法
评估方法包括结构化评估和对相关内容政策的内部红队测试。红队测试由多个不同团队进行,每个团队有不同的目标和人类评估指标。这些模型针对与伦理和安全相关的多个不同类别进行了评估,包括:
- 儿童安全:评估涵盖儿童安全政策的文本到文本和图像到文本提示,包括儿童性虐待和剥削。
- 内容安全:评估涵盖安全政策的文本到文本和图像到文本提示,包括骚扰、暴力和血腥内容以及仇恨言论。
- 代表性危害:评估涵盖安全政策的文本到文本和图像到文本提示,包括偏见、刻板印象和有害关联或不准确信息。
- 一般医疗危害:评估涵盖安全政策的文本到文本和图像到文本提示,包括信息质量和有害关联或不准确信息。
除了开发阶段的评估,还进行“保证评估”,这是用于责任治理决策的“独立”内部评估。这些评估与模型开发团队分开进行,以提供有关发布的决策信息。高级别发现会反馈给模型团队,但提示集会被保留以防止过拟合并保留结果为决策提供信息的能力。值得注意的保证评估结果会作为发布审查的一部分报告给责任与安全委员会。
评估结果
在所有安全测试领域,在儿童安全、内容安全和代表性危害类别中都看到了安全水平的表现。所有测试均在没有安全过滤器的情况下进行,以评估模型的能力和行为。对于文本到文本、图像到文本和音频到文本,以及两个MedGemma模型大小,模型产生的政策违规最少。评估的一个局限性是主要包括英语提示。
数据卡片
数据集概述
训练
基础Gemma模型在大量文本和代码数据语料库上进行了预训练。MedGemma 4B使用了一个SigLIP图像编码器,该编码器专门在各种去识别的医学数据上进行了预训练,包括放射学图像、组织病理学图像、眼科图像和皮肤病学图像。其大语言模型组件在多样化的医学数据上进行了训练,包括与放射学图像、胸部X光、组织病理学切片、眼科图像和皮肤病学图像相关的医学文本。
评估
MedGemma模型在一组全面的临床相关基准测试中进行了评估,包括跨越5个不同任务和6种医学图像模态的22个以上数据集。这些包括开放基准数据集和精选数据集,重点是对胸部X光报告生成和放射学视觉问答等任务进行专家人工评估。
来源
MedGemma使用了公共和私有数据集的组合。该模型在多样化的公共数据集上进行了训练,包括MIMIC-CXR(胸部X光和报告)、Slake-VQA(多模态医学图像和问题)、PAD-UFES-20(皮肤病变图像和数据)、SCIN(皮肤病学图像)、TCGA(癌症基因组学数据)、CAMELYON(淋巴结组织病理学图像)、PMC-OA(带有图像的生物医学文献)和Mendeley Digital Knee X-Ray(膝盖X光)。此外,还许可并纳入了多个不同的专有数据集。
数据所有权和文档
- Mimic-CXR:麻省理工学院计算生理学实验室和贝斯以色列女执事医疗中心(BIDMC)。
- Slake-VQA:香港理工大学(PolyU),与四川大学华西医院和四川省医学科学院/四川省人民医院等合作。
- PAD-UFES-20:巴西圣埃斯皮里图联邦大学(UFES),通过其皮肤科和外科援助计划(PAD)。
- SCIN:谷歌健康与斯坦福医学的合作项目。
- TCGA(癌症基因组图谱):美国国家癌症研究所和国家人类基因组研究所的联合项目。TCGA的数据可通过基因组数据中心(GDC)获取。
- CAMELYON:数据来自荷兰拉德堡德大学医学中心和乌得勒支大学医学中心。
- PMC-OA(PubMed Central开放获取子集):由美国国立医学图书馆(NLM)和国家生物技术信息中心(NCBI)维护,它们是美国国立卫生研究院的一部分。
- MedQA:该数据集由Di Jin、Eileen Pan、Nassim Oufattole、Wei-Hung Weng、Hanyi Fang和Peter Szolovits领导的研究团队创建。
- Mendeley Digital Knee X-Ray:该数据集来自拉尼钱纳马大学,并托管在Mendeley Data上。
- AfriMed-QA:该数据由多个合作组织和研究人员开发和领导,包括关键贡献者:Intron Health、SisonkeBiotik、BioRAMP、佐治亚理工学院和MasakhaneNLP。
- VQA-RAD:该数据集由Jason J. Lau、Soumya Gayen、Asma Ben Abacha和Dina Demner-Fushman领导的研究团队及其附属机构(美国国立医学图书馆和美国国立卫生研究院)创建。
- MedExpQA:该数据集由HiTZ中心(巴斯克语言技术和人工智能中心)的研究人员创建。
- MedXpertQA:该数据集由清华大学(中国北京)和上海人工智能实验室(中国上海)的研究人员开发。
此外,MedGemma还在为研究许可的去识别数据集或谷歌内部从同意参与的参与者收集的数据上进行了训练。
- 放射学数据集1:来自美国放射学门诊诊断中心网络的不同身体部位CT研究的去识别数据集。
- 眼科数据集1:糖尿病视网膜病变筛查的眼底图像去识别数据集。
- 皮肤病学数据集1:来自哥伦比亚的远程皮肤病学皮肤状况图像(临床和皮肤镜检查)的去识别数据集。
- 皮肤病学数据集2:来自澳大利亚的皮肤癌图像(临床和皮肤镜检查)的去识别数据集。
- 皮肤病学数据集3:内部数据收集工作中的非疾病皮肤图像去识别数据集。
- 病理学数据集1:与欧洲一家学术研究医院和生物样本库合作创建的组织病理学H&E全切片图像去识别数据集。包括去识别的结肠、前列腺和淋巴结。
- 病理学数据集2:美国一家商业生物样本库创建的肺部组织病理学H&E和IHC全切片图像去识别数据集。
- 病理学数据集3:美国一家合同研究组织创建的前列腺和淋巴结H&E和IHC组织病理学全切片图像去识别数据集。
- 病理学数据集4:与美国一家大型三级教学医院合作创建的组织病理学(主要是H&E全切片图像)去识别数据集。包括多种不同的组织和染色类型,主要是H&E。
数据引用
- MIMIC-CXR Johnson, A., Pollard, T., Mark, R., Berkowitz, S., & Horng, S. (2024). MIMIC-CXR Database (version 2.1.0). PhysioNet.
- Johnson, A.E.W., Pollard, T.J., Berkowitz, S.J. et al. MIMIC-CXR, a de-identified publicly available database of chest radiographs with free-text reports. Sci Data 6, 317 (2019).
- Available on Physionet Goldberger, A., Amaral, L., Glass, L., Hausdorff, J., Ivanov, P. C., Mark, R., ... & Stanley, H. E. (2000). PhysioBank, PhysioToolkit, and PhysioNet: Components of a new research resource for complex physiologic signals. Circulation [Online]. 101 (23), pp. E215–e220.
- Bo Liu, Li-Ming Zhan, etc. SLAKE: A Semantically-Labeled Knowledge-Enhanced Dataset for Medical Visual Question Answering.
- PAD-UFES-20: A skin lesion dataset composed of patient data and clinical images collected from smartphones
- The Cancer Genome Atlas Program (TCGA)
- Babak Ehteshami Bejnordi, etc.: Diagnostic Assessment of Deep Learning Algorithms for Detection of Lymph Node Metastases in Women With Breast Cancer
- MedQA: https://arxiv.org/abs/2009.13081
- Mendeley Digital Knee X-Ray: Gornale, Shivanand; Patravali, Pooja (2020), "Digital Knee X-ray Images", Mendeley Data, V1, doi: 10.17632/t9ndx37v5h.1
- AfriMed-QA: https://arxiv.org/abs/2411.15640
- VQA-RAD: Lau, J., Gayen, S., Ben Abacha, A. et al. A dataset of clinically generated visual questions and answers about radiology images. Sci Data 5, 180251 (2018). https://doi.org/10.1038/sdata.2018.251
- MedExpQA: Multilingual benchmarking of Large Language Models for Medical Question Answering
- MedXpertQA: arXiv:2501.18362v2
去识别/匿名化
谷歌及其合作伙伴使用经过严格匿名化或去识别处理的数据集,以确保保护个体研究参与者和患者隐私。
实现信息
软件
训练使用JAX进行。JAX允许研究人员利用最新一代硬件(包括TPU),以更快、更高效地训练大型模型。
使用和限制
预期用途
MedGemma是一个开放的多模态生成式AI模型,旨在作为起点,使涉及医学文本和图像的下游医疗应用能够更高效地开发。MedGemma适用于生命科学和医疗领域的开发者。开发者负责对MedGemma进行训练、调整和有意义的修改,以实现其特定的预期用途。开发者可以使用自己的专有数据对MedGemma模型进行微调,以用于其特定任务或解决方案。
优点
- 为同规模的模型提供强大的医学图像和文本理解基线。
- 与未进行医学数据预训练的类似规模模型相比,这种强大的性能使其能够更高效地适应下游基于医疗的用例。
- 根据用例、基线验证要求和期望的性能特征,这种适应可能涉及提示工程、接地、代理编排或微调。
限制
MedGemma不打算在开发者未进行适当验证、调整和/或进行有意义修改的情况下用于其特定用例。MedGemma生成的输出不打算直接用于临床诊断、患者管理决策、治疗建议或任何其他直接临床实践应用。性能基准显示了在相关基准上的基线能力,但即使对于构成大量训练数据的图像和文本领域,模型输出也可能不准确。MedGemma的所有输出都应被视为初步结果,需要通过既定的研发方法进行独立验证、临床关联和进一步调查。
MedGemma的多模态能力主要在单图像任务上进行了评估。MedGemma尚未在涉及多图像理解的用例中进行评估。
MedGemma尚未针对多轮应用进行评估或优化。
与Gemma 3相比,MedGemma的训练可能使其对所使用的特定提示更加敏感。
开发者在调整MedGemma时应考虑以下几点:
- 验证数据中的偏差:与任何研究一样,开发者应确保任何下游应用都经过验证,以使用能够适当代表特定应用预期使用环境的数据来了解性能(例如,年龄、性别、性别、病情、成像设备等)。
- 数据污染问题:在医学背景下评估像MedGemma这样的大型模型的泛化能力时,存在数据污染的风险,即模型可能在预训练期间无意中看到了相关的医学信息,从而可能高估了其对新医学概念的真实泛化能力。开发者应在非公开可用或未提供给非机构研究人员的数据集上验证MedGemma,以减轻这种风险。
🔧 技术细节
训练使用JAX进行,JAX可利用TPU等硬件加速大模型训练。
📄 许可证
MedGemma的使用受Health AI Developer Foundations使用条款的约束。
引用
技术报告即将发布。在此期间,如果您使用此模型进行发布,请引用Hugging Face模型页面:
@misc{medgemma-hf,
author = {Google},
title = {MedGemma Hugging Face}
howpublished = {\url{https://huggingface.co/collections/google/medgemma-release-680aade845f90bec6a3f60c4}},
year = {2025},
note = {Accessed: [Insert Date Accessed, e.g., 2025-05-20]}
}
访问MedGemma
要在Hugging Face上访问MedGemma,您需要审查并同意Health AI Developer Foundation的使用条款。请确保您已登录Hugging Face并点击下方按钮。请求将立即处理。 确认许可证
资源
- Google Cloud Model Garden上的模型:MedGemma
- Hugging Face上的模型:MedGemma
- GitHub仓库(支持代码、Colab笔记本、讨论和问题):MedGemma
- 快速入门笔记本:GitHub
- 微调笔记本:GitHub
- 使用MedGemma构建的患者教育演示
- 支持:请参阅联系信息
作者
注意事项
⚠️ 重要提示
MedGemma生成的输出不打算直接用于临床诊断、患者管理决策、治疗建议或任何其他直接临床实践应用。所有输出都应被视为初步结果,需要通过既定的研发方法进行独立验证、临床关联和进一步调查。
💡 使用建议
开发者在使用MedGemma时,应进行适当的验证、调整和有意义的修改,以适应特定的用例。同时,要注意验证数据中的偏差和数据污染问题。



