Face Detection — это сервис, предназначенный для поиска лиц на изображениях. Сервис принимает изображения, отправляет их на внешний сервис FaceCloud для обработки, получает результаты и сохраняет их в базу данных.
- FastAPI — веб-фреймворк для создания высокопроизводительных API на Python.
- SQLAlchemy — ORM для взаимодействия с базой данных с использованием асинхронных запросов.
- Docker — контейнеризация приложения для упрощения его развертывания и управления.
- Poetry — менеджер зависимостей для Python, который упрощает установку и управление зависимостями проекта.
Клонируйте проект на локальную машину:
git clone https://github.com/ProkhorKondratev/face_detection.git
cd face_detection
Для запуска приложения с использованием Docker выполните следующую команду:
docker compose up -d
Примечание: В зависимости от настроек системы может потребоваться использование прав суперпользователя, например
sudo docker compose up -d
.
Альтернативный способ запуска — использовать Poetry:
Создайте виртуальное окружение и укажите версию Python 3.12:
poetry env use python3.12
Установите зависимости:
poetry install
Активируйте окружение:
poetry shell
Запустите приложение:
- В обычном режиме:
fastapi run
- В режиме разработки:
fastapi dev
Теперь сервис будет доступен по адресу: http://127.0.0.1:8000.
Сервис настроен для взаимодействия с внешним API для распознавания лиц. Убедитесь, что все необходимые переменные окружения (например, для доступа к FaceCloud API, DB_HOST) корректно заданы в файле .env
.