metadata
pipeline_tag: sentence-similarity
tags:
- sentence-transformers
- feature-extraction
- sentence-similarity
- transformers
language: ru
license: unlicense
widget:
- source_sentence: Кошка ловит мышку
sentences:
- Мышка преследуема кошкой
- Кошка гонится за мышью
- Кошка ловит кайф
SBERT_SYNONYMY
Это sentence-transformers модель, предназначенная для определения синонимичности двух коротких текстов, преимущественно одиночных предложений длиной до 10-15 слов. Часть обучающего датасета доступна в репозитории inkoziev/paraphrases.
Модель вычисляет для текста и вопроса векторы размерностью 312. Косинус угла между этими векторами дает оценку того, насколько они близки по смыслу. В проекте диалоговой системы она используется для определения перефразировок высказыванийи и фактов.
Модель основана на cointegrated/rubert-tiny2. Она имеет очень небольшой размер и быстро выполняет инференс даже на CPU.
Использование с библиотекой (Sentence-Transformers)
Для удобства установите sentence-transformers:
pip install -U sentence-transformers
Чтобы определить синонимичность одной пары предложений, можно использовать такой код:
import sentence_transformers
sentences = ["Кошка ловит мышку.", "Мышка преследуема кошкой."]
model = sentence_transformers.SentenceTransformer('inkoziev/sbert_synonymy')
embeddings = model.encode(sentences)
s = sentence_transformers.util.cos_sim(a=embeddings[0], b=embeddings[1])
print('text={} question={} cossim={}'.format(sentences[0], sentences[1], s))
Контакты и цитирование
@MISC{rugpt_chitchat,
author = {Ilya Koziev},
title = {Paraphrase Detection Model},
url = {https://huggingface.co/inkoziev/sbert_synonymy},
year = 2022
}