Я разрабатываю приложение Python, использующее Flask и работающее в контейнере Docker на сервере Linux с NGINX. Приложение отлично работает на моем локальном компьютере, но когда я развертываю его на сервере, я сталкиваюсь со следующей ошибкой:
ОШИБКА:app:Exception: Traceback ( последний вызов последний): File
"/app/app.py", строка 32, в анализе_face
analyzer = FaceFeatureAnalyzer() # Создайте здесь экземпляр File "/app/face_feature_analyzer/main_face_analyzer.py", строка 43, в файле
init
self.face_app = FaceAnaанализ(name='antelopev2', root=self.model_root)
"/usr/local/lib/python3.9/site-packages/insightface/app/face_anaанализ.py",
строка 43, в init
укажите «обнаружение» в self.models AssertionError
Вот код
class FaceFeatureAnalyzer:
def __init__(self):
self.model_root = "/root/.insightface"
self.model_path = os.path.join(self.model_root, "models/antelopev2")
self.zip_path = os.path.join(self.model_root, "models/antelopev2.zip")
self.model_url = "https://github.com/deepinsight/insightf ... lopev2.zip"
# Initialize FaceAnalysis
self.face_app = FaceAnalysis(name='antelopev2', root=self.model_root)
self.face_app.prepare(ctx_id=0, det_size=(640, 640))
Я также пытался загрузить его в тот же каталог, но эта попытка также приводит к той же ошибке. Вот что я дополнительно пробовал
class FaceFeatureAnalyzer:
def __init__(self):
# Initialize the InsightFace model
self.face_app = FaceAnalysis(name='antelopev2')
self.face_app.prepare(ctx_id=0, det_size=(640, 640))
logger.info("Initialized FaceAnalysis with model 'antelopev2'.")
Что я наблюдал и пробовал:
Журналы загрузки и извлечения модели:
• Во время запуска загружается модель antelopev2 и извлечен в /root/.insightface/models/antelopev2. Логи это подтверждают:
Download completed.
Extracting /root/.insightface/models/antelopev2.zip to /root/.insightface/models/antelopev2...
Extraction completed.
Однако при проверке каталога он оказывается пустым или программа не может обнаружить модели.
Добавление моделей вручную
Раньше проблема решалась при загрузке модели antelopev2 вручную и размещении ее в /root/.insightface/models/antelopev2. Я также установил соответствующие разрешения, используя:
chmod -R 755 /root/.insightface/models/antelopev2
После обновления кодовой базы и пересборки контейнера Docker проблема возникла снова.
Содержимое каталога:
Следующие файлы существуют в /root/.insightface/models/antelopev2:#
1k3d68.onnx
2d106det.onnx
genderage.onnx
glintr100.onnx
scrfd_10g_bnkps.onnx
Это ожидаемые файлы .onnx для antelopev2.
Приложение работает локально без каких-либо ошибок. Проблема возникает только в контейнере Docker на сервере Linux.
Несмотря на то, что файлы присутствуют и разрешения установлены правильно, приложение, похоже, не может их обнаружить. Как я могу отладить или устранить эту проблему?
Dockerfile
FROM python:3.9-slim
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
# Set the working directory in the container
WORKDIR /app
# Install system dependencies including libgl1-mesa-glx and others
RUN apt-get update && apt-get install -y --no-install-recommends \
libgl1-mesa-glx \
libglib2.0-0 \
g++ \
build-essential \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
# Copy the requirements file into the container
COPY requirements.txt /app/
# Install Python dependencies
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
# Copy the rest of the application code into the container
COPY . /app
EXPOSE 7002
# Run the Flask application
CMD ["python", "app.py"]
Docker-compose.yml
version: '3.8'
services:
flask-app:
build:
context: ./backend
container_name: flask-app
ports:
- "7000:7000"
environment:
- FLASK_RUN_HOST=0.0.0.0
- FLASK_RUN_PORT=7000
volumes:
- ./backend:/app
depends_on:
- nginx
nginx:
image: nginx:latest
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx:/etc/nginx/sites-enabled
- ./nginx-certificates:/etc/letsencrypt
Подробнее здесь: https://stackoverflow.com/questions/793 ... docker-con
AssertionError: «обнаружение» в self.models с использованием InsightFace в контейнере Docker Linux ⇐ Python
Программы на Python
1734982087
Anonymous
Я разрабатываю приложение Python, использующее Flask и работающее в контейнере Docker на сервере Linux с NGINX. Приложение отлично работает на моем локальном компьютере, но когда я развертываю его на сервере, я сталкиваюсь со следующей ошибкой:
ОШИБКА:app:Exception: Traceback ( последний вызов последний): File
"/app/app.py", строка 32, в анализе_face
analyzer = FaceFeatureAnalyzer() # Создайте здесь экземпляр File "/app/face_feature_analyzer/main_face_analyzer.py", строка 43, в файле
[b]init[/b]
self.face_app = FaceAnaанализ(name='antelopev2', root=self.model_root)
"/usr/local/lib/python3.9/site-packages/insightface/app/face_anaанализ.py",
строка 43, в [b]init[/b]
укажите «обнаружение» в self.models AssertionError
Вот код
class FaceFeatureAnalyzer:
def __init__(self):
self.model_root = "/root/.insightface"
self.model_path = os.path.join(self.model_root, "models/antelopev2")
self.zip_path = os.path.join(self.model_root, "models/antelopev2.zip")
self.model_url = "https://github.com/deepinsight/insightface/releases/download/v0.7/antelopev2.zip"
# Initialize FaceAnalysis
self.face_app = FaceAnalysis(name='antelopev2', root=self.model_root)
self.face_app.prepare(ctx_id=0, det_size=(640, 640))
Я также пытался загрузить его в тот же каталог, но эта попытка также приводит к той же ошибке. Вот что я дополнительно пробовал
class FaceFeatureAnalyzer:
def __init__(self):
# Initialize the InsightFace model
self.face_app = FaceAnalysis(name='antelopev2')
self.face_app.prepare(ctx_id=0, det_size=(640, 640))
logger.info("Initialized FaceAnalysis with model 'antelopev2'.")
[b]Что я наблюдал и пробовал:[/b]
Журналы загрузки и извлечения модели:
• Во время запуска загружается модель antelopev2 и извлечен в /root/.insightface/models/antelopev2. Логи это подтверждают:
Download completed.
Extracting /root/.insightface/models/antelopev2.zip to /root/.insightface/models/antelopev2...
Extraction completed.
Однако при проверке каталога он оказывается пустым или программа не может обнаружить модели.
[b]Добавление моделей вручную
Раньше проблема решалась при загрузке модели antelopev2 вручную и размещении ее в /root/.insightface/models/antelopev2. Я также установил соответствующие разрешения, используя:
chmod -R 755 /root/.insightface/models/antelopev2
После обновления кодовой базы и пересборки контейнера Docker проблема возникла снова.
Содержимое каталога:[/b]
Следующие файлы существуют в /root/.insightface/models/antelopev2:#
1k3d68.onnx
2d106det.onnx
genderage.onnx
glintr100.onnx
scrfd_10g_bnkps.onnx
Это ожидаемые файлы .onnx для antelopev2.
Приложение работает локально без каких-либо ошибок. Проблема возникает только в контейнере Docker на сервере Linux.
Несмотря на то, что файлы присутствуют и разрешения установлены правильно, приложение, похоже, не может их обнаружить. Как я могу отладить или устранить эту проблему?
Dockerfile
FROM python:3.9-slim
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
# Set the working directory in the container
WORKDIR /app
# Install system dependencies including libgl1-mesa-glx and others
RUN apt-get update && apt-get install -y --no-install-recommends \
libgl1-mesa-glx \
libglib2.0-0 \
g++ \
build-essential \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
# Copy the requirements file into the container
COPY requirements.txt /app/
# Install Python dependencies
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
# Copy the rest of the application code into the container
COPY . /app
EXPOSE 7002
# Run the Flask application
CMD ["python", "app.py"]
Docker-compose.yml
version: '3.8'
services:
flask-app:
build:
context: ./backend
container_name: flask-app
ports:
- "7000:7000"
environment:
- FLASK_RUN_HOST=0.0.0.0
- FLASK_RUN_PORT=7000
volumes:
- ./backend:/app
depends_on:
- nginx
nginx:
image: nginx:latest
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx:/etc/nginx/sites-enabled
- ./nginx-certificates:/etc/letsencrypt
Подробнее здесь: [url]https://stackoverflow.com/questions/79301659/assertionerror-detection-in-self-models-using-insightface-on-linux-docker-con[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия