Перейти к содержимому
Экосистема AI Vibe

Новости

Sentence Transformers 6.0: multi-vector под свой RAG на одной GPU

Редакция 26 августа 2026 г.

ColBERT-style multi-vector embedding дообучается на парах вопрос–ответ и обходит универсальные retriever'ы на длинных доменных документах.

В Sentence Transformers 6.0 добавили тип MultiVectorEncoder: late interaction в духе ColBERT для RAG и семантического поиска. Вместо одного вектора на весь текст модель хранит вектор на каждый токен и считает сходство через MaxSim: для каждого токена запроса ищется лучший токен документа, баллы суммируются.

Tom Aarsen в гайде на Hugging Face за 14,5 часа на одной RTX 3090 дообучил multi-vector-encoder/mLateOn-medical на бенчмарке MIRIAD: модель обошла готовые dense-, sparse- и multi-vector retriever'ы. Старт: pip install -U "sentence-transformers[train]".

Почему не хватает готовой модели с Hub

Большинство retriever'ов обучали на коротких пассажах: классический ColBERT режет документы на 180–300 токенов, популярные dense-модели укладываются в 256–512. На медицинском корпусе со средней длиной 941 токен такая обрезка стоила до 0,24 NDCG@10: больше, чем разница между архитектурами. Своя модель позволяет задать нужную длину; у семейства mLateOn через processor_kwargs доступны 8192 токена.

С чего начать обучение

  • Модель: дообучить lightonai/mLateOn-unsupervised или собрать с нуля на базе трансформера.
  • Данные: пары «вопрос, релевантный пассаж»; на Hub уже 4,4 млн медицинских примеров MIRIAD.
  • Тренер: MultiVectorEncoderTrainer связывает loss, аргументы и evaluator в один пайплайн.

Неочевидный результат из сравнения шести стартовых чекпоинтов: модели с суффиксом -unsupervised после 25k доменных пар выросли сильнее «доготовленных»: NDCG@10 у mLateOn-unsupervised поднялся с 0,9087 до 0,9398. Skiplist для пунктуации уменьшает индекс на 9,6% без потери качества.

Источник: Training and Finetuning Multi-Vector Embedding Models with Sentence Transformers.