Специалист по машинному обучению создал модель для
апскейлинга
изображений и функцию, которая позволяет ее использовать.
Файлы проекта находится здесь.
EDSR_2.pb
- модель.
В модуле upscale.py
находится функция upscale
, которая имплементирует модель и функция example
с примером использования.
В файле requirements.txt
перечислены зависимости
Перед Вами стоит задача написать сервис для апскейлинга изображений на базе Flask, Celery и ИИ модели. Должно быть реализовано 3 роута
- POST
/upscale
. Принимает файл с изображением и возвращает id задачи - GET
/tasks/<task_id>
возвращает статус задачи и ссылку на обработанный файл, если задача выполнена - GET
/processed/{file}
возвращает обработанный файл
Дополнительные задачи:
- перепишите функцию
upscale
так, чтобы файлEDSR_x2.pb
считывался только один раз, а не при каждом вызове функции - попробуйте написать сервис и функцию
upscale
таким образом, чтобы не сохранять файлы изображений на диск - докеризируйте приложение
- напишите тесты
docker-compose up redis
Должна быть строка:
redis-1 | 1:M 08 Feb 2024 14:24:36.869 * Ready to accept connections
В другой вкладке терминала запускаем celery
docker-compose --env-file .env.test up celery
Должен получится вывод без ошибок
В другой вкладке терминала запускаем приложение
docker-compose --env-file .env.test up app
Можно запустить все приложение сразу:
docker-compose --env-file .env.test up app