Image

Внедрение визуально-языкового интеллекта в RAG: как обрабатывать таблицы и изображения с помощью ColPali

Раскрытие ценности нетекстового контента в вашей базе знаний

Делиться

87019fdd72caee4bb830acd3a1c406da

Если вы когда-либо пытались создать приложение RAG (Retrieval-Augmented Generation), вы, вероятно, знакомы с трудностями, связанными с таблицами и изображениями. В этой статье рассматривается, как работать с этими форматами с помощью моделей языка Vision, в частности, модели ColPali.

Но сначала давайте разберемся, что же такое RAG и почему таблицы и изображения так усложняют его понимание?

RAG и парсинг

Представьте, что вы столкнулись с таким вопросом:

Какова политика нашей компании в отношении возврата средств?

Базовая модель LLM (большая языковая модель) вряд ли сможет ответить на этот вопрос, поскольку такая информация специфична для компании и обычно не включается в данные для обучения модели.

Именно поэтому распространённый подход заключается в подключении LLM к базе знаний, например, к папке SharePoint, содержащей различные внутренние документы. Это позволяет модели извлекать и включать релевантный контекст, давая ей возможность отвечать на вопросы, требующие специальных знаний. Этот метод известен как генерация дополненного поиска (RAG) и часто предполагает работу с такими документами, как PDF-файлы.

Однако извлечение нужной информации из обширной и разнообразной базы знаний требует обширной предварительной обработки документов. Обычно это следующие этапы:

  1. Синтаксический анализ : разделение документов на тексты и изображения, часто с использованием инструментов оптического распознавания символов (OCR), таких как Tesseract. Таблицы чаще всего преобразуются в текст.
  2. Сохранение структуры : сохранение структуры документа, включая заголовки и абзацы, путем преобразования извлеченного текста в формат, сохраняющий контекст, например, Markdown.
  3. Разделение на фрагменты : разделение или объединение текстовых фрагментов таким образом, чтобы контексты можно было поместить в контекстное окно, не создавая при этом впечатление, что фрагменты не связаны между собой.
  4. Расширение : предоставление дополнительных метаданных, например, извлечение ключевых слов или предоставление краткого содержания фрагментов для облегчения поиска. При необходимости можно также добавлять к изображениям описательные тексты с помощью мультимодального LLM для обеспечения возможности поиска по изображениям.
  5. Встраивание : встраивание текстов (и, возможно, изображений с помощью многомодального встраивания) и сохранение их в векторной базе данных.

Как вы можете себе представить, этот процесс чрезвычайно сложен, требует множества экспериментов и весьма ненадёжен. Хуже того, даже если бы мы постарались сделать всё возможное, этот анализ может в итоге не сработать.

Почему парсинг часто неэффективен

Таблицы и изображения часто присутствуют в PDF-файлах. На изображении ниже показано, как они обычно обрабатываются для использования LLM:

22ef0b49f417cc6c1614d281966d306a
  • Тексты разбиты на фрагменты
  • Таблицы преобразуются в тексты, все содержимое копируется без сохранения границ таблиц.
  • Изображения передаются в мультимодальную модель LLM для генерации текстового резюме, или, в качестве альтернативы, исходное изображение передается в мультимодальную модель встраивания без необходимости генерации текстового резюме.

Однако такому традиционному подходу присущи две проблемы.

#1. Сложные таблицы нельзя интерпретировать как тексты.
Если взять эту таблицу в качестве примера, то мы, люди, интерпретируем, что изменение температуры от >2°C до 2,5°C имеет следующие последствия для здоровья : повышение температуры на 2,3°C к 2080 году подвергнет риску заболевания малярией до 270 миллионов человек.

beed0d2ba444f1040bdb5f996844d672

Однако если превратить эту таблицу в текст, то она будет выглядеть следующим образом: Изменение температуры В пределах целевого показателя ЕС <(2˚C) >2˚C до 2,5˚C >3C Здоровье Во всем мире предполагается, что Повышение на 2,3oC к 2080 году поставит под угрозу Повышение на 3,3oC к 2080 году поставит под угрозу повышение средней температуры до 270 миллионов человек, что поставит под угрозу до 330…

В результате получается беспорядочный фрагмент текста без чёткого смысла. Даже человек, читающий этот фрагмент, не может извлечь из него никакой осмысленной информации. Когда такой текст попадает в Большую языковую модель (LLM), он также не может дать точной интерпретации.

