File size: 3,432 Bytes
fb0aaae 9e65a9a fda037a 9e65a9a fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 fda037a e0bc537 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
---
language:
- ru
library_name: sentence-transformers
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- sentence-similarity
- feature-extraction
widget: []
license: cc-by-nc-2.0
metrics:
- mse
base_model: ai-forever/rugpt3medium_based_on_gpt2
---
Эксперимент по использованию модели, наподобие GPT-2, в качестве эмбеддера. Базовая модель: `ai-forever/rugpt3medium_based_on_gpt2`, извлечено первые 6 слоев.
# SentenceTransformer
Это модель [sentence-transformers](https://www.SBERT.net), которая обучена для преобразования предложений и абзацев в плотное векторное пространство размерностью 1024. Она может использоваться для семантического сопоставления текста, семантического поиска, поиска парафраз, классификации текста, кластеризации и других задач.
## Описание Модели
### Основные Характеристики
- **Тип модели:** Sentence Transformer
- **Максимальная длина последовательности:** 2048 токенов
- **Размерность выхода:** 1024
### Полная Архитектура Модели
```python
SentenceTransformer(
(0): Transformer({'max_seq_length': 2048, 'do_lower_case': False}) with Transformer model: GPT2Model
(1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
```
## Использование
### Прямое Использование (Sentence Transformers)
Для начала установите библиотеку Sentence Transformers:
```bash
pip install -U sentence-transformers
```
Затем загрузите эту модель и выполните инференс.
```python
from sentence_transformers import SentenceTransformer
# Загрузка модели с 🤗 Hub
model = SentenceTransformer("Ponimash/gpt_text_embd")
# Запуск инференса
sentences = [
'Погода сегодня прекрасная.',
'На улице так солнечно!',
'Он поехал на стадион.',
]
embeddings = model.encode(sentences)
print(embeddings.shape)
# [3, 1024]
# Получение оценок схожести для эмбеддингов
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [3, 3]
```
### Результаты
```python
# Выходная размерность: 1024
tensor([[1.0000, 0.6575, 0.4605],
[0.6575, 1.0000, 0.4683],
[0.4605, 0.4683, 1.0000]])
SentenceTransformer(
(0): Transformer({'max_seq_length': 2048, 'do_lower_case': False}) with Transformer model: GPT2Model
(1): Pooling({'word_embedding_dimension': 1024, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False, 'pooling_mode_weightedmean_tokens': False, 'pooling_mode_lasttoken': False, 'include_prompt': True})
)
``` |