Рерайтер-image

Рерайтер
Бесплатно

Модель рерайтинга для текстов разной длины и доменов

Лицензия

Apache 2.0

Размер файлов

2.95 GB

Версия

0.2

Описание

Модель Rewriter умеет переписывать текст другими словами, при этом сохраняет смысл исходного текста. Rewriter решает задачу перефразирования текста и работает с последовательностями разной длины и доменов. Например, нами тестировались тексты новостей, художественной литературы, отзывы и комментарии из соц сетей.

Рерайтер был обучен с помощью ruT5-large на текстах разной длины (как на уровне предложений, так и текстовых параграфов), из источников: новостных, разговорных, отзывов, художественной литературы; также были добавлены данные из открытых источников (отфильтрованные tapaco, ParaphraserPlus).

Характеристики:

  • Размер файлов: 2.95 GB
  • Модель GPU: V 100
  • Фреймворк: pytorch
  • Tags: rewriter, ruT5, pytorch, natural language generation, NLP
  • Формат: checkpoint
  • Версия: 0.2

Использование

Базовое использование модели подразумевает работу с уже обученной моделью в режиме инференса. Модель умеет переписывать переданный текст. На вход подается оригинальный текст с настраиваемыми параметрами генерации, рерайтер генерирует кандидатов, выбирает из них лучшего и возвращает финальный рерайт.

Пользователь может выбрать кол-во генерируемых параметров, а также стратегию выбора лучшего кандидата: 1) либо через метрику BertScore 2) либо через нами обученный классификатор на основе модели Roberta-large. Если метод ранжирования не выбран, то выбирается лучший сгенерированный вариант по обоим метрикам.

Входные параметры инференса:

