sergeyzh/rubert-mini-sts

sergeyzh
Similitud de oraciones

Modelo BERT básico para calcular embeddings compactos de oraciones en ruso. El modelo se basa en cointegrated/rubert-tiny2 - tiene tamaños de contexto (2048) y embedding (312) similares, y el número de capas se ha incrementado de 3 a 7.

Como usar

Uso del modelo con la biblioteca 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()  # descoméntalo si tienes una 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,)

Uso con 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))

Funcionalidades

Transformers
Safetensors
Embeddings en ruso
Características de extracción
Inferencia de embeddings de texto

Casos de uso

Similitud semántica de texto (STS)
Identificación de paráfrasis (PI)
Inferencia de lenguaje natural (NLI)
Análisis de sentimientos (SA)
Identificación de toxicidad (TI)

Recibe las últimas noticias y actualizaciones sobre el mundo de IA directamente en tu bandeja de entrada.