当前位置: 首页 > web >正文

谷歌开源医疗领域AI语言模型速递:medgemma-27b-text-it

一、模型概述

MedGemma 是由谷歌开发的一个医疗领域 AI 模型系列,基于 Gemma 3 架构,旨在加速医疗保健相关 AI 应用的开发。该模型系列包含两个主要变体:4B 多模态版本(支持文本和图像理解)以及 27B 纯文本版本(专为推理计算优化且仅提供指令微调模型)。MedGemma 27B 仅在医学文本上进行训练,适合需要处理医疗文本任务的场景。

二、模型使用方法

文档提供了两种主要的模型调用方式:通过 pipeline API 快速运行模型以及直接加载模型进行更灵活的操作。

(1)通过 pipeline API 调用

需要先安装 transformers 库(版本 4.50.0 及以上),然后使用以下代码:

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"])

(2)直接加载模型

除了 pipeline API,还可以直接加载模型和分词器进行更复杂的操作,代码如下:

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 的纯解码器 Transformer 架构,具有以下特点:

  • 模态能力:4B 版本支持文本和视觉模态,27B 版本仅支持文本

  • 注意力机制:采用分组查询注意力(Grouped-Query Attention,GQA)

  • 上下文长度:支持至少 128K tokens 的长上下文

  • 训练框架:使用 JAX 进行训练,可充分利用 TPU 等硬件加速

四、性能与验证

MedGemma 在多个医学相关的基准测试中表现出色,以下为部分关键性能指标:

指标MedGemma 27BGemma 27BMedGemma 4BGemma 4B
MedQA (4-shot)89.874.964.450.7
MedMCQA74.262.655.745.4
PubMedQA76.873.473.468.4
MMLU Med (text-only)87.083.370.067.2
MedXpertQA (text-only)26.715.714.211.6
AfriMed-QA84.072.052.048.0

五、伦理与安全评估

MedGemma 经过了严格的伦理和安全评估,包括儿童安全、内容安全、代表性伤害以及一般医疗风险等方面的测试。测试结果显示,该模型在各个安全类别中均表现出安全水平,且在没有安全过滤的情况下生成的内容违反政策的情况极少。

六、数据集介绍

MedGemma 的训练数据集包含多种公开和专有数据集,涵盖了医学文本和图像等多个领域。主要公开数据集包括:

  • MIMIC-CXR(胸部 X 光片及报告)

  • Slake-VQA(多模态医学图像及问题)

  • PAD-UFES-20(皮肤病变图像及数据)

  • SCIN(皮肤病图像)

  • TCGA(癌症基因组数据)

  • CAMELYON(淋巴结组织病理学图像)

  • PMC-OA(带有图像的生物医学文献)

此外,还使用了多个经过脱敏处理的专有数据集,包括不同部位的 CT 研究、糖尿病视网膜病变筛查的眼底图像、来自不同地区的皮肤状况图像以及多种组织病理学全切片图像等。

七、使用建议与限制

MedGemma 适用于生命科学和医疗保健领域的开发者,作为开发下游医疗应用的起点。然而,该模型存在以下限制:

  • 输出内容不应直接用于临床诊断、患者管理决策或治疗建议等临床实践应用

  • 多模态能力主要在单图像任务上进行了评估,未测试涉及多图像理解的用例

  • 未针对多轮对话应用进行评估或优化

  • 对提示词的选择可能比 Gemma 3 更敏感

  • 开发者需确保下游应用在具有代表性的数据上进行验证,并注意数据污染问题

MedGemma 核心技术汇总表

在这里插入图片描述

http://www.xdnf.cn/news/8145.html

相关文章:

  • 场景化应用实战系列四:基于 YOLO V5 的漫画人物检测
  • 【信息系统项目管理师】第16章:项目采购管理 - 23个经典题目及详解
  • 乘最多水的容器 | 算法 | 给定一个整数数组。有n条垂线。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
  • 解决前端路由切换导致Keycloak触发页面刷新问题
  • python调用底层c++算子示例
  • 计算机三级数据库免费题库
  • docker 启动一个python环境的项目dockerfile版本
  • vite搭建vue3项目及相关配置
  • LLM推理加速技术如何迁移到传统 Transformer 模型(ASR)
  • 深入详解 DICOM 二维图像的空间定位原理
  • idea添加jar包
  • 《深度掌控Linux:openEuler、CentOS、Debian、Ubuntu的全方位运维指南》
  • STM32:0.96寸OLED屏驱动全解析——SSD1306 I2C通信与显存配置指南
  • 无人机影像水面拼接、海面拼接
  • 146.LRU缓存-图解LRU
  • Axure项目实战:智慧运输平台后台管理端-运单管理
  • 华为Cangjie编程技术深度解析(续篇1)
  • 手机入网时长查询接口:精准风控与用户运营的智能利器
  • 【软考向】Chapter 3 数据结构
  • C++线程池----基于生产者消费者模式队列实现
  • 线性代数:AI大模型的数学基石
  • 遨游三防科普:三防平板是什么?有什么特殊功能?
  • ObservableCollection序列化,和监听链表内元素变化
  • nginx动态控制前端版本
  • FPGA通信之VGA
  • 塔能科技:工厂能耗精准节能全方位解决方案
  • 高效缓存设计的哲学
  • 基于科大讯飞语音识别组件(Vue3)
  • PyInstaller 如何在mac电脑上生成在window上可执行的exe文件
  • AI 招聘系统科普:如何辨别真智能与伪自动化