№ 2. Диссоциация между текстами и изображениями
Описание изображения часто присутствует в текстах, и они неотделимы друг от друга. На примере ниже мы видим, что диаграмма представляет собой «Смоделированные издержки, связанные с изменением климата, с различными вариантами чистой ставки временного предпочтения и схемой снижающейся ставки дисконтирования (без учета веса акций)».

b06ab8d095175c18b757c030c607dd2e

Однако при разборе описание изображения (разобранный текст) будет отделено от самого изображения (разобранная диаграмма). Поэтому можно ожидать, что в ходе RAG изображение не будет извлечено в качестве входных данных, когда мы зададим вопрос типа «Какова цена изменения климата?»

b60d7a1f9102926e8dfd2ee2078f3312

Таким образом, даже если мы пытаемся разработать решения, сохраняющие как можно больше информации во время анализа, они часто терпят неудачу при столкновении с реальными сценариями.

Учитывая, насколько важен парсинг в приложениях RAG, означает ли это, что агенты RAG обречены на сбои при работе со сложными документами? Абсолютно нет. ColPali предлагает более продуманный и эффективный подход к работе с ними.

Что такое ColPali?

Основная предпосылка ColPali проста: человек читает PDF-файлы как страницы, а не как «фрагменты», поэтому имеет смысл обращаться с PDF-файлами соответствующим образом: вместо того, чтобы проходить через трудоемкий процесс анализа, мы просто превращаем страницы PDF-файлов в изображения и используем их в качестве контекста для предоставления ответа LLM.

815826fcb2713a8b2550d0eb8f13fda5

Идея встраивания изображений с помощью мультимодальных моделей не нова — это распространённый метод. Так что же делает ColPali таким особенным? Ключ к успеху кроется в вдохновении от ColBERT — модели, которая встраивает входные данные в мультивекторы, обеспечивая более точный и эффективный поиск.

Прежде чем углубляться в возможности ColPali, позвольте мне вкратце объяснить, что такое ColBERT.

ColBERT: Детальное, контекстно-зависимое встраивание текстов

ColBERT — это метод встраивания и переранжирования текста, который использует многовекторность для повышения точности поиска текстов.

Давайте рассмотрим такой случай: у нас есть вопрос: является ли Пол веганом? Нам нужно определить, какой фрагмент текста содержит соответствующую информацию.

ae3611f2173b197dc8172dc26cf51cd6

В идеале мы должны определить текстовый фрагмент A как наиболее релевантный. Но если мы используем модель встраивания с одним вектором (text-ada-002), она вернёт текстовый фрагмент B.

Причина кроется в принципе работы одновекторных би-энкодеров, таких как text-ada-002. Они пытаются сжать всё предложение в один вектор, не кодируя отдельные слова с учётом контекста. В отличие от этого, ColBERT встраивает каждое слово с учётом контекста , что приводит к более богатому многовекторному представлению, которое фиксирует больше нюансов информации.

e93424261d471326145fe4a68e5ec44a

ColPali: аналог ColBERT для обработки изображений, похожих на документы

ColPali следует схожей философии, но применяет её к изображениям, похожим на документы. Подобно тому, как ColBERT разбивает текст и встраивает каждое слово отдельно, ColPali делит изображение на фрагменты и генерирует встраивания для каждого фрагмента. Такой подход сохраняет больше контекстных деталей изображения, обеспечивая более точную и содержательную интерпретацию .

72919d74ee8c35324ee199b3a96f4201

Помимо более высокой точности поиска, преимущества ColPali включают в себя:

  1. Объясняемость : ColPali позволяет сравнивать запрос и отдельные фрагменты изображений в документе на уровне слов. Это позволяет нам чётко понимать и обосновывать, почему тот или иной документ считается более релевантным.
  2. Сокращение трудозатрат на разработку и повышение надежности : устраняя необходимость в сложных конвейерах предварительной обработки, таких как фрагментация, OCR и анализ макета, ColPali значительно сокращает время разработки и сводит к минимуму потенциальные точки сбоя.
  3. Повышение производительности : процессы внедрения и извлечения выполняются быстрее, что повышает общую скорость реагирования системы.

Теперь, когда вы знаете, что такое ColPali, давайте углубимся в код и посмотрим, сможет ли ColPali решить проблемы, о которых мы упоминали ранее!

Иллюстрация

