/ Модель

Характеристики

Контекст
512 токенов
Параметры
137 млн
Лицензия
Apache 2.0
Архитектура
bert · dense
Базовая модель
bert-base-uncased
Библиотека
transformers
Опубликована
14 мая 2025

ConstBERT

ЭмбеддингиТекст → embedding8 профессий

ConstBERT — англоязычная BERT-модель Pinecone для эффективного семантического поиска и извлечения фрагментов текста с фиксированными многовекторными представлениями.

756скачиваний за 30 дней22лайкавеса обновлены28 мая 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

ConstBERT — англоязычная модель поиска по фрагментам текста, разработанная Pinecone на основе дообучения google-bert/bert-base-uncased. Она изменяет подход ColBERT: вместо отдельного вектора для каждого токена документа модель формирует для документа фиксированный набор из 32 векторов размерностью 128. Запрос представляется набором токенных эмбеддингов, а релевантность документа оценивается механизмом позднего взаимодействия MaxSim.

Модель предназначена для семантического поиска и извлечения фрагментов из больших коллекций документов, в том числе как первого этапа поиска или для переоценки кандидатов от другой поисковой системы. Фиксированное представление уменьшает размер индекса и упрощает управление хранением; выбор числа векторов задаёт компромисс между эффективностью поиска и затратами. README сообщает о сопоставимых с ColBERT результатах на MSMARCO и BEIR при существенно меньших индексах. Модель принимает текст и выдаёт многовекторные представления для поиска; контекст составляет до 512 токенов. Распространяется по лицензии Apache-2.0.

Сценарии применения

  • семантический поиск по большой коллекции документов
  • поиск релевантных фрагментов для ответа на вопрос
  • первичный поиск кандидатов в поисковой системе
  • переоценка найденных документов
  • построение компактного многовекторного индекса

Ограничения

Представления документов компактнее, чем у классического ColBERT, но эффективность поиска и вычислительные затраты зависят от выбранного числа векторов. Модель англоязычная и ограничена контекстом в 512 токенов.

Для каких профессий подходит8

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

ConstBERT

ConstBERT (Constant-Space BERT) is a multi-vector retrieval model designed for efficient and effective passage retrieval. It modifies the ColBERT architecture by encoding documents into a fixed number of learned embeddings, rather than one embedding per token. This approach significantly reduces storage costs and can improve OS paging management due to fixed-size document representations, while retaining most of the original effectiveness of multi-vector models.

Details

ConstBERT addresses the high storage cost associated with traditional multi-vector retrieval methods like ColBERT, where each token in a document collection is stored as a vector. Instead, ConstBERT proposes a learned pooling mechanism that projects the token-level embeddings of a document into a smaller, fixed number (C) of document-level embeddings. Each of these C embeddings captures distinct semantic facets of the document. This projection is achieved through an additional linear transformation layer learned end-to-end during training. The relevance score between a query and a document is then computed using a late interaction mechanism (MaxSim) over these C document embeddings and the query's token embeddings.

This approach offers a trade-off between storage/computational efficiency and retrieval effectiveness, configurable by the choice of C. The paper demonstrates that ConstBERT can achieve performance comparable to ColBERT on benchmarks like MSMARCO and BEIR, with substantially smaller index sizes.

This model has been trained to produce 32 vectors of size 128.

Model Sources

For more details, please refer to our official repository, paper and blog!

Direct Use

ConstBERT is intended for semantic search and passage retrieval tasks. It can be used for:

  • First-stage retrieval in large document collections.
  • Reranking candidates produced by another retrieval system.

The model produces fixed-size multi-vector representations for documents, which can be indexed efficiently. Queries are represented as sets of token embeddings.

Example code:

from transformers import AutoModel
import numpy as np

def max_sim(q: np.ndarray, d: np.ndarray) -> float:
    # Ensure the dimensions are correct
    assert q.ndim == 2, "Q must be a 2-dimensional array"
    assert d.ndim == 2, "d must be a 2-dimensional array"
    scores = np.dot(d, q.T)
    max_scores = np.max(scores, axis=0)
    return float(np.sum(max_scores))

model = AutoModel.from_pretrained("pinecone/ConstBERT", trust_remote_code=True)

# Example queries and documents
queries = ["What is the capital of France?", "latest advancements in AI"]
documents = [
    "Paris is the capital and most populous city of France.",
    "Artificial intelligence is rapidly evolving with new breakthroughs.",
    "The Eiffel Tower is a famous landmark in Paris."
]

# Encode queries and documents
query_embeddings = model.encode_queries(queries).numpy()
document_embeddings = model.encode_documents(documents).numpy()

max_sim(query_embeddings[0], document_embeddings[0]) > max_sim(query_embeddings[0], document_embeddings[1])
# Returns: True

Citation (BibTeX)

@inproceedings{macavaney2025constbert,
author = {MacAvaney, Sean and Mallia, Antonio and Tonellotto, Nicola},
title = {Efficient Constant-Space Multi-vector Retrieval},
year = {2025},
isbn = {978-3-031-88713-0},
publisher = {Springer-Verlag},
address = {Berlin, Heidelberg},
url = {https://doi.org/10.1007/978-3-031-88714-7_22},
doi = {10.1007/978-3-031-88714-7_22},
booktitle = {Advances in Information Retrieval: 47th European Conference on Information Retrieval, ECIR 2025, Lucca, Italy, April 6–10, 2025, Proceedings, Part III},
pages = {237–245},
numpages = {9},
keywords = {Multi-Vector Retrieval, Efficiency, Dense Retrieval},
location = {Lucca, Italy}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
ConstBERT
Ревизия весов
6605b00

0 моделей