- паспорт: сервис объявлен архивом с бессрочным хранением записей и текстов, машинная вычитка расшифровки внутри границ, приложение — основной вход; добавлены две границы: не файловое хранилище общего назначения и не биллинг; - заведены цели upload-reliability, user-settings, usage-stats и тринадцать задач; очередь пересобрана — сперва починки, затем разведки о хранилище, затем доступ и владелец, и только потом экраны; - архитектура: четыре новых открытых вопроса — приём большого файла, учёт расхода, срок хранения, потолок шести часов.
39 lines
2.8 KiB
Markdown
39 lines
2.8 KiB
Markdown
# ✨ Отдавать вычитанный текст рядом с сырым
|
||
|
||
- **Тип:** feature
|
||
- **Категория:** Очередь
|
||
- **Зачем:** Сырая расшифровка идёт без знаков препинания, с повторами и словами-паразитами: читать её подряд тяжело, а другого уровня текста нет.
|
||
- **Теги:** goal:text-insights
|
||
|
||
Двигает пункт «Завершения» цели про литературный текст: у записи появляется
|
||
второй уровень — тот же разговор, вычитанный до читаемого вида.
|
||
|
||
Вычитку считает та же внешняя модель, что заголовок и темы. Сырой текст
|
||
остаётся и не переписывается: уровни лежат рядом, а не поверх друг друга.
|
||
|
||
## Затрагивает
|
||
|
||
- колонка литературного текста у задачи и её миграция;
|
||
- контракт чтения записи: поле рядом с сырым текстом;
|
||
- шаг выводов из текста: ещё одно обращение к модели;
|
||
- экран чтения записи: переключение между уровнями;
|
||
- ответ бота: какой из уровней уходит в Telegram.
|
||
|
||
## Критерии приёмки
|
||
|
||
- У дошедшей до `done` записи есть литературный текст, а сырой остался
|
||
нетронутым. Оракул — тест конвейера на подставной модели: оба поля заполнены,
|
||
сырое совпадает с ответом распознавания.
|
||
- Отказ модели на вычитке не роняет задачу и не портит сырой текст. Оракул —
|
||
тест с моделью, возвращающей ошибку: задача в `done`, сырой текст на месте.
|
||
- Выключенный в настройках уровень не запрашивается и остаётся пустым. Оракул —
|
||
тест с выключенной вычиткой: обращений за ней нет.
|
||
- Экран показывает оба уровня с переключением между ними. Оракул — тест экрана
|
||
на подставном API.
|
||
|
||
## Рамки
|
||
|
||
Ручной правки текста человеком не делаем — это граница паспорта: сервис отдаёт
|
||
машинную вычитку, а редактором не становится. Берётся после
|
||
`llm-insights-adapter`: клиент модели заводит она.
|