Услуга

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

Текстовый RAG игнорирует таблицы, графики, диаграммы и схемы — а они содержат до 60% критической информации. Мультимодальный RAG извлекает и понимает изображения, таблицы, PDF с визуальным контентом. ColPali, SigLIP 2, Cohere Embed 4, LLaVA — в вашем контуре.

  • Изображения, диаграммы, схемы, сканы
  • Таблицы с объединёнными ячейками, графики, формулы
  • PDF с визуальным контентом, инженерные чертежи
  • ColPali, SigLIP 2, Cohere Embed 4, LLaVA — on-premise

Почему текстовый RAG не справляется

До 60% критической информации в enterprise-документах — не текст

Таблицы

Фармацевтический исследователь спрашивает «какие кардиоваскулярные сигналы в фазе III?» — ответ в Таблице 4 документа 8432 с adverse events, стратифицированными по возрасту и дозировке. Текстовый RAG возвращает ничего или контекст без данных. Мультимодальный RAG: извлекает структурированные данные + natural language description таблицы.

Графики и диаграммы

10-K отчёт отвечает на вопрос «что вызвало снижение маржи в Q3?» waterfall chart на странице 34, а не текстом. OCR линейлизует 2D-макет в 1D-текст, столбцы таблицы сливаются в бессмыслицу. Мультимодальный RAG: рендерит страницу как изображение, VLM (Qwen2.5-VL, PaliGemma) извлекает данные из графика.

Инженерные схемы

Wiring diagram отвечает на вопрос «какой клапан подключён к линии сброса давления?» — ни один параграф в руководстве не содержит этой информации. Информация в пикселях, а не в тексте. Мультимодальный RAG: ColPali/ColQwen2 рендерит страницу, patch-level embeddings, MaxSim matching — без OCR, без layout detection.

Сканированные документы

Документы, отсканированные и перефотографированные многократно, теряют качество. OCR мусорит. Визуальный поиск по изображению страницы работает даже при degraded quality. Мультимодальный RAG: page-as-image подход — рендерим страницу как изображение, встраиваем через ColPali/SigLIP 2.

Excel и сложные форматы

Excel с 50+ взаимосвязанными листами, формулами, cross-references, embedded charts. Простой парсинг ломается. Мультимодальный RAG: screenshot rendered sheet → vision model для понимания layout + structured data extraction из pandas/openpyxl. Dual representation: структурированные данные + визуальное описание.

Гибридный подход

Мультимодальный RAG не заменяет текстовый — дополняет. Гибридная архитектура: BM25 для точных совпадений, dense vectors для семантики, image embeddings для визуального контента, cross-encoder reranker для финальной сортировки. RRF fusion объединяет все три пути.

Как мы строим мультимодальный RAG

  1. 01

    Аудит документов и оценка контента

    Анализируем типы документов: какой процент — чистый текст, таблицы, графики, схемы, сканы. Определяем, какие визуальные элементы критичны для бизнес-вопросов. Выбираем архитектуру: caption-and-index (быстрый старт), unified embeddings (оптимальный баланс), page-as-image (максимальный recall), или hybrid (лучшее покрытие).

  2. 02

    Парсинг и извлечение

    Настройка парсинга: Unstructured.io (open-core, typed elements), Docling (IBM, научные документы), MinerU (таблицы и фигуры), Microsoft Table Transformer (borderless tables). Для сложных layout — screenshot + vision model. Quality scoring: low-quality документы помечаются, результаты с низким confidence — на ручную проверку.

  3. 03

    Встраивание и индексация

    Выбор embedding-моделей: Cohere Embed 4 (API, 128K context, text + images), voyage-multimodal-3.5 (video frames), Nomic Embed Multimodal (self-hosted, single + multi-vector). ColPali/ColQwen2 для page-as-image с late interaction. Индексация в Qdrant с параллельными vector fields: text_embedding + image_embedding.

  4. 04

    Retrieval и fusion

    Три параллельных пути: BM25 (keyword), dense k-NN (text_embedding), dense k-NN (image_embedding). RRF (Reciprocal Rank Fusion) для объединения. Reranking: Cohere Rerank 3.5 (text) + VLM-judge (multimodal). Query routing: автоматический выбор стратегии по типу запроса.

  5. 05

    Генерация и верификация

    Генерация ответа через vision LLM (Qwen2.5-VL, PaliGemma 2, Gemma 3 vision) с page images. Prompt pattern: «Ответь, используя только информацию со страниц. Для числовых ответов цитируй конкретную таблицу.» Grounded citations: bounding boxes, не только page numbers. Chart QA eval set для проверки точности.

