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

Задача
Тут проще показать как есть:

Решение
По заданию работаем только с выделенным текстом. Нужно дать возможность исправить в нём ошибки, сократить, сделать длиннее или переписать другими словами. Тут делаю пару предположений:
Доработка текста с помощью нейронки не происходит в одну команду. На это нужно несколько итераций, поэтому в интерфейсе нужно дать возможность крутануть варианты текста командами и выбрать подходящий.
Проверять сгенерированный текст на грамматику не нужно
Отсюда в интерфейсе вижу два сценария работы с AI-помощником:
1. улучшение текста
2. исправление ошибок.
Точка входа
Так как работаем только с выделенным текстом, обе фичи попали в привычную всплывашку с форматированием текста:
1. Улучшение текста
Для редактирования текста с нейронкой проваливаемся в отдельную менюшку. В ней можем крутить текст как хотим нашим набором команд и переключаться между предложенными вариантами:
Сгенерированный текст всегда заменяет предыдущий вариант, чтобы экономить время и не требовать подтверждения. Если нейронка зашла не туда, можно откатиться стрелочками в меню или со святым Ctrl + Z.
А чтобы выйти из режима улучшения достаточно снять выделение с текста.
Дополнительная приколюха
Пока помощник генерирует новую порцию текста, мы можем использовать статус сохранения для коммуникации с автором. Где-то в основной менюшке оно будет напрягать, а здесь самый кайф.
2. Исправление ошибок
Тут все проще. Выделяем текст и исправляем ошибки, готово.
Отсутствие опечаток и грамматических ошибок здесь самое важное для автора. А нейронка неплохо их исправляет, поэтому можно не грузить человека примерами и количеством ошибок. Достаточно подсветить зелёной галочкой, что в тексте нет ошибок.
Если снять выделение с текста и выделить его снова, галочка пропадёт, так как закончится сессия работы с выделенным куском текста, аналогично с функцией улучшения.
Делитесь мнением о таких фичах, может и Хабру нужно что-то схожее?