Мультимодальные модели

Материал из llmdocs — справочник разработчика
Мультимодальные модели
Модальноститекст, изображения, аудио, видео, документы
ТипыVLM (понимание), генеративные (диффузия), any-to-any
Ключевые работыCLIP (2021), Flamingo (2022), LLaVA (2023)
КоммерческиеGPT-4o, Claude, Gemini
ОткрытыеQwen2.5-VL, Llama 3.2 Vision, Gemma 3, Pixtral, InternVL
СвязанноеЭмбеддинг, Трансформер (архитектура)

Мультимодальные модели — модели машинного обучения, которые работают с несколькими типами данных (модальностями) одновременно: текстом, изображениями, звуком, видео. Современная большая языковая модель может прочитать скриншот с ошибкой, разобрать отсканированный договор, описать фотографию, ответить на вопрос по графику или распознать речь. Мультимодальность расширяет применение LLM от текстовых задач к работе с документами, интерфейсами и реальным миром.

Виды моделей

Вид Вход → выход Примеры
Контрастные энкодеры текст и изображения → общие эмбеддинги CLIP, SigLIP
Визуально-языковые модели (VLM) изображение + текст → текст Claude, GPT-4o, Gemini, Qwen2.5-VL, LLaVA
Генерация изображений текст → изображение Stable Diffusion, FLUX, Midjourney
Речь аудио → текст и обратно Whisper (распознавание), TTS-модели
Any-to-any любые модальности → любые GPT-4o с голосом, Gemini Live

Как устроены VLM

Типичная визуально-языковая модель собирается из трёх частей:[5]

  1. Визуальный энкодер — обычно Vision Transformer (ViT): изображение режется на квадраты 14×14 или 16×16 пикселей, каждый превращается в вектор — «визуальный токен».[3]
  2. Проектор — небольшая сеть, переводящая визуальные векторы в пространство эмбеддингов языковой модели.
  3. Языковая модель — получает визуальные токены вперемешку с текстовыми и генерирует ответ как обычно.

Обучение идёт в два этапа: сначала проектор учат сопоставлять изображения с подписями, затем всю систему дообучают на инструкциях вида «картинка + вопрос → ответ». Именно так в 2023 году была построена открытая модель LLaVA.[2] Крупные модели вроде Gemini изначально обучаются на смеси модальностей.

Основа многих энкодеров — CLIP (OpenAI, 2021): две сети, текстовая и визуальная, обученные на 400 миллионах пар «изображение — подпись» так, чтобы эмбеддинги подходящих пар были близки.[1] CLIP сразу умеет классифицировать изображения по текстовому описанию без дообучения и используется для поиска картинок по тексту.

Изображения и токены

Изображение в контексте модели занимает токены — их число зависит от разрешения. У Claude, например, картинка около 1000×1000 пикселей стоит порядка 1300 токенов, а слишком большие изображения уменьшаются автоматически.[4] Поэтому:

  • мелкий текст на сильно уменьшенном скриншоте модель может не прочитать — лучше обрезать нужную область;
  • десятки изображений быстро заполняют контекстное окно;
  • PDF-документы многие API обрабатывают как изображения страниц плюс извлечённый текст.

Применение

  • Документы: извлечение данных из счетов, паспортов, таблиц и сканов — часто в паре со структурированным выводом; во многих задачах VLM заменяют классический OCR.
  • Интерфейсы: агенты «computer use» видят экран как скриншоты и управляют мышью и клавиатурой.
  • Код: перевод макета или скриншота в HTML и CSS, разбор диаграмм.
  • Поиск: мультимодальные эмбеддинги для поиска по фотографиям и смешанным базам знаний, мультимодальный RAG.
  • Доступность: описание изображений для незрячих пользователей.
  • Речь: голосовые ассистенты, расшифровка встреч (Whisper — открытая модель распознавания речи на 99 языках).[6]

Пример запроса

import base64, anthropic

client = anthropic.Anthropic()
img = base64.standard_b64encode(open("chart.png", "rb").read()).decode()

msg = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": [
        {"type": "image", "source": {"type": "base64",
                                     "media_type": "image/png", "data": img}},
        {"type": "text", "text": "Какой месяц на графике с максимальной выручкой?"},
    ]}],
)
print(msg.content[0].text)

Открытые VLM запускаются локально через Ollama, llama.cpp или vLLM.

Ограничения

  • Галлюцинации на изображениях: модель уверенно «видит» объекты, которых нет, или неверно читает цифры (см. Галлюцинации LLM).
  • Слабости в точном счёте объектов, пространственных отношениях, чтении мелкого и рукописного текста.
  • Prompt injection через изображения: текст на картинке может содержать инструкции, которые модель выполнит (см. Безопасность LLM: prompt injection).
  • Конфиденциальность: изображения документов и экранов часто содержат персональные данные.

Важные задачи проверяют на собственном наборе примеров — evals для мультимодальных моделей так же необходимы, как для текстовых.

См. также

Источники

  1. Radford et al. — Learning Transferable Visual Models From Natural Language Supervision (CLIP, 2021)
  2. Liu et al. — Visual Instruction Tuning (LLaVA, 2023)
  3. Dosovitskiy et al. — An Image is Worth 16x16 Words (ViT, 2020)
  4. Anthropic Docs — Vision
  5. Hugging Face — Vision Language Models Explained
  6. Radford et al. — Robust Speech Recognition via Large-Scale Weak Supervision (Whisper, 2022)