PaliGemma 2 : Новое семейство VLMs от Google. PaliGemma 2 - обновление open-sorce VLM PaliGemma, основанное на семействе LLM
️ PaliGemma 2 : Новое семейство VLMs от Google.
PaliGemma 2 - обновление open-sorce VLM PaliGemma, основанное на семействе LLM Gemma 2. Семейство сочетает в себе кодировщик изображений SigLIP-So400m с спектром моделей Gemma 2, от 2B до 27B параметров. Модели PaliGemma 2 обучались в 3 этапа на трех разрешениях (224px², 448px² и 896px²).
PaliGemma 2 демо нстрирует впечатляющие результаты в распознавании музыкальных нот, молекулярных структур и медицинских изображений. Модели справляются с распознаванием табличной структуры и созданием отчетов по рентгенограммам.
В задачах генерации длинных, детализированных аннотаций к изображениям PaliGemma 2 превосходит многие популярные VLM, несмотря на то, что она обучалась на значительно меньших наборах данных.
Для развертывания на устройствах без GPU могут использоваться квартованные версии PaliGemma 2 . Тесты показали, что переход от 32-битной разрядности (f32) к 16-битной (bf16) или квантованным весам не приводит к заметному снижению качества.
В релиз вошли предварительно обученные модели 3B, 10B и 28B с разрешениями 224px, 448px, 896px, модели, настроенные на наборе данных DOCCI для создания аннотаций к изображениям и их версии для JAX/FLAX.
Процесс файнтюна PaliGemma 2 такой же, как и у предыдущей версии. Разработчики предоставляют скрипт и ipynb-блокнот для тонкой настройки модели или создания LoRA/QLoRA.
Создание LoRA модели PaliGemma 2 на половине валидационного сплита VQAv2 заняло полчаса на 3-х A100 с 80 ГБ VRAM. Результат можно найти здесь , а это ее демо .
Пример инференса модели paligemma2-10b-ft-docci-448 на Transformers:
from transformers import AutoProcessor, PaliGemmaForConditionalGeneration
from PIL import Image
import requests
model_id = “google/paligemma2-10b-ft-docci-448“
model = (model_id)
model = (“cuda“)
processor = (model_id)
prompt = “caption en“
image_file = “% link_to_target_file%“
raw_image = ((image_file, stream=True).raw).convert(“RGB“)
inputs = processor(prompt, raw_image, return_tensors=“pt“).to(“cuda“)
output = (**inputs, max_new_tokens=20)
print((output[0], skip_special_tokens=True)[len(prompt):])
Лицензирование: Gemma License .
Статья
Коллекция на HF
Arxiv
1 view
28
1
6 days ago 00:00:09 1
️ PaliGemma 2 : Новое семейство VLMs от Google. PaliGemma 2 - обновление open-sorce VLM PaliGemma, основанное на семействе LLM