Архитектуры мультимодального RAG

Четыре подхода и когда каждый применять

АрхитектураКак работаетКогда применять
Caption-and-index Извлекаем изображения, caption через VLM, эмбеддируем caption как текст Быстрый старт, малые корпуса, простые документы
Unified embeddings Текст и изображения в одном векторном пространстве (Cohere Embed 4, voyage-multimodal-3.5) Оптимальный баланс cost/recall, смешанные корпуса
Page-as-image Рендерим страницы, встраиваем через ColPali/ColQwen2, multi-vector retrieval Figure-heavy корпуса, high-stakes queries, юридические/медицинские документы
Hybrid late-fusion Параллельные text + image индексы, BM25 + dense, RRF fusion, VLM reranker Лучшее покрытие, enterprise-корпуса с разным контентом

Риски мультимодального RAG

Caption drift: VLM-генерированные captions галлюцинируют и становятся misinformation в индексе. Modality leakage: image embeddings извлекают визуально похожие, но семантически нерелевантные страницы. Chart hallucination: VLMs читают оси графиков неправильно, путают цвета легенды, выдумывают числа. Mitigations: display original images alongside AI descriptions, bounding-box citations, chart QA eval set (50-200 вопросов с ground-truth числами), ask model для reasoning chain перед числовым ответом.

Технологический стек

Модели и инструменты для мультимодального RAG

ColPali / ColQwen2

Page-as-image с late interaction: рендерим PDF страницу, встраиваем через VLM, patch-level embeddings. MaxSim matching между query tokens и page patches. ColPali (PaliGemma backbone), ColQwen2 (Qwen2-VL backbone), ColQwen2.5 (Qwen2.5-VL backbone). ColSmol — лёгкий вариант для cost-sensitive деплоя.

SigLIP 2

Google DeepMind (февраль 2025): captioning-based pretraining, multilingual training, native aspect-ratio / multi-resolution. Лучше CLIP на document-style visuals: charts, tables, dense text in images. Для OCR-adjacent задач, где страница содержит и визуальную структуру, и embedded text.

Cohere Embed 4

Enterprise document retrieval: interleaved text + images, raw PDF pages без parsing pipeline, 128K context window (~200 страниц на embedding call). Matryoshka dimensions: 256, 512, 1024, 1536. API: Cohere, Amazon Bedrock, Azure AI Foundry.

voyage-multimodal-3.5

Single-vector multimodal: screenshots, slides, figures без парсера. Video frame support (январь 2026). Matryoshka dimensions. Strong gains over CLIP-large на table и screenshot retrieval. January 2026 — актуальная версия.

Nomic Embed Multimodal

Self-hosted: 3B и 7B в single-vector и multi-vector (ColNomic) флейворs. Qwen2.5-VL backbone. ColNomic 7B: 62.7 nDCG@5 на ViDoRe V2. Permissive licensing, Hugging Face. Для VPC-деплоя без API-зависимости.

Парсеры

Unstructured.io (open-core, typed elements), Docling (IBM, научные документы), MinerU (таблицы и фигуры), Marker (PDF-to-markdown, Surya OCR), Microsoft Table Transformer (borderless tables). Для Excel: pandas + openpyxl с dependency graphs.

Техническая глубина мультимодального RAG

Почему текстовый RAG не работает с визуальным контентом

Текстовый RAG молча отбрасывает значительную часть сигнала в реальных enterprise-документах. Графики, таблицы, диаграммы и layout cues часто содержат сам ответ — но никогда не попадают в индекс.

Проблема 1: OCR линейлизует 2D в 1D. Столбцы таблицы сливаются в бессмыслицу, сноски отрываются от референсов, figure captions извлекаются без самой фигуры.

Проблема 2: Table parsing ломается на merged cells. Таблицы с объединёнными ячейками производят garbled markdown, который модель пытается «додумать» — и галлюцинирует структуру.

Проблема 3: Diagram-dependent questions возвращают «недостаточно информации». Даже если страница индексирована — информация была в пикселях, а не в тексте.

По нашим данным, 40-60% критической информации в enterprise-документах существует в нетекстовых форматах. Текстовый RAG имеет upper bound, который никакая tuning chunking strategy не поднимет.

