Задача
Компании была нужна минимальная рабочая версия внутреннего веб-сервиса:
сотрудник заходит по ссылке, вводит данные и получает готовый текст или отчёт,
сгенерированный языковой моделью. Заказчик искал одного исполнителя на весь
цикл — от бэкенда до развёрнутого и работающего сайта.
Что было сделано
Бэкенд и база данных. Спроектировал схему данных и логику сервиса, сделал
авторизацию для сотрудников, подключил PostgreSQL.
Интеграция с языковой моделью. Подключил LLM API и настроил системные промпты
так, чтобы ответы приходили строго в шаблоне компании. Промпты собраны с
расчётом на экономию токенов — расход на API остаётся предсказуемым.
Интерфейс. Сделал минималистичный дашборд по сценарию «вход → ввод данных →
результат». Интерфейс здесь служебный, поэтому важно было, чтобы сотрудник
разбирался в нём без обучения.
Развёртывание. Упаковал проект в Docker Compose, развернул на VPS заказчика,
привязал домен, выпустил SSL-сертификат и закрыл неиспользуемые порты.
Передача. Оставил короткую памятку: как перезапустить контейнеры и где
смотреть логи.
Результат
Сервис работает на сервере заказчика круглосуточно. Сотрудники пользуются им
по ссылке, инфраструктура от них полностью скрыта. Проект сдан в оговорённый
срок — 10 дней.
Стек: Python, FastAPI, PostgreSQL, Docker Compose, LLM API, Nginx,
HTML / CSS / JS / React.