MetaEmbed: настройка мультимодального поиска на этапе сервинга с помощью обучаемых Meta-токенов
MetaEmbed предлагает практический управляющий параметр для мультимодального поиска: на этапе сервинга выбирайте, сколько компактных обучаемых “Meta-токенов” использовать для запросов и кандидатов, чтобы балансировать точность, задержку и размер индекса.
Основная идея
MetaEmbed избегает крайностей: не сворачивает все в один вектор (как CLIP) и не раздувает до сотен векторов токенов (как ColBERT). В процессе обучения к каждому входу добавляется фиксированный набор обучаемых Meta-токенов. На этапе инференса финальные скрытые состояния этих Meta-токенов используются как небольшой набор мульти-векторных эмбеддингов, обеспечивая регулируемую детализацию сопоставления без дообучения.
Matryoshka Multi-Vector Retrieval (MMR)
Чтобы выбор бюджета на этапе сервинга имел смысл, Meta-токены организованы в префиксно-вложенные группы — конструкция типа матрешки. При обучении по MMR модель учится представлениям, работающим на разных уровнях детализации. На инференсе вы задаёте бюджет ((r_q, r_c)), то есть сколько Meta-токенов использовать для запроса и кандидата (например: ((1,1),(2,4),(4,8),(8,16),(16,64))).
Рейтинг и позднее взаимодействие
MetaEmbed использует MaxSim позднее взаимодействие в стиле ColBERT по L2-нормализованным эмбеддингам Meta-токенов. Это сохраняет тонкую межмодальную информацию и при этом остаётся компактным, позволяя применять бюджетный MaxSim.
Бенчмарки
Метод протестирован на MMEB (Massive Multimodal Embedding Benchmark) и ViDoRe v2 (Visual Document Retrieval), ориентированных на разнообразные модальности и реалистичные документные запросы.
На MMEB с бэкбонами Qwen2.5-VL MetaEmbed показывает при наибольшем бюджете ((16,64)) следующие общие результаты: 3B = 69.1, 7B = 76.6, 32B = 78.7. Показатели монотонно растут с увеличением бюджета, а выигрыш увеличивается с размером модели. На ViDoRe v2 метод улучшает средний nDCG@5 по сравнению с single-vector и наивным фиксированным multi-vector baseline при одинаковом обучении; разрыв растёт на больших бюджетах.
Аболции подтверждают важность MMR: без MMR (NoMMR) качество на низких бюджетах резко падает; с MMR MetaEmbed отслеживает или превосходит single-vector базовые версии по бюджетам и размерам моделей.
Эффективность и память
В исследовании указаны затраты на скоринг и память индекса на A100 при 100k кандидатов на запрос и батче скоринга 1,000. При увеличении бюджета от ((1,1)) до ((16,64)):
- FLOPs для скоринга растут от 0.71 GFLOPs до 733.89 GFLOPs.
- Задержка скоринга увеличивается с 1.67 ms до 6.25 ms.
- Память индекса в bfloat16 растёт с 0.68 GiB до 42.72 GiB.
Ключевой вывод: кодирование запроса доминирует в конце-концов по задержке. Кодирование изображения с 1,024 токенами требует примерно 42.72 TFLOPs и 788 ms, что на порядки больше, чем затраты на скоринг при типичных размерах множества кандидатов. Значит, нужно оптимизировать производительность энкодера и сбалансировать размещение индекса (GPU vs CPU) или выгрузку индексов при необходимости.
Сравнение с альтернативами
- Single-vector (CLIP-подход): минимальный индекс и быстрый dot-product скоринг, но ограниченная чувствительность к инструкциям и композиционная детализация. MetaEmbed повышает точность за счёт небольшого контекстного множества векторов при сохранении независимого кодирования.
- Наивный multi-vector (ColBERT-подход): богато деталями на уровне токенов, но непрактичен по памяти и вычислениям, если обе стороны содержат изображения. MetaEmbed сокращает число векторов на порядки и позволяет применять бюджетный MaxSim.
Практические выводы
- Одна модель — множество бюджетов: обучите один раз, выбирайте ((r_q, r_c)) на этапе сервинга для баланса между полнотой и затратами. Низкие бюджеты подходят для начального поиска, высокие — для переранжирования.
- Энкодер — узкое место: оптимизируйте токенизацию изображений и пропускную способность VLM; сам скоринг остаётся лёгким для типичных наборов кандидатов.
- Память масштабируется линейно с бюджетом: планируйте шардирование и размещение индекса в зависимости от ожидаемых бюджетов и нагрузки.
MetaEmbed привносит управляемую послеобучаемую детализируемость в мультимодальные эмбеддинги и предлагает практичный путь для команд, стремящихся объединить быстрый recall и точное переранжирование в сценариях с изображениями и документами.