Четыре архитектуры мультимодального RAG

Caption-and-index — самый простой подход. Извлекаем изображения из документов, генерируем caption через VLM (Qwen2.5-VL, PaliGemma), эмбеддируем caption как текст. Плюсы: просто, переиспользует существующий text RAG. Минусы: lossy, caption hallucination становится index pollution.

Unified embeddings — текст и изображения в одном векторном пространстве. Cohere Embed 4: interleaved text + images, 128K context window, raw PDF pages без parsing. voyage-multimodal-3.5: screenshots, slides, figures, video frames. Nomic Embed Multimodal: self-hosted, single + multi-vector. Плюсы: single index, cross-modal queries. Минусы: API dependency или self-hosted GPU cost.

Page-as-image с late interaction — рендерим PDF страницу при high DPI, встраиваем через ColPali/ColQwen2, multi-vector retrieval. ColPali: PaliGemma backbone, patch-level embeddings, MaxSim matching. ColQwen2: Qwen2-VL backbone, лучше на multilingual. ColQwen2.5: Qwen2.5-VL backbone, лидер на ViDoRe V2. Плюсы: highest recall на figure-heavy docs, no parsing pipeline. Минусы: 100-1000x больше векторов на страницу, custom scoring.

Hybrid late-fusion — parallel text + image индексы, BM25 + dense, RRF fusion, VLM reranker. Плюсы: most flexible, best recall на mixed corpora. Минусы: most complex to operate.

Большинство production команд выбирают architecture #2 или #4. #1 — для quick win на малых корпусах. #3 — когда ответы действительно живут в пикселях и recall — binding constraint.

Retrieval и fusion

Три параллельных пути:

  • BM25 over text_chunk — для keyword и exact-string queries
  • Dense k-NN over text_embedding — для semantic text matching
  • Dense k-NN over image_embedding — для visual queries

RRF (Reciprocal Rank Fusion) объединяет три ranked list. Per-query weighting помогает, когда запрос явно визуальный («какой график показывает...») или явно текстовый («определи X»). Parameter-free RRF default — strong baseline.

Reranking: Cohere Rerank 3.5 — стандарт text-side (long context, strong на tables). Для true multimodal reranking — VLM-judge: prompt с query + candidate page image, relevance score 0-10 с justification.

Генерация с grounding

Генерация через vision LLM (Qwen2.5-VL, PaliGemma 2, Gemma 3 vision) с page images inline. Prompt pattern:

> «Вот релевантные страницы. Ответь на вопрос, используя только информацию с этих страниц. Для числовых ответов цитируй конкретную таблицу или график. Если ответа нет — скажи так.»

Grounded citations — bounding boxes, не только page numbers. Храним element bounding boxes при индексации, показываем через UI для verification.

Chart hallucination mitigation:

1. Ask model для reasoning chain («I see the bar labeled Q3 reaches approximately 4.2 on the y-axis...»)

2. Cross-check VLM-extracted numbers against structured data (extracted при парсинге)

3. Hedged answers — soft signal для human review

Chart QA eval set (50-200 вопросов с ground-truth числами) — единственный способ понять, насколько ваш корпус affected.

Cost и storage

Cost per query (на corpus из 10M pages):

  • Caption-and-index: low single-digit cents
  • Unified embeddings: small multiple
  • ColPali + VLM generation: meaningfully higher (self-hosted GPU + multi-image generation)

Storage:

  • Single-vector: 10M pages → tens of GB
  • Multi-vector (ColPali): 10M pages → single-digit TB
  • Matryoshka truncation (1024→256 dim): < 2% recall cost, 4x storage savings

Break-even: consumer search → cheaper architecture. Legal/medical/financial → recall lift от late interaction worth the premium.

Когда мультимодальный RAG не нужен

Если критическая информация существует в чистом тексте — текстовый RAG справится. Если документный набор мал, и ручной поиск практичен — мультимодальность избыточна. Если бюджет ограничен, и текстовый RAG решает 80% задач — начните с него.

Мультимодальный RAG оправдан, когда:

  • Критическая информация — в таблицах, графиках, схемах
  • Документов много, ручной поиск не масштабируется
  • Пользователи тратят часы на поиск информации
  • Организация может handle operational complexity и cost

Запросить пилот?

Согласуем сроки, метрики и оценку под вашу задачу.