Itinai.com it company office background blured chaos 50 v 04fd15e0 f9b2 4808 a5a4 d8a8191e4a22 1

Ускорьте мультилингвальный поиск с LFM2.5 от Liquid AI

Itinai.com it company office background blured chaos 50 v 04fd15e0 f9b2 4808 a5a4 d8a8191e4a22 1

Что представляют собой новые модели LFM2.5 от Liquid AI?

На прошлой неделе компания Liquid AI анонсировала две новых модели для поиска: LFM2.5-ColBERT-350M и LFM2.5-Embedding-350M. Обе модели относятся к семейству LFM2.5, имеют 350 млн параметров и впервые используют двунаправленную архитектуру. Их главный козырь — быстрый мульти‑язычный и кросс‑лингвальный поиск по 11 языкам, а небольшой «footprint» позволяет запускать их даже на обычных ноутбуках.

Какой тип модели выбрать?

Модели построены на едином бэкбоне, но различаются способом представления текста.

  • LFM2.5-Embedding-350M — плотный би‑энкодер. Каждый документ превращается в один 1024‑мерный вектор. Это самый быстрый и экономичный вариант: индекс занимает минимум места, а запросы обрабатываются за миллисекунды.
  • LFM2.5-ColBERT-350M — модель позднего взаимодействия (late‑interaction). Каждый токен получает свой 128‑мерный вектор, а сходство считается по‑токенно‑по‑токенному MaxSim. Точность выше, но требуется более крупный индекс и чуть больше времени на обработку.

Почему важна смена с causal на bidirectional?

Исходный LFM2 был «causal»‑декодером: каждый токен «видит» только предыдущие. Для генерации текста это удобно, но для поиска — не совсем. В новой версии маска внимания заменена на двунаправленную, а короткие свёртки стали недирективными. В результате каждый токен учитывает контекст слева и справа, что позволяет построить более качественное представление для сравнения запросов и документов.

Трёхэтапный процесс обучения

  • Этап 1 — контрастивное предобучение на англоязычных данных.
  • Этап 2 — мульти‑языковая дистилляция от сильного учителя на 11 целевых языках.
  • Этап 3 — финальная доработка на сложных негативных примерах.

Для Embedding‑модели использовано немного больше кросс‑лингвальных пар, тогда как ColBERT более эффективно извлекает кросс‑язычные соответствия благодаря своей токен‑ориентированной структуре.

Бенчмарки: как модели себя показывают?

Оценка проводилась на двух наборах: NanoBEIR (мульти‑язычный поиск) и MKQA‑11 (кросс‑лингвальный QA). Ниже средние результаты по всем 11 языкам.

  • LFM2.5-ColBERT-350M — NanoBEIR NDCG@10 = 0.605, MKQA‑11 Recall@20 = 0.694.
  • LFM2.5-Embedding-350M — NanoBEIR NDCG@10 = 0.577, MKQA‑11 Recall@20 = 0.691.

Обе модели опережают более крупные аналоги (например, Qwen3‑Embedding‑0.6B) и демонстрируют стабильный рост по сравнению с предыдущим LFM2‑ColBERT‑350M.

Скорость и работа на edge‑устройствах

Для лёгкого развёртывания доступны GGUF‑версии, совместимые с llama.cpp. На ноутбуке MacBook Pro M4 Max (FP16) получены такие цифры:

  • LFM2.5‑Embedding‑350M — запрос ≈ 7 мс (при предварительно закешированных векторах).
  • LFM2.5‑ColBERT‑350M — запрос ≈ 8 мс (только вектор запроса) и ≈ 34 мс, если документы также нужно кодировать.

Внутри корпоративных GPU‑кластеров (H100, FP16) латентность падает до 1‑2 мс, что делает модели пригодными для реального времени.

Практические сценарии применения

  • Э‑коммерция: один общий индекс для каталога товаров, позволяющий искать на корейском и находить результаты на английском.
  • FAQ и база знаний: кросс‑язычное сопоставление вопросов и ответов без дублирования индексов.
  • Поиск на устройстве: локальный семантический поиск по файлам, письмам и заметкам без передачи данных в облако.
  • Корпоративные помощники: высокоточная индексация юридических и финансовых документов, где важна точность (ColBERT) и поддержка множества языков.

Как быстро начать работу?

Для Embedding‑модели достаточно sentence‑transformers и правильных промптов (query: и document:).

from sentence_transformers import SentenceTransformer

model = SentenceTransformer(
    "LiquidAI/LFM2.5-Embedding-350M",
    trust_remote_code=True,
)

queries = ["What is the capital of France?"]
documents = ["Paris is the capital and largest city of France."]

q_emb = model.encode(queries,   prompt_name="query",    normalize_embeddings=True)
d_emb = model.encode(documents, prompt_name="document", normalize_embeddings=True)

scores = q_emb @ d_emb.T

Для ColBERT‑модели используется библиотека PyLate и индекс PLAID.

from pylate import indexes, models, retrieve

model = models.ColBERT(
    model_name_or_path="LiquidAI/LFM2.5-ColBERT-350M",
    trust_remote_code=True,
)
model.tokenizer.pad_token = model.tokenizer.eos_token

index = indexes.PLAID(index_folder="pylate-index", index_name="index", override=True)

docs_emb = model.encode(["document 1 text", "document 2 text"], is_query=False)
index.add_documents(documents_ids=["1", "2"], documents_embeddings=docs_emb)

retriever = retrieve.ColBERT(index=index)
q_emb = model.encode(["a search query"], is_query=True)
scores = retriever.retrieve(queries_embeddings=q_emb, k=10)

Обе модели поддерживают дообучение на ваших данных: в карточках моделей на Hugging Face уже есть готовые сниппеты с MultipleNegativesRankingLoss и sentence‑transformers.

Ключевые выводы

  • Новые LFM2.5‑ColBERT‑350M и LFM2.5‑Embedding‑350M — первые двунаправленные модели в семействе LFM, оптимизированные под 11 языков.
  • Они лидируют в своих классах на NanoBEIR и MKQA‑11, опережая более крупные конкуренты.
  • Embedding‑вариант дает минимальный размер индекса, а ColBERT — лучшую точность за счёт токен‑уровневого взаимодействия.
  • GGUF‑билды позволяют запускать модели на CPU, ноутбуке и даже на edge‑устройствах, удерживая p50‑запросы в пределах <10 мс.
  • Подключение к существующим RAG‑конвейерам происходит через sentence‑transformers и PyLate без лишних хлопот.

Запустите свой ИИ проект бесплатно

ИИ-агенты искусственный интеллект онлайн для бизнеса

Лучший ИИ онлайн