Большинство людей знакомятся с мультимодальным ИИ через демо: вы загружаете фотографию, вводите вопрос и получаете ответ, который звучит так, будто кто-то действительно посмотрел на картинку. Демо убеждает. Проблемы начинаются в тот момент, когда вы строите на его основе что-то реальное — и обнаруживаете, что модель никогда ничего не «видела» так, как вы предполагали.
Эта статья о разрыве между демо и работающей системой. Мы возьмём одну конкретную задачу, пройдём её шаг за шагом с реальными числами, а затем честно посмотрим, где весь подход разваливается. Попутно мы отделим мифы — «модель надёжно читает текст на изображениях», «CLIP понимает сцены», «Whisper транскрибирует всё» — от того, что эти системы на самом деле делают под капотом.
Если вы работаете с документами, медиаархивами или пользовательским контентом, это уже базовая грамотность, а не диковинка.
Что на самом деле делает мультимодальная модель (и миф, который это скрывает)
Популярный миф гласит, что мультимодальная модель — это универсальный воспринимающий: она смотрит на изображение, слышит аудио, смотрит видео и рассуждает обо всём этом как человек. Механизм гораздо уже.
Модель, способная работать с изображениями, например GPT-4V, не получает картинку. Она получает сетку патчей, каждый из которых превращается в вектор с помощью визуального энкодера, и эти векторы подаются в тот же поток токенов, что и ваш текст. Модель рассуждает над эмбеддингами фрагментов, а не над пикселями. Этот единственный факт объясняет почти все странные сбои, с которыми вы столкнётесь.
CLIP работает иначе, и его часто используют неправильно. Это контрастивная модель: она обучена размещать изображение и соответствующий ему заголовок близко друг к другу в одном общем векторном пространстве. Это делает её отличной для ранжирования — «какое из этих 500 изображений лучше всего соответствует этому описанию?» — и плохой для точного подсчёта, пространственных отношений и всего, чему её не учили контрастировать. Люди спрашивают у CLIP «сколько людей на этой фотографии» и удивляются, когда она ошибается. Она никогда не была создана, чтобы отвечать на это.
Whisper — это модель речи типа энкодер-декодер. Она действительно сильна на чистой речи на распространённых языках и действительно хрупка при перекрывающихся голосах, сильных акцентах, профессиональном жаргоне и долгих паузах. Она также галлюцинирует — на почти беззвучных или шумных сегментах она может выдать беглый текст, который никогда не произносился, потому что её декодер обучен всегда выдавать правдоподобный результат.
Пошаговый разбор: создание архива медиа с поиском
Возьмём реальную задачу. У вас есть 4000 видео с демонстрацией продуктов, каждое длится 3–8 минут, и команда поддержки, которой нужно найти «момент, где клиент показывает, что устройство не подключается к Wi-Fi». Сегодня они вручную прокручивают таймлайны.
Вот как практик на самом деле решает эту задачу и что ломается, если пропустить шаг.
Шаг 1 — извлеките аудио и транскрибируйте с временными метками. Запустите Whisper для каждого файла, запрашивая временные метки на уровне сегментов, а не просто текст. Для 4000 видео средней длительностью 5 минут это примерно 20 000 минут аудио. На GPU среднего уровня с моделью base или small ожидайте несколько часов реального времени при пакетной обработке — затраты — это вычисления, а не плата за API, если вы размещаете модель у себя. Если пропустить временные метки, вы получите один блок текста на видео и потеряете возможность перейти к моменту.
Шаг 2 — разбейте транскрипт по времени, а не по символам. Разбивайте на окна по 20–30 секунд с небольшим перекрытием. Это сохраняет привязку каждого фрагмента к временной метке, так что результат поиска напрямую отображается в позицию воспроизведения. Разбиение по количеству символов, привычка по умолчанию из текстового RAG, разрушает эту привязку.
Шаг 3 — выберите кадры и опишите их. Извлекайте один кадр каждые несколько секунд и пропускайте каждый через визуальную модель с узким промптом: «Опиши видимое состояние интерфейса и любой текст ошибки на экране». Сохраняйте описание вместе с временной меткой. Здесь и кусает миф: визуальная модель неправильно прочитает мелкий текст на экране и уверенно выдумает правдоподобное сообщение об ошибке. Для критических полей обрежьте область и используйте отдельный проход OCR, а чтение модели считайте подсказкой, а не фактом.
Шаг 4 — встройте всё в один индекс. Текстовые фрагменты, описания кадров и, опционально, векторы изображений CLIP попадают в одно и то же векторное хранилище с общим полем временной метки. Теперь запрос вроде «устройство не подключается» извлекает и произнесённое объяснение, и кадр, где появляется баннер ошибки.
Шаг 5 — извлеките, затем переранжируйте и процитируйте. Выберите лучших кандидатов, переранжируйте их и верните результаты в виде клипов с временными метками. Та же дисциплина разбиения, гибридного поиска и переранжирования, которая управляет текстовыми пайплайнами, применима и здесь — механика описана в Построение RAG-систем.
Что ломается, если сделать иначе? Если описывать кадры без временных меток, поиск работает, но ответ бесполезен — вы знаете, что сбой обсуждался, но не где. Если доверять тексту на экране от визуальной модели без OCR, ваш индекс заполняется выдуманными кодами ошибок, и команда поддержки перестаёт ему доверять после первого неверного попадания.
Где сама схема даёт сбой
Это не ошибки новичков. Это режимы отказа архитектуры, и они найдут вас в масштабе.
Тишина и шум порождают фантомные транскрипты. Декодер Whisper всегда хочет выдать результат. На видео с долгим беззвучным вступлением он может выдать правдоподобное предложение, которого никто не говорил. Раннее предупреждение: сегменты транскрипта с низкой уверенностью или текст без акустической поддержки. Если уже поздно: помечайте сегменты с низкой уверенностью в индексе и исключайте их из поиска, а не удаляйте — они понадобятся для аудита позже.
Модель тихо обновили. Размещённый эндпоинт визуальной модели меняется под вами, и ваш тщательно настроенный промпт для описания теперь выдаёт более короткие и осторожные описания. Качество поиска падает без каких-либо ошибок. Раннее предупреждение: держите небольшой эталонный набор изображений с ожидаемыми описаниями и запускайте его по расписанию. Если уже поздно: вы не сможете восстановить старое поведение — версионируйте промпты и фиксируйте имена моделей там, где провайдер это позволяет.
Ранжирование CLIP дрейфует на данных вне распределения. Ваш архив состоял из продуктовых снимков; теперь он включает загруженные пользователями скриншоты с плотным текстом. Оценки сходства CLIP становятся шумом. Раннее предупреждение: еженедельно выбирайте топ-10 результатов и просматривайте их. Если уже поздно: добавьте второй путь поиска (текст OCR, эмбеддинги описаний) и объедините ранжирования вместо того, чтобы доверять одному энкодеру.
Стоимость превышает бюджет на видео. Выборка кадров с частотой один кадр в секунду на 4000 видео — это миллионы вызовов визуальной модели. Раннее предупреждение: смоделируйте стоимость до запуска — кадры × цена за изображение. Если уже поздно: переключитесь на дешёвый детектор, который решает, какие кадры стоит описывать, и описывайте только смены сцен.
Пути обучения и их честные компромиссы
Есть три реалистичных маршрута, и они различаются по стоимости больше, чем по содержанию.
| Путь | Время | Деньги | Что вы реально получаете |
|---|---|---|---|
| Самостоятельное изучение по документации и статьям | Недели-месяцы | Почти ноль | Широкая осведомлённость, но никто не скажет, что ваш пайплайн неверен, пока это не сделает продакшн |
| Практика на собственных данных | Недели | Вычисления + счета за API | Реальная интуиция, но дорогие ошибки и отсутствие эталона для сравнения |
| Структурированный курс с обратной связью | Недели | Стоимость курса | Последовательность, проработанные расчёты и кто-то, кто проверит ваши решения |
Самостоятельный путь действительно жизнеспособен, если вы дисциплинированы и ваши ошибки дёшевы — личный проект, прототип, от которого никто не зависит. Как только пайплайн становится несущим, стоимость тихого сбоя (фантомный транскрипт в архиве соответствия, выдуманный код ошибки в индексе поддержки) превышает цену любого курса. Курс Multimodal AI проходит именно через такие расчёты стоимости и надёжности с проработанными примерами и даёт обратную связь по вашим решениям, а не сертификат в конце. Это один из нескольких путей — если у вас уже есть команда и реальный набор данных, тщательное самообучение с эталонным набором может подойти вам лучше.
Кому это подходит — и кому нет
Эта работа подходит людям, которые уже мыслят пайплайнами: разработчикам, создающим поиск и агентов, аналитикам, работающим с архивами документов и медиа, и всем, чья работа — делать неструктурированный контент доступным для запросов. Если вам комфортна идея эмбеддингов и поиска, мультимодальный слой — естественное продолжение.
Она не подходит тем, кто ищет готовый инструмент, который «просто понимает» изображения и аудио. Честное состояние области в 2026 году таково, что эти модели мощны и ненадёжны в конкретных, предсказуемых отношениях — и навык в том, чтобы знать, в каких именно. Если вам нужна гарантированная точность в такой области, как текст на экране, ответ часто — скучный детерминированный инструмент, а не более крупная модель. Если вы защищаете систему от состязательных входов, здесь применимо то же мышление о защитных барьерах, что и в AI Security (Guardrails).
Начните с одной реальной задачи из вашей работы и одного эталонного набора из двадцати примеров. Это единственное упражнение научит вас большему о мультимодальном ИИ, чем любой обзор — а если вы хотите расчёты и режимы отказа, изложенные последовательно, курс Multimodal AI — разумное место для начала.
Начать можно здесь: Multimodal AI (Vision + Audio).