Этот раздел — не готовая инструкция по установке (см. пояснение в
«Локальное развёртывание»), а честный ответ на
вопрос «сколько ресурсов закладывать» на уровне порядка величины —
точный расчёт под ваш университет делается вместе с вами перед проектом.
Из чего состоит платформа
- Backend — приложение на Node.js, без состояния между процессами
(сессии в JWT, не в памяти сервера) — можно запускать несколько
экземпляров параллельно для отказоустойчивости и нагрузки.
- PostgreSQL 15 с расширением
pgvector — основное хранилище данных
и векторный поиск для функции обучения на прошлых оценках.
- Обратный прокси (nginx или аналог) — маршрутизация API и статики,
завершение TLS.
- Файловое хранилище — загруженные документы студентов/преподавателей.
Как ресурсы масштабируются
Платформа рассчитана на постепенное масштабирование по мере роста числа
активных преподавателей — конкретные цифры под ваш университет мы
прорабатываем вместе с вами перед проектом, в зависимости от их числа и
интенсивности использования (в первую очередь — сколько преподавателей
одновременно проверяют работы).
| Масштаб |
Что меняется |
| Небольшой университет / пилот |
Один компактный сервер — backend, PostgreSQL и прокси на одной машине |
| Средний университет |
Тот же состав компонентов, но несколько экземпляров backend вместо одного и настройка PostgreSQL под доступную память |
| Крупный университет / несколько тысяч преподавателей |
Обсуждается отдельно — на этом масштабе имеет смысл выносить отдельные компоненты (например, хранилище счётчиков ограничения запросов) на отдельные ресурсы |
Диск растёт в первую очередь за счёт загруженных документов и резервных
копий базы данных — конкретная скорость роста зависит от того, сколько
работ загружается и в каком формате (сканы существенно тяжелее текстовых
документов), фиксированной цифры здесь нет.
Что нужно из программного окружения
- Node.js 20.
- PostgreSQL 15 с установленным
pgvector.
- Docker — актуальная сборка разворачивается как контейнер, а не
устанавливается напрямую в систему.
Сеть
Даже без учёта хостинга самих моделей, ряд функций сегодня обращается к
внешним сервисам напрямую — это стоит учитывать при планировании
сетевых ограничений:
- Векторные представления текста (embeddings) для функции обучения на
прошлых оценках сегодня всегда считаются через Yandex Cloud, независимо
от того, какая языковая модель используется для самой проверки —
технически это отдельный вызов от проверки работ.
- Отправка email (приглашения, уведомления) идёт через внешний
почтовый сервис, если не настроен собственный SMTP.
Полный список внешних зависимостей и то, что для каждой из них означает
локальное развёртывание, — предмет совместной технической оценки перед
проектом, а не фиксированный список сегодня.
Модели и GPU — не публикуем общих цифр
Требования к GPU для размещения языковых моделей на вашей стороне (модель,
количество, объём видеопамяти, стек инференса) существенно зависят от
ожидаемой нагрузки и требований к качеству — мы сознательно не публикуем
общие оценки, чтобы не создавать ложных ожиданий. Эти цифры определяются
в ходе короткой технической оценки перед проектом, вместе с вами.
Если вам интересно локальное развёртывание — напишите через
форму обратной связи, и мы обсудим цифры под ваш конкретный
случай.