`text` - оригинальный текст для переписывания
`temperature" - параметр температуры текста для генерации. дефолтное значение 0.95
`top_k` - параметр top_k текста для генерации. дефолтное значение 50
`top_p` - параметр top_p текста для генерации. дефолтное значение 0.90
`repetition_penalty` - штраф за повторные реплики. дефолтное значение 1.5
`num_return_sequences` - кол-во примеров, из которых выбирается лучший рерайт. дефолтное значение 5
`range_mode` - выбор режима ранжирования кандидатов ("all", "bertscore", "classifier"). дефолтное значение all

Выходные параметры инференса. Возвращается словарь со следующими полями:

`predictions_all` - все удачные перефразированные варианты текста
`origin` - оригинальный текст
`prediction_best` - лучший сгенерированный вариант по одной из метрик (bertscore, классификатор)

Примеры:

Запрос:
{"instances":
    [{
        "text": "Режим нерабочих дней, по заключениям экспертов, может прервать цепочку заражений коронавирусом, заявил пресс-секретарь президента России Дмитрий Песков.",
        "temperature": 0.9,
        "top_k": 50,
        "top_p": 0.7,
        "range_mode": "bertscore"
     }]
})

Результат:
{'origin': 'Режим нерабочих дней, по заключениям экспертов, может прервать цепочку заражений коронавирусом, заявил пресс-секретарь президента России Дмитрий Песков.', 'predictions_all': ['Песков: режим нерабочих дней может остановить цепочку заражений коронавирусом', 'Дмитрий Песков заявил, что режим нерабочих дней может остановить цепочку заражений коронавирусом', 'Песков: режим нерабочих дней может нарушить цепочку заражений коронавирусом', 'Песков считает, что режим нерабочих дней может прервать цепочку заражений коронавирусом в России.', 'Песков рассказал о возможном прекращении цепочки заражений коронавирусом в России'], 'prediction_best': {'bertscore': 'Песков считает, что режим нерабочих дней может прервать цепочку заражений коронавирусом в России.', 'classifier': ''}}
Запрос:
{"instances":
    [{
        "text": "Неудачно подобрана картинка в качестве описания товара! На самом деле джинсы по фасону широкие в талии и больше подойдут девушкам невысокого роста. По составу очень добротные - преобладает хлопок, но и эластана достаточно. Цвет насыщенно черный.  Размерная сетка неточная на размер, а учитывая свободу кроя в талии и в бедрах даже на два. Я брала по размерной сетке на 44 (российский), а оказались на 48 размер. Продавцом довольна! Спасибо за Вашу работу!",
        "num_return_sequences": 4,
        "range_mode": "classifier"
    }]
}

Результат:
{'origin': 'Неудачно подобрана картинка в качестве описания товара! На самом деле джинсы по фасону широкие в талии и больше подойдут девушкам невысокого роста. По составу очень добротные - преобладает хлопок, но и эластана достаточно. Цвет насыщенно черный.  Размерная сетка неточная на размер, а учитывая свободу кроя в талии и в бедрах даже на два. Я брала по размерной сетке на 44 (российский), а оказались на 48 размер. Продавцом довольна! Спасибо за Вашу работу!', 'predictions_all': ['Неудачно подобрана картинка для описания товара. На самом деле джинсы по фасону узкие, меньше подойдут невысоким девушкам. Клей "Эль-Гран" немного уступает хлопку, но эластана хватает. Размерная сетка неточная на размер и даже два... Я брала 44 размер, а оказалось на 48. Спасибо!', 'Испортили описание товара, на самом деле джинсы по фасону широкие в талии и больше подойдут девушкам невысокого роста. Натуральный состав - хлопок, но и эластана в достаточном количестве. Цвет насыщенно черный... В прайсе указали 48 размер, а выкрутились на 44.', 'Неудачно подобрана картинка. Идеальным является лишь описание товара, и оно имеет мало общего с реальной моделью джинсов по талии... В составе - хлопок, эластан и ацетат. Цвет насыщенно черный с серым оттенком (нарядный синий). Размерная таблица неточная на размер: два минус одна нога в бедрах — это полтора размера! Я брала по размерной сетке 44 (российский), а на выходе оказалась 48 размера. Спасибо!', 'Неудачно подобрана картинка для описания товара. На самом деле джинсы по фасону узкие, меньше подойдут невысоким девушкам. Натуральный состав - хлопок, но и эластана в достаточном количестве. Цвет насыщенно черный... Я брала по размерной сетке 44 (российский), а на выходе оказалась 48 размера. Спасибо!'], 'prediction_best': {'bertscore': '', 'classifier': 'Неудачно подобрана картинка для описания товара. На самом деле джинсы по фасону узкие, меньше подойдут невысоким девушкам. Натуральный состав - хлопок, но и эластана в достаточном количестве. Цвет насыщенно черный... Я брала по размерной сетке 44 (российский), а на выходе оказалась 48 размера. Спасибо!'}}
Запрос:
{"instances":
    [{
        "text": "Я так хочу на свою работу, так её люблю!",
        "num_return_sequences": 10
    }]
}

Результат:
{'origin': 'Я так хочу на свою работу, так её люблю!',
 'predictions_all': ['Я так хочу быть на своем месте, такая она мне нравится!',
  'Я так хочу работать, люблю!',
  'Я так хочу на работу, я её люблю!',
  'Я так хочу на работу, я ее люблю!',
  'Я так хочу на свою работу, я её люблю!',
  'Я так хочу, чтобы моя работа была моей работой ',
  'Я так хочу на свою работу, что безумно её люблю!',
  'Я так хочу на свою работу, я её очень люблю!',
  'Я так хочу на свою работу, что меня это не останавливает!',
  'Я так хочу на свою работу, мне её не хватает!'],
 'prediction_best': {'bertscore': 'Я так хочу на работу, я её люблю!',
  'classifier': 'Я так хочу на свою работу, я её очень люблю!'}}

Метрики

Для пар [оригинальный текст; сгенерированный текст] автоматические метрики:

Mean Bleu - средняя оценка по всем текстам метрики BLEU (BLEU-1)

Mean Rouge - средняя оценка по всем текстам метрики ROUGE(ROUGE-L)

Bert score - средняя оценка по всем текстам метрики BertScore

Mean labse score - средняя оценка по всем текстам метрики LABSE

Sentence repeat - процент предложений схожих с оригинальным текстом

Автоматические метрики сгенерированных текстов


DATABERTscoreBleuLABSERouge-LSentence repeat
Rewriter (classifier range method)0.770.150.8520.420.019

Человеческая оценка сгенерированных текстов


Метод ранжированияGrammarMeaningOriginality
классификатор0.920.640.92
bertscore0.920.740.87

Человеческая оценка модели с разным типом выбора кандидата. Оценка производилась на Яндекс.Толоке, спрашивалось насколько сгенериованный текст 1) грамматичен (Grammar) 2) оригинален (Originality) 3) передает смысл (Meaning)

Полезные ссылки

  • Статья от разработчиков сервиса о практическом применении генеративных моделей и создании "Суммаризатора"
  • Статья про тестирование моделей от контент-менеджера "Меня скоро заменит AI. Почему это офигенно?"

Дисклеймер

При использовании демо рерайтера на базе модели ruT5 Large ответы формируются на автоматической основе. ООО «Облачные технологии» не несет ответственности за точность, релевантность, корректность информации, полученной пользователем посредством данного демо.

Лицензирование

Модель ruT5 Large, на основе которой сделан сервис, и ее исходный код поставляются на основе открытой лицензии Apache 2.0

Apache 2.0

Обратная связь

Круглосуточная поддержка по телефону 8 800 444-24-99, почте support@cloud.ru и в Telegram