Closed FabricioTeran closed 6 months ago
Hello @FabricioTeran - some more info is needed to figure out what is the problem. I understand that you are using Eynollah via Docker - I assume with a Linux-based container? How did you install Eynollah, from source or from a release via PyPi? What error message is being shown when you try to run Eynollah via the command line?
Thank you for the fast answer, im in ubuntu 22.04, with last version of docker and docker desktop, mi Dockerfile looks like:
FROM ubuntu:22.04
ENV TZ=US \
DEBIAN_FRONTEND=noninteractive
#Python 3.9.1 install
RUN apt update
RUN apt install -y build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev
RUN apt install -y wget curl llvm libncurses5-dev libncursesw5-dev xz-utils
RUN apt install -y tk-dev libffi-dev liblzma-dev python3-openssl git
WORKDIR /python39
RUN wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz ;\
tar -xf Python-3.9.1.tgz
WORKDIR /python39/Python-3.9.1
RUN ./configure --enable-optimizations
RUN make -j$(nproc)
RUN make install
RUN python3.9 -m pip install tensorflow[and-cuda]
WORKDIR /app
#eynollah install
RUN wget https://qurator-data.de/eynollah/2022-04-05/models_eynollah_renamed_savedmodel.tar.gz ;\
tar -xvzf models_eynollah_renamed_savedmodel.tar.gz
RUN python3.9 -m pip install eynollah
WORKDIR /mon
My docker-compose.yml looks like:
services:
app:
build: .
image: ubupy39cuda
volumes:
- ./:/mon
The /mon folder is a bind mount, and the image im65.tiff is inside, running an ls
inside container shows up the file, so file must be visible for the program. And it's the same with the folder that contains the model.
And inside the container i run eynollah -i ./im65.tiff -o ./ -m /app/models_eynollah_renamed_savedmodel -fl
but it doesnt even show any errors, simply does nothing
Thanks. Still investigating...but at least I found out that Tensorflow >=2.16 pulls Keras 3, with which we are not yet compatible.
Can you please try with a Tensorflow version between 2.12 and 2.15?
Hi, i have tried with tensorflow 2.12 and now works fine, it doesnt work with tensorflow 2.14 nor 2.15 with something related to keras.backend that cannot import some function, the log was:
from keras.backend import set_session ImportError: cannot import name 'set_session' from 'keras.backend' (/usr/local/lib/python3.9/site-packages/keras/backend/__init__.py)
Thank you for reporting back. Glad to hear it works for you with tensorflow 2.12, which I have pinned for now until we can fix compatibility with newer TF/Keras versions.
The error should also be gone with the fix from https://github.com/qurator-spk/eynollah/issues/121#issuecomment-2006195102.
We still need to fix a nasty regression before I can make a new release on PyPI, so for now the fix is only applied when installing from source.
Can we close this here?
Hi, sure, close this
Thanks for opening the other question in another issue - this helps us to keep an overview and track progress towards separate issues. Closing this now.
I have tried every possible way to run eynollah but its like i have runed nothing inside docker container, python 3.9, tensorflow 2.16.1 . The program simply doesnt run without logging anything