/ Модель

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

Контекст
2 048 токенов
Параметры
32,8 млн
Лицензия
MIT
Архитектура
bert · dense
Базовая модель
rubert-tiny2
Опубликована
30 мар 2024

rubert-mini-sts

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

Компактный русскоязычный BERT-энкодер для получения эмбеддингов предложений и оценки семантического сходства.

10 002скачиваний за 30 дней6лайковвеса обновлены5 авг 2024

Бенчмарки

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sergeyzh/rubert-mini-sts — компактная русскоязычная модель для семантического сравнения предложений, разработанная на основе cointegrated/rubert-tiny2. Это BERT-энкодер с 32,8 млн параметров и эмбеддингами размерности 312; в README указано, что число слоёв увеличено с 3 до 7. Модель принимает текст и выдаёт векторные представления предложений для оценки их сходства.

Модель предназначена для semantic text similarity, выявления перефразировок, вывода о связи между текстами, анализа тональности и выявления токсичности. По результатам бенчмарка encodechka она уступает более крупным multilingual-e5-large и LaBSE-ru-sts по STS, но README приводит для неё более высокую скорость на CPU. Указанная длина контекста — 2048 токенов. Модель выпущена под лицензией MIT.

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

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

Ограничения

Модель ориентирована на русский язык и компактные эмбеддинги; в приведённом бенчмарке STS её оценка ниже, чем у multilingual-e5-large и LaBSE-ru-sts. Утверждения о скорости относятся к бенчмарку encodechka и могут зависеть от оборудования и условий измерения.

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

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

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

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

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

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

Открыть на Hugging Face

Базовый Bert для Semantic text similarity (STS) на CPU

Базовая модель BERT для расчетов компактных эмбеддингов предложений на русском языке. Модель основана на cointegrated/rubert-tiny2 - имеет аналогичные размеры контекста (2048) и ембеддинга (312), количество слоев увеличено с 3 до 7.

Использование модели с библиотекой transformers:

# pip install transformers sentencepiece
import torch
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("sergeyzh/rubert-mini-sts")
model = AutoModel.from_pretrained("sergeyzh/rubert-mini-sts")
# model.cuda()  # uncomment it if you have a GPU

def embed_bert_cls(text, model, tokenizer):
    t = tokenizer(text, padding=True, truncation=True, return_tensors='pt')
    with torch.no_grad():
        model_output = model(**{k: v.to(model.device) for k, v in t.items()})
    embeddings = model_output.last_hidden_state[:, 0, :]
    embeddings = torch.nn.functional.normalize(embeddings)
    return embeddings[0].cpu().numpy()

print(embed_bert_cls('привет мир', model, tokenizer).shape)
# (312,)

Использование с sentence_transformers:

from sentence_transformers import SentenceTransformer, util

model = SentenceTransformer('sergeyzh/rubert-mini-sts')

sentences = ["привет мир", "hello world", "здравствуй вселенная"]
embeddings = model.encode(sentences)
print(util.dot_score(embeddings, embeddings))

Метрики

Оценки модели на бенчмарке encodechka:

МодельSTSPINLISATI
intfloat/multilingual-e5-large0.8620.7270.4730.8100.979
sergeyzh/LaBSE-ru-sts0.8450.7370.4810.8050.957
sergeyzh/rubert-mini-sts0.8150.7230.4770.7910.949
sergeyzh/rubert-tiny-sts0.7970.7020.4530.7780.946
Tochka-AI/ruRoPEBert-e5-base-5120.7930.7040.4570.8030.970
cointegrated/LaBSE-en-ru0.7940.6590.4310.7610.946
cointegrated/rubert-tiny20.7500.6510.4170.7370.937

Задачи:

  • Semantic text similarity (STS);
  • Paraphrase identification (PI);
  • Natural language inference (NLI);
  • Sentiment analysis (SA);
  • Toxicity identification (TI).

Быстродействие и размеры

На бенчмарке encodechka:

МодельCPUGPUsizedimn_ctxn_vocab
intfloat/multilingual-e5-large149.02615.62921361024514250002
sergeyzh/LaBSE-ru-sts42.8358.56149076851255083
sergeyzh/rubert-mini-sts6.4175.517123312204883828
sergeyzh/rubert-tiny-sts3.2083.379111312204883828
Tochka-AI/ruRoPEBert-e5-base-51243.3149.33853276851269382
cointegrated/LaBSE-en-ru42.8678.54949076851255083
cointegrated/rubert-tiny23.2123.384111312204883828

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

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

GPU в ailist

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

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

Подбираем GPU…

Класс архитектуры
BertForPreTraining
Ревизия весов
c70dbfd

0 моделей