Views
No views yet
transformers:1# pip install transformers sentencepiece
2import torch
3from transformers import AutoTokenizer, AutoModel
4tokenizer = AutoTokenizer.from_pretrained("sergeyzh/rubert-mini-sts")
5model = AutoModel.from_pretrained("sergeyzh/rubert-mini-sts")
6# model.cuda() # uncomment it if you have a GPU
7
8def embed_bert_cls(text, model, tokenizer):
9 t = tokenizer(text, padding=True, truncation=True, return_tensors='pt')
10 with torch.no_grad():
11 model_output = model(**{k: v.to(model.device) for k, v in t.items()})
12 embeddings = model_output.last_hidden_state[:, 0, :]
13 embeddings = torch.nn.functional.normalize(embeddings)
14 return embeddings[0].cpu().numpy()
15
16print(embed_bert_cls('привет мир', model, tokenizer).shape)
17# (312,)sentence_transformers:1from sentence_transformers import SentenceTransformer, util
2
3model = SentenceTransformer('sergeyzh/rubert-mini-sts')
4
5sentences = ["привет мир", "hello world", "здравствуй вселенная"]
6embeddings = model.encode(sentences)
7print(util.dot_score(embeddings, embeddings))| Модель | STS | PI | NLI | SA | TI |
|---|---|---|---|---|---|
| intfloat/multilingual-e5-large | 0.862 | 0.727 | 0.473 | 0.810 | 0.979 |
| sergeyzh/LaBSE-ru-sts | 0.845 | 0.737 | 0.481 | 0.805 | 0.957 |
| sergeyzh/rubert-mini-sts | 0.815 | 0.723 | 0.477 | 0.791 | 0.949 |
| sergeyzh/rubert-tiny-sts | 0.797 | 0.702 | 0.453 | 0.778 | 0.946 |
| Tochka-AI/ruRoPEBert-e5-base-512 | 0.793 | 0.704 | 0.457 | 0.803 | 0.970 |
| cointegrated/LaBSE-en-ru | 0.794 | 0.659 | 0.431 | 0.761 | 0.946 |
| cointegrated/rubert-tiny2 | 0.750 | 0.651 | 0.417 | 0.737 | 0.937 |
| Модель | CPU | GPU | size | dim | n_ctx | n_vocab |
|---|---|---|---|---|---|---|
| intfloat/multilingual-e5-large | 149.026 | 15.629 | 2136 | 1024 | 514 | 250002 |
| sergeyzh/LaBSE-ru-sts | 42.835 | 8.561 | 490 | 768 | 512 | 55083 |
| sergeyzh/rubert-mini-sts | 6.417 | 5.517 | 123 | 312 | 2048 | 83828 |
| sergeyzh/rubert-tiny-sts | 3.208 | 3.379 | 111 | 312 | 2048 | 83828 |
| Tochka-AI/ruRoPEBert-e5-base-512 | 43.314 | 9.338 | 532 | 768 | 512 | 69382 |
| cointegrated/LaBSE-en-ru | 42.867 | 8.549 | 490 | 768 | 512 | 55083 |
| cointegrated/rubert-tiny2 | 3.212 | 3.384 | 111 | 312 | 2048 | 83828 |