Промышленная эксплуатация
Что нужно для устойчивой работы в школах: масштаб, безопасность, качество релизов и организационный контур.
Текущая версия TeacherFlow — рабочий MVP на выделенной инфраструктуре с HTTPS, мониторингом готовности сервиса и автоматическим контролем качества генерации при обновлениях. Ниже — что это значит для школы и партнёра и что планируется для устойчивой эксплуатации и роста нагрузки.
Текущее состояние
- Веб-приложение: teacherflow.ru
- API: api.teacherflow.ru
- Публичные раздачи: share.teacherflow.ru
- Асинхронная генерация с ограничением одновременных обращений к языковой модели
- Защита от повторного запуска одного и того же комплекта (идемпотентность запросов)
- Бюджет времени на один комплект генерации, чтобы интерфейс не «зависал» бесконечно
- Эталонный набор как обязательный контроль перед релизом
Это достаточно для пилота 1–2 школ и демонстрации кейса. Для десятков школ и сотен параллельных генераций нужны шаги из следующих разделов.
Масштабируемость и надёжность
Уже заложено:
- Очередь генерации в фоне — учитель видит статус, а не блокирующее окно.
- Лимит параллельных запросов к GigaChat — защита от перегрузки провайдера.
- Повторные запросы с теми же параметрами не создают дубликатов комплектов.
План при росте нагрузки:
- Горизонтальное масштабирование API и при необходимости выделенная очередь задач.
- Redis (или аналог) — общие rate limits между воркерами, кэш результата анализа эталона; в MVP лимиты in-process, данные генерации в PostgreSQL.
- Кэширование разбора эталона при повторной генерации вариантов к тому же заданию.
- Пакетные проверки и шаблоны для типовых числовых задач — снижение времени и стоимости.
- Нагрузочное тестирование: десятки учителей, параллельные генерации, мониторинг задержек модели.
Цель — чтобы пиковая нагрузка (например, вечер перед контрольной) не приводила к отказам и непредсказуемым таймаутам.
Безопасность и данные
Уже в базе:
- Вход по JWT, HTTPS на всех публичных доменах.
- Секреты (ключи API, пароли БД) только в защищённом окружении сервера и CI, не в открытом коде.
- Минимизация персональных данных в MVP: в классе хранится отображаемое имя, которое вводит учитель; нет обязательных полей «ФИО по паспорту», телефонов родителей, адресов.
- Correlation ID в запросах — для разбора инцидентов по логам.
Перед массовым школьным пилотом:
- Оформленная политика обработки данных и соответствие требованиям к работе с несовершеннолетними (в т.ч. 152-ФЗ) — согласование с юристами и школой.
- Сроки хранения классов, назначений и логов; процедура удаления по запросу.
- Регулярный аудит зависимостей и ротация ключей доступа к модели.
- Регламент реагирования на инциденты (сбой модели, утечка, недоступность).
Подробнее о границах продукта для заказчика — в разделе Границы и честные ожидания.
Качество и сопровождение
- Эталонный набор и антипримеры — обязательный gate на каждом релизе, меняющем генерацию или проверки.
- Расширение эталонного набора перед обещанием «того же качества» на новый класс или предмет.
- Runbook для команды: что делать при деградации GigaChat, как включить упрощённый режим, как сообщить школе.
- Статус-страница или канал для администратора школы при плановых работах.
Методика качества — в статье Методология контроля сложности.
Организационный контур
- Пилот 1–2 школы → сбор метрик и обратной связи → доработки → расширение.
- Согласование с методистами — особенно перед этапами диагностики и дозадач (см. План развития).
- Документация для администратора — развёртывание, резервное копирование БД, восстановление (для self-hosted или выделенного инстанса партнёра).
- Интеграции (экосистема СберОбразования, электронный журнал, экспорт в привычные форматы) — после подтверждённой ценности в пилоте, не как условие первого запуска.
API для партнёров
REST API на api.teacherflow.ru позволяет в перспективе встраивать генерацию и назначение в другие платформы. Для пилота достаточно веб-интерфейса; интеграционные проекты — с отдельным техническим согласованием и SLA.
Доступ к API и схема — в статье Ресурсы и доступ.
Что обсудить перед подписанием пилота
- Кто в школе ответственный за ввод имён в класс (и в каком виде — псевдонимы допустимы).
- Нужен ли только генератор или также сценарий раздачи и ключей.
- Ожидания по хранению данных и срокам.
- Метрики успеха пилота (время, доля принятых без правок, опрос учителя).
- Контакт для эскалации при сбоях.
Эти пункты согласуются до старта, без обещаний, не подкреплённых измерением.
