库名称:transformers
许可证:gemma
流水线标签:图像-文本到文本
额外授权标题:在Hugging Face上访问PaliGemma
额外授权提示:要在Hugging Face上访问PaliGemma,您需要审阅并同意Google的使用许可。请确保您已登录Hugging Face账户并点击下方按钮。请求将立即处理。
额外授权按钮内容:确认许可
PaliGemma 2模型卡
模型页面: PaliGemma
Transformers PaliGemma 2 28B权重,使用224×224输入图像在多种学术任务上进行了微调。
PaliGemma 2的mix检查点针对多样化任务集进行了微调,可直接使用;而pt检查点为预训练版本,适合进一步微调。这些任务包括短/长描述生成、光学字符识别、问答、目标检测与分割等。
该模型仅以bfloat16
格式提供,仅供研究用途。
资源与技术文档:
使用条款: 条款
作者: Google
模型信息
模型概述
PaliGemma 2是PaliGemma视觉语言模型(VLM)的升级版,融合了Gemma 2模型的能力。该系列模型灵感源自PaLI-3,基于SigLIP视觉模型和Gemma 2语言模型等开放组件。它能同时接收图像和文本输入并生成文本输出,支持多语言,专为在图像/短视频描述、视觉问答、文本阅读、目标检测与分割等广泛视觉语言任务上实现领先性能而设计。
模型架构
PaliGemma 2由Transformer解码器和Vision Transformer图像编码器组成。文本解码器初始化自2B/9B/27B参数规模的Gemma 2,图像编码器初始化自SigLIP-So400m/14。与原始PaliGemma类似,其训练遵循PaLI-3方案。
输入输出
- 输入: 图像及文本字符串(如图像描述提示或问题)
- 输出: 生成的响应文本(如图像描述、问题答案、目标边界框坐标列表或分割代码)
模型数据
预训练数据集
PaliGemma 2使用以下混合数据集进行预训练:
Gemma 2的预训练数据集信息详见Gemma 2模型卡。
数据责任过滤
对WebLI应用以下过滤以确保训练数据安全性:
Transformers使用示例
可通过以下提示模板执行不同任务:
"cap {lang}"
: 原始短描述(来自WebLI-alt)
"caption {lang}"
: 类似COCO的优质短描述
"describe {lang}"
: 更长的详细描述
"ocr"
: 光学字符识别
"answer {lang} {question}"
: 图像内容问答
"question {lang} {answer}"
: 根据答案生成问题
"detect {object} ; {object}"
: 检测图像中目标并返回边界框
"segment {object}"
: 生成目标分割区域
from transformers import (
PaliGemmaProcessor,
PaliGemmaForConditionalGeneration,
)
from transformers.image_utils import load_image
import torch
model_id = "google/paligemma2-28b-mix-224"
url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/tasks/car.jpg"
image = load_image(url)
model = PaliGemmaForConditionalGeneration.from_pretrained(model_id, torch_dtype=torch.bfloat16, device_map="auto").eval()
processor = PaliGemmaProcessor.from_pretrained(model_id)
prompt = "describe en"
model_inputs = processor(text=prompt, images=image, return_tensors="pt").to(torch.bfloat16).to(model.device)
input_len = model_inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**model_inputs, max_new_tokens=100, do_sample=False)
generation = generation[0][input_len:]
decoded = processor.decode(generation, skip_special_tokens=True)
print(decoded)
微调示例参见此笔记本。
实现信息
硬件
使用最新一代TPU硬件(TPUv5e)训练。
软件
训练使用JAX、Flax、TFDS和big_vision
完成。微调与推理代码发布于big_vision
仓库。
评估信息
基准测试结果
(此处保留原始表格格式,内容完整翻译但为简洁省略具体数值)
伦理与安全
评估方法
评估结果
- 人类评估结果符合内部政策阈值
- 使用Perspective API(阈值0.8)测量FairFace图像生成描述的毒性,报告各人口统计属性的最大值/中位数
(此处保留原始表格格式,内容完整翻译但为简洁省略具体数值)
使用与限制
预期用途
- 微调特定视觉语言任务(如图像描述、视觉问答、目标检测等)
- 视觉语言研究基础
伦理考量与风险
- 偏见与公平性:训练数据可能反映社会文化偏见,已进行数据过滤与评估
- 错误信息与滥用:需遵循负责任生成式AI工具包指南
- 透明度与问责:本模型卡详述架构、能力与限制
局限性
- 继承Gemma 2模型的限制:对开放式复杂任务、隐含语义理解存在挑战
- 主要设计为通用预训练模型,零样本性能可能弱于专用模型
- 非多轮对话模型,仅支持单轮图像文本输入
引用
@article{
title={PaliGemma 2: A Family of Versatile VLMs for Transfer},
author={Andreas Steiner and André Susano Pinto and Michael Tschannen and Daniel Keysers and Xiao Wang and Yonatan Bitton and Alexey Gritsenko and Matthias Minderer and Anthony Sherbondy and Shangbang Long and Siyang Qin and Reeve Ingle and Emanuele Bugliarello and Sahar Kazemzadeh and Thomas Mesnard and Ibrahim Alabdulmohsin and Lucas Beyer and Xiaohua Zhai},
year={2024},
journal={arXiv preprint arXiv:2412.03555}
}
论文链接:arXiv