Главное нововведение релиза, который подготовил разработчик Том Аарсен, — появление четвертого нативного типа моделей: MultiVectorEncoder. Он добавляет поддержку моделей позднего взаимодействия (late interaction) в стиле ColBERT.
Как работает технология
Классические плотные модели сжимают весь текст в один вектор. При таком подходе легко упустить важные детали, редкие термины или точные совпадения.
Новый MultiVectorEncoder сохраняет отдельный вектор для каждого токена. При сравнении запроса и документа библиотека использует оператор MaxSim: он находит максимальное сходство для каждого токена запроса среди всех токенов документа и сопоставляет их между собой. Это делает поиск более точным и помогает лучше учитывать контекст в сложных запросах и длинных текстах.
Что поддерживает новая версия
MultiVectorEncoder интегрирован в единый API библиотеки и позволяет:
- загружать чекпоинты PyLate, оригинальные модели ColBERT от Stanford NLP и
colpali-engineдля визуального поиска по документам; - запускать компактные и быстрые модели (например, Answer.AI ColBERT на 30M параметров);
- кодировать тексты в многовекторные представления и выполнять семантический поиск;
- использовать конвейеры извлечения и последующего переранжирования (retrieve and rerank);
- индексировать векторы в базах данных Qdrant, Weaviate, Vespa и fast-plaid;
- работать с мультимодальными документами (визуальными, аудио- и видеоматериалами);
- анализировать совпадения на уровне отдельных токенов с помощью инструментов интерпретируемости;
- обучать собственные многовекторные модели (Sentence Transformers стал рекомендованной базой для PyLate).
Особенности работы и оптимизация
Поскольку многовекторный подход требует больше вычислительных ресурсов и памяти для хранения индексов, в Sentence Transformers 6.0 добавили механизмы оптимизации:
- Пулинг токенов (token pooling): сокращает объем сохраняемого индекса.
- Flash Attention и квантование: ускоряют вычисления и снижают нагрузку на аппаратные ресурсы.
Подробности релиза, руководства по миграции и примеры использования нового MultiVectorEncoder доступны в официальной документации Sentence Transformers и в блоге Hugging Face.