sergeyzh commited on
Commit
ca4178c
·
verified ·
1 Parent(s): d92ed82

Upload 10 files

Browse files
1_Pooling/config.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "word_embedding_dimension": 312,
3
+ "pooling_mode_cls_token": true,
4
+ "pooling_mode_mean_tokens": false,
5
+ "pooling_mode_max_tokens": false,
6
+ "pooling_mode_mean_sqrt_len_tokens": false
7
+ }
README.md CHANGED
@@ -1,3 +1,84 @@
1
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  license: mit
 
 
 
3
  ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ language:
3
+ - ru
4
+ - en
5
+
6
+ pipeline_tag: sentence-similarity
7
+
8
+ tags:
9
+ - russian
10
+ - pretraining
11
+ - embeddings
12
+ - tiny
13
+ - feature-extraction
14
+ - sentence-similarity
15
+ - sentence-transformers
16
+ - transformers
17
+ - mteb
18
+
19
+ datasets:
20
+ - IlyaGusev/gazeta
21
+ - zloelias/lenta-ru
22
+ - HuggingFaceFW/fineweb-2
23
+ - HuggingFaceFW/fineweb
24
+
25
  license: mit
26
+
27
+ base_model: sergeyzh/rubert-tiny-turbo
28
+
29
  ---
30
+
31
+ Быстрая модель BERT для задач симметричного перефразирования (STS, поиск парафраз, дедупликация) и логического вывода (NLI). Получена дистилляцией эмбеддингов русских и английских текстов [Qwen/Qwen3-Embedding-4B](https://huggingface.co/Qwen/Qwen3-Embedding-4B) в [rubert-tiny-turbo](https://huggingface.co/sergeyzh/rubert-tiny-turbo).
32
+
33
+ Модель может использоваться в качестве базовой для дообучения под пользовательские задачи классификации и кластеризации.
34
+
35
+ Основные характеристики модели:
36
+ - размер ембеддинга - 312,
37
+ - длина контекста - 512,
38
+ - слоёв - 3,
39
+ - префиксы - не требуются.
40
+
41
+
42
+
43
+ ## Использование
44
+
45
+ ```Python
46
+ from sentence_transformers import SentenceTransformer
47
+
48
+ model = SentenceTransformer('sergeyzh/rubert-tiny-sts-v2')
49
+
50
+ sentences = ["привет мир", "hello world", "здравствуй вселенная"]
51
+ embeddings = model.encode(sentences)
52
+ print(model.similarity(embeddings, embeddings))
53
+ ```
54
+
55
+
56
+
57
+ ## Метрики
58
+
59
+ Оценки модели на задачах для русского языка:
60
+
61
+ | Model Name | RuSTS Benchmark STS | RU ParaPhraser STS | STS22,v2 | TERRa Classification | Average |
62
+ | :--- | :---: | :---: | :---: | :---: | :---: |
63
+ | Qwen3-Embedding-4B | 0,888 | 0,766 | 0,701 | 0,666 | 0,755 |
64
+ | multilingual-e5-large-instruct | 0,840 | 0,754 | 0,706 | 0,639 | 0,735 |
65
+ | Qwen3-Embedding-0.6B | 0,842 | 0,721 | 0,662 | 0,607 | 0,708 |
66
+ | **rubert-tiny-sts-v2** | 0,830 | 0,736 | 0,646 | 0,616 | 0,707 |
67
+ | bge-m3 | 0,797 | 0,749 | 0,663 | 0,607 | 0,704 |
68
+ | rubert-tiny-turbo | 0,787 | 0,721 | 0,646 | 0,563 | 0,679 |
69
+ | multilingual-e5-base | 0,796 | 0,702 | 0,607 | 0,550 | 0,664 |
70
+
71
+
72
+
73
+ Оценки модели на задачах для английского языка:
74
+
75
+ | Model Name | STS12 | STS13 | STS14 | STS15 | STS17 | STS22,v2 | STS Benchmark | Average |
76
+ | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
77
+ | Qwen3-Embedding-4B | 0,866 | 0,944 | 0,909 | 0,938 | 0,918 | 0,730 | 0,937 | 0,892 |
78
+ | Qwen3-Embedding-0.6B | 0,830 | 0,918 | 0,871 | 0,914 | 0,855 | 0,718 | 0,911 | 0,860 |
79
+ | multilingual-e5-large-instruct | 0,825 | 0,881 | 0,848 | 0,910 | 0,860 | 0,690 | 0,884 | 0,842 |
80
+ | bge-m3 | 0,787 | 0,796 | 0,790 | 0,878 | 0,796 | 0,700 | 0,849 | 0,800 |
81
+ | multilingual-e5-base | 0,767 | 0,780 | 0,766 | 0,882 | 0,783 | 0,646 | 0,856 | 0,783 |
82
+ | **rubert-tiny-sts-v2** | 0,761 | 0,836 | 0,804 | 0,856 | 0,821 | 0,547 | 0,833 | 0,780 |
83
+ | rubert-tiny-turbo | 0,662 | 0,603 | 0,661 | 0,774 | 0,272 | 0,334 | 0,690 | 0,571 |
84
+
config.json ADDED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "sergeyzh/rubert-tiny-sts-v2",
3
+ "architectures": [
4
+ "BertModel"
5
+ ],
6
+ "attention_probs_dropout_prob": 0.1,
7
+ "classifier_dropout": null,
8
+ "dtype": "float32",
9
+ "emb_size": 312,
10
+ "gradient_checkpointing": false,
11
+ "hidden_act": "gelu",
12
+ "hidden_dropout_prob": 0.1,
13
+ "hidden_size": 312,
14
+ "initializer_range": 0.02,
15
+ "intermediate_size": 600,
16
+ "layer_norm_eps": 1e-12,
17
+ "max_position_embeddings": 2048,
18
+ "model_type": "bert",
19
+ "num_attention_heads": 12,
20
+ "num_hidden_layers": 3,
21
+ "pad_token_id": 0,
22
+ "position_embedding_type": "absolute",
23
+ "transformers_version": "4.57.6",
24
+ "type_vocab_size": 2,
25
+ "use_cache": true,
26
+ "vocab_size": 83828
27
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:44dbeacf5eae4e38e51ea44d19b8e7c40b350e24546390c402a798cf6d363150
3
+ size 116781184
modules.json ADDED
@@ -0,0 +1,20 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "idx": 0,
4
+ "name": "0",
5
+ "path": "",
6
+ "type": "sentence_transformers.models.Transformer"
7
+ },
8
+ {
9
+ "idx": 1,
10
+ "name": "1",
11
+ "path": "1_Pooling",
12
+ "type": "sentence_transformers.models.Pooling"
13
+ },
14
+ {
15
+ "idx": 2,
16
+ "name": "2",
17
+ "path": "2_Normalize",
18
+ "type": "sentence_transformers.models.Normalize"
19
+ }
20
+ ]
sentence_bert_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "max_seq_length": 512,
3
+ "do_lower_case": false
4
+ }
special_tokens_map.json ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cls_token": {
3
+ "content": "[CLS]",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "mask_token": {
10
+ "content": "[MASK]",
11
+ "lstrip": false,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": {
17
+ "content": "[PAD]",
18
+ "lstrip": false,
19
+ "normalized": false,
20
+ "rstrip": false,
21
+ "single_word": false
22
+ },
23
+ "sep_token": {
24
+ "content": "[SEP]",
25
+ "lstrip": false,
26
+ "normalized": false,
27
+ "rstrip": false,
28
+ "single_word": false
29
+ },
30
+ "unk_token": {
31
+ "content": "[UNK]",
32
+ "lstrip": false,
33
+ "normalized": false,
34
+ "rstrip": false,
35
+ "single_word": false
36
+ }
37
+ }
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "[PAD]",
5
+ "lstrip": false,
6
+ "normalized": false,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": true
10
+ },
11
+ "1": {
12
+ "content": "[UNK]",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ },
19
+ "2": {
20
+ "content": "[CLS]",
21
+ "lstrip": false,
22
+ "normalized": false,
23
+ "rstrip": false,
24
+ "single_word": false,
25
+ "special": true
26
+ },
27
+ "3": {
28
+ "content": "[SEP]",
29
+ "lstrip": false,
30
+ "normalized": false,
31
+ "rstrip": false,
32
+ "single_word": false,
33
+ "special": true
34
+ },
35
+ "4": {
36
+ "content": "[MASK]",
37
+ "lstrip": false,
38
+ "normalized": false,
39
+ "rstrip": false,
40
+ "single_word": false,
41
+ "special": true
42
+ }
43
+ },
44
+ "clean_up_tokenization_spaces": true,
45
+ "cls_token": "[CLS]",
46
+ "do_basic_tokenize": true,
47
+ "do_lower_case": false,
48
+ "extra_special_tokens": {},
49
+ "mask_token": "[MASK]",
50
+ "max_length": 512,
51
+ "model_max_length": 2048,
52
+ "never_split": null,
53
+ "pad_to_multiple_of": null,
54
+ "pad_token": "[PAD]",
55
+ "pad_token_type_id": 0,
56
+ "padding_side": "right",
57
+ "sep_token": "[SEP]",
58
+ "stride": 0,
59
+ "strip_accents": null,
60
+ "tokenize_chinese_chars": true,
61
+ "tokenizer_class": "BertTokenizer",
62
+ "truncation_side": "right",
63
+ "truncation_strategy": "longest_first",
64
+ "unk_token": "[UNK]"
65
+ }
vocab.txt ADDED
The diff for this file is too large to render. See raw diff