Мой код можно найти на моём Github. Несколько слов о нём:

  • Пример : для запуска кода требуется машина с графическим процессором A100.
  • Модель встраивания : ColPali имеет несколько вариантов. Я использую vidore/colqwen2-v0.1 для демонстрации. Вы можете ознакомиться с таблицей лидеров здесь и переключиться на другие модели.
  • Агент:
    – LLM
    : Я использую OpenRouter для работы с LLM, а агент работает на базе GPT-4o. Вы можете заменить его любым многомодальным LLM, который может принимать изображения в качестве входных данных.
    Оркестровка : для разработки агента используется LangGraph
  • Библиотека для конвертации PDF в изображения : pdf2image, оболочка для Poppler. Убедитесь, что у вас установлен Poppler.
  • Пример данных : «Влияние и стоимость изменения климата», написанная Полом Уоткиссом и др., которая находится в открытом доступе здесь.

Результаты

Код довольно прост, поэтому я перейду к заключению: насколько хорошо ColPali может справиться с проблемами, которые мы видели в разделе «Почему синтаксический анализ часто дает сбои?»?

#1. Сложные таблицы нельзя интерпретировать как тексты.

Вопрос : Каковы будут последствия для здоровья, если температура поднимется на 3 градуса выше доиндустриального уровня?

Ответ : Если температура поднимется выше доиндустриального уровня на 3 градуса Цельсия, последствия для здоровья будут значительными. В частности, по оценкам, к 2080-м годам до 330 миллионов человек будут подвержены риску заболевания малярией. Это значительно больше, чем в 1920-х годах, когда число людей, подверженных риску, составляло от 50 до 100 миллионов.

Это правильно указано в таблице в PDF-файле!

acf391312e542c726dbbc134fc81b795

№ 2. Диссоциация между текстами и изображениями

Вопрос : Какова прогнозируемая стоимость изменения климата согласно модели снижения Greenbook?

Ответ : Согласно модели снижения выбросов Greenbook, смоделированная стоимость изменения климата составляет 7,2 евро/тCO2.

Правильный ответ должен быть 7,4 евро/тCO2, но мы видим, что он близок к истине!

cb27b1e3d9022684e39618c894e84b58

Заключение

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

ColPali привносит в RAG интеллектуальные возможности языка визуализации, делая его гораздо более эффективным в обработке сложной, многомодальной реальности корпоративных документов.

*Если не указано иное, все изображения принадлежат автору.

Источник: towardsdatascience.com

✅ Найденные теги: Внедрение, новости

ОСТАВЬТЕ СВОЙ КОММЕНТАРИЙ

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Звёздное небо с галактиками и туманностями, космос, Вселенная, астрофотография.
Женщина с длинными тёмными волосами в синем свете, нейтральный фон.
Спутник исследует черную дыру в космосе, испускающий световой луч.
Пикачу использует электрический разряд на фоне неба.
Черный углеродное волокно с текстурой плетения, отражающий свет.
Круглый экран с изображением замка и горы, рядом электронная плата.
Код на экране компьютера, программирование, интерфейс разработчика.
Статистика использования видеокарт NVIDIA RTX, показывающая изменения за октябрь-февраль.
Макросъемка клетки под микроскопом, текстура и форма на голубом фоне.
Image Not Found
Звёздное небо с галактиками и туманностями, космос, Вселенная, астрофотография.

Система оповещения обсерватории Рубина отправила 800 000 сигналов в первую ночь наблюдений.

Астрономы будут получать оповещения о небесных явлениях в течение нескольких минут после их обнаружения. Теренс О'Брайен, редактор раздела «Выходные». Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной…

Мар 2, 2026
Женщина с длинными тёмными волосами в синем свете, нейтральный фон.

Расследование в отношении 61-фунтовой машины, которая «пожирает» пластик и выплевывает кирпичи.

Обзор компактного пресса для мягкого пластика Clear Drop — и что будет дальше. Шон Холлистер, старший редактор Публикации этого автора будут добавляться в вашу ежедневную рассылку по электронной почте и в ленту новостей на главной странице вашего…

Мар 2, 2026
Черный углеродное волокно с текстурой плетения, отражающий свет.

Материал будущего: как работает «бессмертный» композит

Учёные из Университета штата Северная Каролина представили композит нового поколения, способный самостоятельно восстанавливаться после серьёзных повреждений.  Речь идёт о модифицированном армированном волокном полимере (FRP), который не просто сохраняет прочность при малом весе, но и способен «залечивать» внутренние…

Мар 2, 2026
Круглый экран с изображением замка и горы, рядом электронная плата.

Круглый дисплей Waveshare для креативных проектов

Круглый 7-дюймовый сенсорный дисплей от Waveshare создан для разработчиков и дизайнеров, которым нужен нестандартный экран.  Это IPS-панель с разрешением 1 080×1 080 пикселей, поддержкой 10-точечного ёмкостного сенсора, оптической склейкой и защитным закалённым стеклом, выполненная в круглом форм-факторе.…

Мар 2, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых