mindee / doctr

docTR (Document Text Recognition) - a seamless, high-performing & accessible library for OCR-related tasks powered by Deep Learning.
https://mindee.github.io/doctr/
Apache License 2.0
3.56k stars 417 forks source link

Issue creating h5py wheel when running on M1 MacBook - trying to 'make run' in api directory #1683

Open mamsterla opened 1 month ago

mamsterla commented 1 month ago

Bug description

I do a git clone of of the repo and then cd in the api directory and then type 'make run' - I get the following output. I have tried many ways to define HDF5_DIR which do not seem to pass through to the build process:

.....

54.26 running build_ext 54.26 Building h5py requires pkg-config unless the HDF5 path is explicitly specified using the environment variable HDF5_DIR. For more information and details, see https://docs.h5py.org/en/stable/build.html#custom-installation 54.26 error: pkg-config probably not installed: FileNotFoundError(2, 'No such file or directory') 54.26 [end of output] 54.26
54.26 note: This error originates from a subprocess, and is likely not a problem with pip. 54.26 ERROR: Failed building wheel for h5py 54.26 Building wheel for langdetect (setup.py): started 54.56 Building wheel for langdetect (setup.py): finished with status 'done' 54.56 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993222 sha256=50e7a1af9ba0ef70e13edfcfc87566758157cf2f97746d1707b9bb01bb286397 54.56 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb 54.57 Building wheel for python-doctr (pyproject.toml): started 54.78 Building wheel for python-doctr (pyproject.toml): finished with status 'done' 54.78 Created wheel for python-doctr: filename=python_doctr-0.9.0a0-py3-none-any.whl size=299068 sha256=80c9749bc081db15f718107d6df35d9c5f6f946fd85f7777b2b506d0be77bef3 54.78 Stored in directory: /root/.cache/pip/wheels/4a/b6/9f/1a0c3bf05bcc97eec54dbf7529ae100ea6e1dbff8a74675bd9 54.78 Successfully built langdetect python-doctr 54.78 Failed to build h5py 54.78 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1 make: *** [run] Error 17

Code snippet to reproduce the bug

cd api; make run

Error traceback

Michaels-MacBook-Pro:api mamsterla$ make run docker compose up -d --build WARN[0000] /Users/mamsterla/projects/doctr/api/docker-compose.yml: the attribute version is obsolete, it will be ignored, please remove it to avoid potential confusion [+] Building 55.9s (10/11) docker:desktop-linux => [web internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 672B 0.0s => [web internal] load metadata for docker.io/tiangolo/uvicorn-gunicorn-fastapi:python3.9-slim 0.4s => [web internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [web 1/7] FROM docker.io/tiangolo/uvicorn-gunicorn-fastapi:python3.9-slim@sha256:4b52dafa4cf3560a06e8744adae01d1a2cbac771af2f 0.0s => [web internal] load build context 0.0s => => transferring context: 442B 0.0s => CACHED [web 2/7] WORKDIR /app 0.0s => CACHED [web 3/7] RUN apt-get update && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make -y && 0.0s => CACHED [web 4/7] COPY pyproject.toml /app/pyproject.toml 0.0s => CACHED [web 5/7] COPY Makefile /app/Makefile 0.0s => ERROR [web 6/7] RUN pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt 55.4s


[web 6/7] RUN pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip:
0.838 Requirement already satisfied: pip in /usr/local/lib/python3.9/site-packages (23.0.1)
0.930 Collecting pip
1.004 Downloading pip-24.2-py3-none-any.whl (1.8 MB)
1.212 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 8.8 MB/s eta 0:00:00 1.223 Requirement already satisfied: setuptools in /usr/local/lib/python3.9/site-packages (58.1.0) 1.381 Collecting setuptools 1.395 Downloading setuptools-72.1.0-py3-none-any.whl (2.3 MB) 1.543 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.3/2.3 MB 16.1 MB/s eta 0:00:00 1.551 Requirement already satisfied: wheel in /usr/local/lib/python3.9/site-packages (0.43.0) 1.722 Installing collected packages: setuptools, pip 1.722 Attempting uninstall: setuptools 1.722 Found existing installation: setuptools 58.1.0 1.736 Uninstalling setuptools-58.1.0: 1.752 Successfully uninstalled setuptools-58.1.0 2.133 Attempting uninstall: pip 2.134 Found existing installation: pip 23.0.1 2.177 Uninstalling pip-23.0.1: 2.206 Successfully uninstalled pip-23.0.1 2.622 Successfully installed pip-24.2 setuptools-72.1.0 2.622 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv 2.767 pip install poetry>=1.0 7.781 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning. 8.018 poetry lock 8.522 Creating virtualenv doctr-api-9TtSrW0h-py3.9 in /root/.cache/pypoetry/virtualenvs 8.765 Updating dependencies 8.765 Resolving dependencies... 31.20 31.20 Writing lock file 31.63 export HDF5_DIR=/opt/homebrew/opt/hdf5; poetry export -f requirements.txt --without-hashes --output requirements.txt 31.87 Warning: poetry-plugin-export will not be installed by default in a future version of Poetry. 31.87 In order to avoid a breaking change and make your automation forward-compatible, please install poetry-plugin-export explicitly. See https://python-poetry.org/docs/plugins/#using-plugins for details on how to install a plugin. 31.87 To disable this warning run 'poetry config warnings.export false'. 32.06 poetry export -f requirements.txt --without-hashes --with dev --output requirements-dev.txt 32.29 Warning: poetry-plugin-export will not be installed by default in a future version of Poetry. 32.29 In order to avoid a breaking change and make your automation forward-compatible, please install poetry-plugin-export explicitly. See https://python-poetry.org/docs/plugins/#using-plugins for details on how to install a plugin. 32.29 To disable this warning run 'poetry config warnings.export false'. 32.66 Ignoring colorama: markers 'python_version >= "3.9" and python_version < "3.12" and platform_system == "Windows"' don't match your environment 32.66 Collecting python-doctr@ git+https://github.com/mindee/doctr.git@a659425ea30324bb8d1e5f742dbfe79a12024354 (from python-doctr[tf]@ git+https://github.com/mindee/doctr.git@a659425ea30324bb8d1e5f742dbfe79a12024354->-r /app/requirements.txt (line 47)) 32.66 Cloning https://github.com/mindee/doctr.git (to revision a659425ea30324bb8d1e5f742dbfe79a12024354) to /tmp/pip-install-cqe4s511/python-doctr_c6501bdf5a7b4254ba86460b499f5aaa 32.66 Running command git clone --filter=blob:none --quiet https://github.com/mindee/doctr.git /tmp/pip-install-cqe4s511/python-doctr_c6501bdf5a7b4254ba86460b499f5aaa 34.65 Running command git rev-parse -q --verify 'sha^a659425ea30324bb8d1e5f742dbfe79a12024354' 34.65 Running command git fetch -q https://github.com/mindee/doctr.git a659425ea30324bb8d1e5f742dbfe79a12024354 35.12 Resolved https://github.com/mindee/doctr.git to commit a659425ea30324bb8d1e5f742dbfe79a12024354 35.13 Installing build dependencies: started 36.22 Installing build dependencies: finished with status 'done' 36.22 Getting requirements to build wheel: started 36.38 Getting requirements to build wheel: finished with status 'done' 36.38 Preparing metadata (pyproject.toml): started 36.54 Preparing metadata (pyproject.toml): finished with status 'done' 36.56 Ignoring tensorflow-intel: markers 'python_version >= "3.9" and python_version < "3.12" and platform_system == "Windows"' don't match your environment 36.62 Collecting absl-py==2.1.0 (from -r /app/requirements.txt (line 1)) 36.65 Downloading absl_py-2.1.0-py3-none-any.whl.metadata (2.3 kB) 36.67 Collecting annotated-types==0.7.0 (from -r /app/requirements.txt (line 2)) 36.69 Downloading annotated_types-0.7.0-py3-none-any.whl.metadata (15 kB) 36.71 Collecting anyascii==0.3.2 (from -r /app/requirements.txt (line 3)) 36.72 Downloading anyascii-0.3.2-py3-none-any.whl.metadata (1.5 kB) 36.73 Requirement already satisfied: anyio==4.4.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 4)) (4.4.0) 36.75 Collecting astunparse==1.6.3 (from -r /app/requirements.txt (line 5)) 36.76 Downloading astunparse-1.6.3-py2.py3-none-any.whl.metadata (4.4 kB) 36.78 Collecting cachetools==5.4.0 (from -r /app/requirements.txt (line 6)) 36.79 Downloading cachetools-5.4.0-py3-none-any.whl.metadata (5.3 kB) 36.80 Requirement already satisfied: certifi==2024.7.4 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 7)) (2024.7.4) 36.80 Requirement already satisfied: charset-normalizer==3.3.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 8)) (3.3.2) 36.80 Requirement already satisfied: click==8.1.7 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 9)) (8.1.7) 36.82 Collecting defusedxml==0.7.1 (from -r /app/requirements.txt (line 11)) 36.83 Downloading defusedxml-0.7.1-py2.py3-none-any.whl.metadata (32 kB) 36.83 Requirement already satisfied: exceptiongroup==1.2.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 12)) (1.2.2) 36.89 Collecting fastapi==0.112.0 (from -r /app/requirements.txt (line 13)) 36.90 Downloading fastapi-0.112.0-py3-none-any.whl.metadata (27 kB) 36.91 Requirement already satisfied: filelock==3.15.4 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 14)) (3.15.4) 36.93 Collecting flatbuffers==24.3.25 (from -r /app/requirements.txt (line 15)) 36.94 Downloading flatbuffers-24.3.25-py2.py3-none-any.whl.metadata (850 bytes) 36.97 Collecting fsspec==2024.6.1 (from -r /app/requirements.txt (line 16)) 36.98 Downloading fsspec-2024.6.1-py3-none-any.whl.metadata (11 kB) 37.03 Collecting gast==0.6.0 (from -r /app/requirements.txt (line 17)) 37.04 Downloading gast-0.6.0-py3-none-any.whl.metadata (1.3 kB) 37.06 Collecting google-auth-oauthlib==1.2.1 (from -r /app/requirements.txt (line 18)) 37.07 Downloading google_auth_oauthlib-1.2.1-py2.py3-none-any.whl.metadata (2.7 kB) 37.14 Collecting google-auth==2.32.0 (from -r /app/requirements.txt (line 19)) 37.15 Downloading google_auth-2.32.0-py2.py3-none-any.whl.metadata (4.7 kB) 37.17 Collecting google-pasta==0.2.0 (from -r /app/requirements.txt (line 20)) 37.18 Downloading google_pasta-0.2.0-py3-none-any.whl.metadata (814 bytes) 37.52 Collecting grpcio==1.65.4 (from -r /app/requirements.txt (line 21)) 37.53 Downloading grpcio-1.65.4-cp39-cp39-manylinux_2_17_aarch64.whl.metadata (3.3 kB) 37.53 Requirement already satisfied: h11==0.14.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 22)) (0.14.0) 37.57 Collecting h5py==3.11.0 (from -r /app/requirements.txt (line 23)) 37.59 Downloading h5py-3.11.0.tar.gz (406 kB) 37.65 Installing build dependencies: started 40.71 Installing build dependencies: finished with status 'done' 40.71 Getting requirements to build wheel: started 40.88 Getting requirements to build wheel: finished with status 'done' 40.88 Preparing metadata (pyproject.toml): started 41.05 Preparing metadata (pyproject.toml): finished with status 'done' 41.09 Collecting huggingface-hub==0.24.5 (from -r /app/requirements.txt (line 24)) 41.10 Downloading huggingface_hub-0.24.5-py3-none-any.whl.metadata (13 kB) 41.12 Requirement already satisfied: idna==3.7 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 25)) (3.7) 41.12 Requirement already satisfied: importlib-metadata==8.2.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 26)) (8.2.0) 41.14 Collecting keras==2.15.0 (from -r /app/requirements.txt (line 27)) 41.15 Downloading keras-2.15.0-py3-none-any.whl.metadata (2.4 kB) 41.17 Collecting langdetect==1.0.9 (from -r /app/requirements.txt (line 28)) 41.18 Downloading langdetect-1.0.9.tar.gz (981 kB) 41.21 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 981.5/981.5 kB 31.5 MB/s eta 0:00:00 41.25 Preparing metadata (setup.py): started 41.35 Preparing metadata (setup.py): finished with status 'done' 41.38 Collecting libclang==18.1.1 (from -r /app/requirements.txt (line 29)) 41.39 Downloading libclang-18.1.1-py2.py3-none-manylinux2014_aarch64.whl.metadata (5.2 kB) 41.42 Collecting markdown==3.6 (from -r /app/requirements.txt (line 30)) 41.42 Downloading Markdown-3.6-py3-none-any.whl.metadata (7.0 kB) 41.43 Requirement already satisfied: markupsafe==2.1.5 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 31)) (2.1.5) 41.46 Collecting ml-dtypes==0.3.2 (from -r /app/requirements.txt (line 32)) 41.47 Downloading ml_dtypes-0.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (20 kB) 41.59 Collecting numpy==1.26.4 (from -r /app/requirements.txt (line 33)) 41.60 Downloading numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (62 kB) 41.63 Collecting oauthlib==3.2.2 (from -r /app/requirements.txt (line 34)) 41.64 Downloading oauthlib-3.2.2-py3-none-any.whl.metadata (7.5 kB) 41.69 Collecting onnx==1.16.2 (from -r /app/requirements.txt (line 35)) 41.70 Downloading onnx-1.16.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (16 kB) 41.79 Collecting opencv-python==4.10.0.84 (from -r /app/requirements.txt (line 36)) 41.80 Downloading opencv_python-4.10.0.84-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (20 kB) 41.83 Collecting opt-einsum==3.3.0 (from -r /app/requirements.txt (line 37)) 41.84 Downloading opt_einsum-3.3.0-py3-none-any.whl.metadata (6.5 kB) 41.84 Requirement already satisfied: packaging==24.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 38)) (24.1) 41.96 Collecting pillow==10.4.0 (from -r /app/requirements.txt (line 39)) 41.97 Downloading pillow-10.4.0-cp39-cp39-manylinux_2_28_aarch64.whl.metadata (9.2 kB) 42.09 Collecting protobuf==3.20.3 (from -r /app/requirements.txt (line 40)) 42.10 Downloading protobuf-3.20.3-cp39-cp39-manylinux2014_aarch64.whl.metadata (698 bytes) 42.12 Collecting pyasn1-modules==0.4.0 (from -r /app/requirements.txt (line 41)) 42.13 Downloading pyasn1_modules-0.4.0-py3-none-any.whl.metadata (3.4 kB) 42.16 Collecting pyasn1==0.6.0 (from -r /app/requirements.txt (line 42)) 42.17 Downloading pyasn1-0.6.0-py2.py3-none-any.whl.metadata (8.3 kB) 42.21 Collecting pyclipper==1.3.0.post5 (from -r /app/requirements.txt (line 43)) 42.22 Downloading pyclipper-1.3.0.post5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (9.0 kB) 42.62 Collecting pydantic-core==2.20.1 (from -r /app/requirements.txt (line 44)) 42.64 Downloading pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.6 kB) 42.72 Collecting pydantic==2.8.2 (from -r /app/requirements.txt (line 45)) 42.73 Downloading pydantic-2.8.2-py3-none-any.whl.metadata (125 kB) 42.82 Collecting pypdfium2==4.30.0 (from -r /app/requirements.txt (line 46)) 42.83 Downloading pypdfium2-4.30.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (48 kB) 42.83 Requirement already satisfied: python-multipart==0.0.9 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 48)) (0.0.9) 42.83 Requirement already satisfied: pyyaml==6.0.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 49)) (6.0.1) 42.83 Requirement already satisfied: rapidfuzz==3.9.5 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 50)) (3.9.5) 42.85 Collecting requests-oauthlib==2.0.0 (from -r /app/requirements.txt (line 51)) 42.87 Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl.metadata (11 kB) 42.87 Requirement already satisfied: requests==2.32.3 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 52)) (2.32.3) 42.89 Collecting rsa==4.9 (from -r /app/requirements.txt (line 53)) 42.90 Downloading rsa-4.9-py3-none-any.whl.metadata (4.2 kB) 42.98 Collecting scipy==1.13.1 (from -r /app/requirements.txt (line 54)) 42.99 Downloading scipy-1.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (60 kB) 43.00 Requirement already satisfied: setuptools==72.1.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 55)) (72.1.0) 43.06 Collecting shapely==2.0.5 (from -r /app/requirements.txt (line 56)) 43.07 Downloading shapely-2.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (7.0 kB) 43.09 Collecting six==1.16.0 (from -r /app/requirements.txt (line 57)) 43.11 Downloading six-1.16.0-py2.py3-none-any.whl.metadata (1.8 kB) 43.11 Requirement already satisfied: sniffio==1.3.1 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 58)) (1.3.1) 43.14 Collecting starlette==0.37.2 (from -r /app/requirements.txt (line 59)) 43.15 Downloading starlette-0.37.2-py3-none-any.whl.metadata (5.9 kB) 43.17 Collecting tensorboard-data-server==0.7.2 (from -r /app/requirements.txt (line 60)) 43.18 Downloading tensorboard_data_server-0.7.2-py3-none-any.whl.metadata (1.1 kB) 43.22 Collecting tensorboard==2.15.2 (from -r /app/requirements.txt (line 61)) 43.23 Downloading tensorboard-2.15.2-py3-none-any.whl.metadata (1.7 kB) 43.25 Collecting tensorflow-cpu-aws==2.15.1 (from -r /app/requirements.txt (line 62)) 43.26 Downloading tensorflow_cpu_aws-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (4.0 kB) 43.29 Collecting tensorflow-estimator==2.15.0 (from -r /app/requirements.txt (line 63)) 43.30 Downloading tensorflow_estimator-2.15.0-py2.py3-none-any.whl.metadata (1.3 kB) 43.34 Collecting tensorflow-io-gcs-filesystem==0.37.1 (from -r /app/requirements.txt (line 65)) 43.35 Downloading tensorflow_io_gcs_filesystem-0.37.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (14 kB) 43.48 Collecting tensorflow==2.15.1 (from -r /app/requirements.txt (line 66)) 43.49 Downloading tensorflow-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (3.4 kB) 43.52 Collecting termcolor==2.4.0 (from -r /app/requirements.txt (line 67)) 43.53 Downloading termcolor-2.4.0-py3-none-any.whl.metadata (6.1 kB) 43.55 Collecting tf2onnx==1.16.1 (from -r /app/requirements.txt (line 68)) 43.56 Downloading tf2onnx-1.16.1-py3-none-any.whl.metadata (1.3 kB) 43.61 Collecting tqdm==4.66.4 (from -r /app/requirements.txt (line 69)) 43.62 Downloading tqdm-4.66.4-py3-none-any.whl.metadata (57 kB) 43.62 Requirement already satisfied: typing-extensions==4.12.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 70)) (4.12.2) 43.62 Requirement already satisfied: urllib3==2.2.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 71)) (2.2.2) 43.65 Collecting uvicorn==0.30.5 (from -r /app/requirements.txt (line 72)) 43.66 Downloading uvicorn-0.30.5-py3-none-any.whl.metadata (6.6 kB) 43.70 Collecting werkzeug==3.0.3 (from -r /app/requirements.txt (line 73)) 43.71 Downloading werkzeug-3.0.3-py3-none-any.whl.metadata (3.7 kB) 43.71 Requirement already satisfied: wheel==0.43.0 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 74)) (0.43.0) 43.78 Collecting wrapt==1.14.1 (from -r /app/requirements.txt (line 75)) 43.79 Downloading wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.metadata (6.7 kB) 43.79 Requirement already satisfied: zipp==3.19.2 in /usr/local/lib/python3.9/site-packages (from -r /app/requirements.txt (line 76)) (3.19.2) 44.09 Downloading absl_py-2.1.0-py3-none-any.whl (133 kB) 44.11 Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB) 44.12 Downloading anyascii-0.3.2-py3-none-any.whl (289 kB) 44.14 Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB) 44.15 Downloading cachetools-5.4.0-py3-none-any.whl (9.5 kB) 44.17 Downloading defusedxml-0.7.1-py2.py3-none-any.whl (25 kB) 44.18 Downloading fastapi-0.112.0-py3-none-any.whl (93 kB) 44.20 Downloading flatbuffers-24.3.25-py2.py3-none-any.whl (26 kB) 44.22 Downloading fsspec-2024.6.1-py3-none-any.whl (177 kB) 44.23 Downloading gast-0.6.0-py3-none-any.whl (21 kB) 44.25 Downloading google_auth_oauthlib-1.2.1-py2.py3-none-any.whl (24 kB) 44.26 Downloading google_auth-2.32.0-py2.py3-none-any.whl (195 kB) 44.28 Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB) 44.30 Downloading grpcio-1.65.4-cp39-cp39-manylinux_2_17_aarch64.whl (5.4 MB) 44.43 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.4/5.4 MB 40.6 MB/s eta 0:00:00 44.45 Downloading huggingface_hub-0.24.5-py3-none-any.whl (417 kB) 44.48 Downloading keras-2.15.0-py3-none-any.whl (1.7 MB) 44.53 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 28.8 MB/s eta 0:00:00 44.55 Downloading libclang-18.1.1-py2.py3-none-manylinux2014_aarch64.whl (23.8 MB) 45.14 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.8/23.8 MB 42.4 MB/s eta 0:00:00 45.16 Downloading Markdown-3.6-py3-none-any.whl (105 kB) 45.17 Downloading ml_dtypes-0.3.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.2 MB) 45.22 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.2/2.2 MB 42.9 MB/s eta 0:00:00 45.24 Downloading numpy-1.26.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (14.2 MB) 45.66 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.2/14.2 MB 33.9 MB/s eta 0:00:00 45.67 Downloading oauthlib-3.2.2-py3-none-any.whl (151 kB) 45.69 Downloading onnx-1.16.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (15.8 MB) 46.05 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 15.8/15.8 MB 43.9 MB/s eta 0:00:00 46.06 Downloading opencv_python-4.10.0.84-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (41.7 MB) 46.96 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.7/41.7 MB 46.7 MB/s eta 0:00:00 46.97 Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB) 47.01 Downloading pillow-10.4.0-cp39-cp39-manylinux_2_28_aarch64.whl (4.4 MB) 47.12 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.4/4.4 MB 43.1 MB/s eta 0:00:00 47.13 Downloading protobuf-3.20.3-cp39-cp39-manylinux2014_aarch64.whl (918 kB) 47.15 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 918.4/918.4 kB 47.0 MB/s eta 0:00:00 47.16 Downloading pyasn1_modules-0.4.0-py3-none-any.whl (181 kB) 47.18 Downloading pyasn1-0.6.0-py2.py3-none-any.whl (85 kB) 47.20 Downloading pyclipper-1.3.0.post5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (925 kB) 47.22 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 925.3/925.3 kB 37.0 MB/s eta 0:00:00 47.24 Downloading pydantic_core-2.20.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB) 47.29 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 38.8 MB/s eta 0:00:00 47.30 Downloading pydantic-2.8.2-py3-none-any.whl (423 kB) 47.32 Downloading pypdfium2-4.30.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.8 MB) 47.39 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 44.4 MB/s eta 0:00:00 47.40 Downloading requests_oauthlib-2.0.0-py2.py3-none-any.whl (24 kB) 47.41 Downloading rsa-4.9-py3-none-any.whl (34 kB) 47.42 Downloading scipy-1.13.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (33.7 MB) 48.32 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 33.7/33.7 MB 37.2 MB/s eta 0:00:00 48.33 Downloading shapely-2.0.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB) 48.38 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 43.7 MB/s eta 0:00:00 48.39 Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) 48.40 Downloading starlette-0.37.2-py3-none-any.whl (71 kB) 48.42 Downloading tensorboard_data_server-0.7.2-py3-none-any.whl (2.4 kB) 48.45 Downloading tensorboard-2.15.2-py3-none-any.whl (5.5 MB) 48.67 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.5/5.5 MB 24.2 MB/s eta 0:00:00 48.69 Downloading tensorflow_cpu_aws-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (211.8 MB) 53.46 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 211.8/211.8 MB 44.3 MB/s eta 0:00:00 53.47 Downloading tensorflow_estimator-2.15.0-py2.py3-none-any.whl (441 kB) 53.49 Downloading tensorflow_io_gcs_filesystem-0.37.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.8 MB) 53.60 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.8/4.8 MB 47.0 MB/s eta 0:00:00 53.61 Downloading tensorflow-2.15.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.1 kB) 53.62 Downloading termcolor-2.4.0-py3-none-any.whl (7.7 kB) 53.64 Downloading tf2onnx-1.16.1-py3-none-any.whl (455 kB) 53.66 Downloading tqdm-4.66.4-py3-none-any.whl (78 kB) 53.68 Downloading uvicorn-0.30.5-py3-none-any.whl (62 kB) 53.69 Downloading werkzeug-3.0.3-py3-none-any.whl (227 kB) 53.72 Downloading wrapt-1.14.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (77 kB) 54.03 Building wheels for collected packages: h5py, langdetect, python-doctr 54.03 Building wheel for h5py (pyproject.toml): started 54.25 Building wheel for h5py (pyproject.toml): finished with status 'error' 54.26 error: subprocess-exited-with-error 54.26
54.26 × Building wheel for h5py (pyproject.toml) did not run successfully. 54.26 │ exit code: 1 54.26 ╰─> [75 lines of output] 54.26 running bdist_wheel 54.26 running build 54.26 running build_py 54.26 creating build 54.26 creating build/lib.linux-aarch64-cpython-39 54.26 creating build/lib.linux-aarch64-cpython-39/h5py 54.26 copying h5py/version.py -> build/lib.linux-aarch64-cpython-39/h5py 54.26 copying h5py/ipy_completer.py -> build/lib.linux-aarch64-cpython-39/h5py 54.26 copying h5py/init.py -> build/lib.linux-aarch64-cpython-39/h5py 54.26 copying h5py/h5py_warnings.py -> build/lib.linux-aarch64-cpython-39/h5py 54.26 creating build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/dims.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/filters.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/vds.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/datatype.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/selections.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/init.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/selections2.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/dataset.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/compat.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/base.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/files.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/attrs.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 copying h5py/_hl/group.py -> build/lib.linux-aarch64-cpython-39/h5py/_hl 54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/common.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dims_dimensionproxy.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5f.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_slicing.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_attrs.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5z.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_file_image.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dataset_getitem.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5p.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5t.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_attribute_create.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/conftest.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dtype.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_base.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_group.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_filters.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_ros3.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_big_endian_file.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_objects.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dimension_scales.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_file_alignment.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dataset_swmr.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_selections.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_datatype.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_attrs_data.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_file2.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_completions.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_file.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5d_direct_chunk.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_dataset.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_errors.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5pl.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 copying h5py/tests/test_h5o.py -> build/lib.linux-aarch64-cpython-39/h5py/tests 54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests/data_files 54.26 copying h5py/tests/data_files/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files 54.26 creating build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds 54.26 copying h5py/tests/test_vds/test_virtual_source.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds 54.26 copying h5py/tests/test_vds/test_highlevel_vds.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds 54.26 copying h5py/tests/test_vds/init.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds 54.26 copying h5py/tests/test_vds/test_lowlevel_vds.py -> build/lib.linux-aarch64-cpython-39/h5py/tests/test_vds 54.26 copying h5py/tests/data_files/vlen_string_s390x.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files 54.26 copying h5py/tests/data_files/vlen_string_dset.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files 54.26 copying h5py/tests/data_files/vlen_string_dset_utc.h5 -> build/lib.linux-aarch64-cpython-39/h5py/tests/data_files 54.26 warning: build_py: byte-compiling is disabled, skipping. 54.26
54.26 running build_ext 54.26 Building h5py requires pkg-config unless the HDF5 path is explicitly specified using the environment variable HDF5_DIR. For more information and details, see https://docs.h5py.org/en/stable/build.html#custom-installation 54.26 error: pkg-config probably not installed: FileNotFoundError(2, 'No such file or directory') 54.26 [end of output] 54.26
54.26 note: This error originates from a subprocess, and is likely not a problem with pip. 54.26 ERROR: Failed building wheel for h5py 54.26 Building wheel for langdetect (setup.py): started 54.56 Building wheel for langdetect (setup.py): finished with status 'done' 54.56 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993222 sha256=50e7a1af9ba0ef70e13edfcfc87566758157cf2f97746d1707b9bb01bb286397 54.56 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb 54.57 Building wheel for python-doctr (pyproject.toml): started 54.78 Building wheel for python-doctr (pyproject.toml): finished with status 'done' 54.78 Created wheel for python-doctr: filename=python_doctr-0.9.0a0-py3-none-any.whl size=299068 sha256=80c9749bc081db15f718107d6df35d9c5f6f946fd85f7777b2b506d0be77bef3 54.78 Stored in directory: /root/.cache/pip/wheels/4a/b6/9f/1a0c3bf05bcc97eec54dbf7529ae100ea6e1dbff8a74675bd9 54.78 Successfully built langdetect python-doctr 54.78 Failed to build h5py 54.78 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1 make: *** [run] Error 17

Environment

MacBook Pro M1 - Sonoma 14.5 Pyenv installed - configured with Python 3.10.14

Deep Learning backend

N/A

felixdittrich92 commented 1 month ago

Hi @mamsterla :wave:,

Thanks for reporting. Unfortunately i wasn't able to reproduce your issue :/

cd api
make run
INFO:     Will watch for changes in these directories: ['/app']
INFO:     Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
INFO:     Started reloader process [1] using WatchFiles
2024-08-05 07:28:19.085788: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable `TF_ENABLE_ONEDNN_OPTS=0`.
2024-08-05 07:28:19.086951: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used.
2024-08-05 07:28:19.103180: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered
2024-08-05 07:28:19.103199: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered
2024-08-05 07:28:19.103729: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered
2024-08-05 07:28:19.106522: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used.
2024-08-05 07:28:19.106658: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2024-08-05 07:28:19.470437: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
INFO:     Started server process [8]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     172.18.0.1:57114 - "GET / HTTP/1.1" 404 Not Found
INFO:     172.18.0.1:57114 - "GET /favicon.ico HTTP/1.1" 404 Not Found
INFO:     172.18.0.1:57114 - "GET /docs HTTP/1.1" 200 OK
/usr/local/lib/python3.9/site-packages/pydantic/json_schema.py:2179: PydanticJsonSchemaWarning: Default value [File(PydanticUndefined)] is not JSON serializable; excluding default from JSON schema [non-serializable-default]
  warnings.warn(message, PydanticJsonSchemaWarning)
INFO:     172.18.0.1:57114 - "GET /openapi.json HTTP/1.1" 200 OK
mamsterla commented 1 month ago

That's what I do. Are you on a Mac M1?On Aug 5, 2024 12:31 AM, Felix Dittrich @.***> wrote: Hi @mamsterla 👋, Thanks for reporting. Unfortunately i wasn't able to reproduce your issue :/ `` cd api make run

INFO: Will watch for changes in these directories: ['/app'] INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit) INFO: Started reloader process [1] using WatchFiles 2024-08-05 07:28:19.085788: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable TF_ENABLE_ONEDNN_OPTS=0. 2024-08-05 07:28:19.086951: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used. 2024-08-05 07:28:19.103180: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered 2024-08-05 07:28:19.103199: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered 2024-08-05 07:28:19.103729: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered 2024-08-05 07:28:19.106522: I external/local_tsl/tsl/cuda/cudart_stub.cc:31] Could not find cuda drivers on your machine, GPU will not be used. 2024-08-05 07:28:19.106658: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations. To enable the following instructions: AVX2 AVX_VNNI FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags. 2024-08-05 07:28:19.470437: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT INFO: Started server process [8] INFO: Waiting for application startup. INFO: Application startup complete. INFO: 172.18.0.1:57114 - "GET / HTTP/1.1" 404 Not Found INFO: 172.18.0.1:57114 - "GET /favicon.ico HTTP/1.1" 404 Not Found INFO: 172.18.0.1:57114 - "GET /docs HTTP/1.1" 200 OK /usr/local/lib/python3.9/site-packages/pydantic/json_schema.py:2179: PydanticJsonSchemaWarning: Default value [File(PydanticUndefined)] is not JSON serializable; excluding default from JSON schema [non-serializable-default] warnings.warn(message, PydanticJsonSchemaWarning) INFO: 172.18.0.1:57114 - "GET /openapi.json HTTP/1.1" 200 OK

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

felixdittrich92 commented 1 month ago

Hi @mamsterla :wave:,

No i am on a linux machine (unfortunately i haven't a mac) but with make run the api is containerized via docker so this shouldn't make a difference.

If you try to install h5py standalone with pip on your machine does it work ?

mamsterla commented 1 month ago

Direct install on my machine works only the build does not. Unfortunately there is no other way to run the API. I think this a Mac specific problem and you will need one to reproduce. Looks like the build needs a way to specify the HDF5_DIR for the MacOn Aug 5, 2024 11:04 PM, Felix Dittrich @.***> wrote: Hi @mamsterla 👋, No i am on a linux machine (unfortunately i haven't a mac) but with make run the api is containerized via docker so this shouldn't make a difference. If you try to install h5py standalone with pip on your machine does it work ?

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

mmroden commented 4 weeks ago

For what it's worth, I can reproduce @mamsterla's error on an m2 mac running 13.6.7.

It appears that the OS does make a difference, from what I can see.

`104.2 note: This error originates from a subprocess, and is likely not a problem with pip. 104.2 ERROR: Failed building wheel for h5py 104.2 Building wheel for langdetect (setup.py): started 104.5 Building wheel for langdetect (setup.py): finished with status 'done' 104.5 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993221 sha256=7a17c910eac746923e68559f44c31c768cceedf182566fa4065cc2fdf74190fc 104.5 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb 104.5 Building wheel for python-doctr (pyproject.toml): started 104.7 Building wheel for python-doctr (pyproject.toml): finished with status 'done' 104.7 Created wheel for python-doctr: filename=python_doctr-0.9.1a0-py3-none-any.whl size=299517 sha256=9aa29437f23f6d867fb00432855690150e1541d7309e9b80e36377428aa06449 104.7 Stored in directory: /root/.cache/pip/wheels/92/73/83/54e1a3424f829899ce15c8dce692a3cb5680f0ffd71524fa01 104.7 Successfully built langdetect python-doctr 104.7 Failed to build h5py 104.7 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1 make: *** [run] Error 17`

mamsterla commented 4 weeks ago

That is exactly what I saw. I know that it is an issue with building the container, but I could not figure how to pass in what it needed to complete the build.

On Aug 13, 2024, at 4:32 PM, mmroden @.***> wrote:

For what it's worth, I can reproduce @mamsterla https://github.com/mamsterla's error on an m2 mac running 13.6.7.

It appears that the OS does make a difference, from what I can see.

`104.2 note: This error originates from a subprocess, and is likely not a problem with pip. 104.2 ERROR: Failed building wheel for h5py 104.2 Building wheel for langdetect (setup.py): started 104.5 Building wheel for langdetect (setup.py): finished with status 'done' 104.5 Created wheel for langdetect: filename=langdetect-1.0.9-py3-none-any.whl size=993221 sha256=7a17c910eac746923e68559f44c31c768cceedf182566fa4065cc2fdf74190fc 104.5 Stored in directory: /root/.cache/pip/wheels/d1/c1/d9/7e068de779d863bc8f8fc9467d85e25cfe47fa5051fff1a1bb 104.5 Building wheel for python-doctr (pyproject.toml): started 104.7 Building wheel for python-doctr (pyproject.toml): finished with status 'done' 104.7 Created wheel for python-doctr: filename=python_doctr-0.9.1a0-py3-none-any.whl size=299517 sha256=9aa29437f23f6d867fb00432855690150e1541d7309e9b80e36377428aa06449 104.7 Stored in directory: /root/.cache/pip/wheels/92/73/83/54e1a3424f829899ce15c8dce692a3cb5680f0ffd71524fa01 104.7 Successfully built langdetect python-doctr 104.7 Failed to build h5py 104.7 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (h5py)

failed to solve: process "/bin/sh -c pip install --upgrade pip setuptools wheel && make lock && pip install -r /app/requirements.txt && pip cache purge && rm -rf /root/.cache/pip" did not complete successfully: exit code: 1 make: *** [run] Error 17`

— Reply to this email directly, view it on GitHub https://github.com/mindee/doctr/issues/1683#issuecomment-2287387357, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVHDQHREUEKUCMIAC5OJLZRKJRNAVCNFSM6AAAAABL5QNCXWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBXGM4DOMZVG4. You are receiving this because you were mentioned.

felixdittrich92 commented 4 weeks ago

@mamsterla @mmroden Could you try to replace the Dockerfile with the following (dirty try) and run cd api && make run again ?

FROM nvidia/cuda:12.1.0-base-ubuntu22.04

WORKDIR /app

# Set up PATH for Conda
ENV PATH="/root/miniconda3/bin:${PATH}"

RUN apt-get -y update \
    && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make wget -y \
    && apt-get autoremove -y \
    && rm -rf /var/lib/apt/lists/*

# Copy project files
COPY app /app/app

# Install Miniconda
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
    && bash Miniconda3-latest-Linux-x86_64.sh -b -p /root/miniconda3 \
    && rm -f Miniconda3-latest-Linux-x86_64.sh

# Initialize Conda and create environment
RUN /root/miniconda3/bin/conda init bash \
    && /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda create -n doctr-api python=3.9 -y"

# Activate environment and install dependencies
RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && conda install h5py -y"
RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && pip install python-doctr[tf]@git+https://github.com/mindee/doctr.git fastapi uvicorn python-multipart"

# Create the entrypoint script directly within the Dockerfile
RUN echo '#!/bin/bash' > /entrypoint.sh && \
    echo 'source /root/miniconda3/etc/profile.d/conda.sh' >> /entrypoint.sh && \
    echo 'conda activate doctr-api' >> /entrypoint.sh && \
    echo 'exec "$@"' >> /entrypoint.sh && \
    chmod +x /entrypoint.sh

# Set the entrypoint to use the script
ENTRYPOINT ["/entrypoint.sh"]

The key difference is that we don't need to build h5py here we make use of the already compiled binary from anaconda

This is definitely not recommended

mamsterla commented 3 weeks ago

Felix:

Sorry for taking so long to try this. I did and got the following error (Rosetta is being used because it thinks this is x86_64):

13.06 2024-08-21 18:40:59 (10.8 MB/s) - 'Miniconda3-latest-Linux-x86_64.sh' saved [146836934/146836934] 13.06 13.07 PREFIX=/root/miniconda3 13.43 Unpacking payload ... 13.44 rosetta error: failed to open elf at /lib64/ld-linux-x86-64.so.2 13.44 Miniconda3-latest-Linux-x86_64.sh: line 442: 43 Exit 141 extract_range $boundary1 $boundary2 13.44 44 Trace/breakpoint trap | CONDA_QUIET="$BATCH" "$CONDA_EXEC" constructor --extract-tarball --prefix "$PREFIX"

failed to solve: process "/bin/sh -c wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && bash Miniconda3-latest-Linux-x86_64.sh -b -p /root/miniconda3 && rm -f Miniconda3-latest-Linux-x86_64.sh" did not complete successfully: exit code: 133 make: *** [run] Error 17

On Aug 14, 2024, at 3:14 AM, Felix Dittrich @.***> wrote:

@mamsterla https://github.com/mamsterla @mmroden https://github.com/mmroden Could you try to replace the Dockerfile with the following (dirty try) and run cd api && make run again ?

FROM nvidia/cuda:12.1.0-base-ubuntu22.04

WORKDIR /app

Set up PATH for Conda

ENV PATH="/root/miniconda3/bin:${PATH}"

RUN apt-get -y update \ && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make wget -y \ && apt-get autoremove -y \ && rm -rf /var/lib/apt/lists/*

Copy project files

COPY app /app/app

Install Miniconda

RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \ && bash Miniconda3-latest-Linux-x86_64.sh -b -p /root/miniconda3 \ && rm -f Miniconda3-latest-Linux-x86_64.sh

Initialize Conda and create environment

RUN /root/miniconda3/bin/conda init bash \ && /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda create -n doctr-api python=3.9 -y"

Activate environment and install dependencies

RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && conda install h5py -y" RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && pip install @.***+https://github.com/mindee/doctr.git fastapi uvicorn python-multipart"

Create the entrypoint script directly within the Dockerfile

RUN echo '#!/bin/bash' > /entrypoint.sh && \ echo 'source /root/miniconda3/etc/profile.d/conda.sh' >> /entrypoint.sh && \ echo 'conda activate doctr-api' >> /entrypoint.sh && \ echo 'exec "$@"' >> /entrypoint.sh && \ chmod +x /entrypoint.sh

Set the entrypoint to use the script

ENTRYPOINT ["/entrypoint.sh"] The key difference is that we don't need to build h5py here we make use of the already compiled binary from anaconda

This is definitely not recommended

— Reply to this email directly, view it on GitHub https://github.com/mindee/doctr/issues/1683#issuecomment-2288370234, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVHDSR7JRT3XFROTM3HMDZRMUXLAVCNFSM6AAAAABL5QNCXWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBYGM3TAMRTGQ. You are receiving this because you were mentioned.

mamsterla commented 3 weeks ago

We probably need to use ARM64 to make it cleaner on Mac M1 chips (all Apple silicon).

-MA

On Aug 14, 2024, at 3:14 AM, Felix Dittrich @.***> wrote:

@mamsterla https://github.com/mamsterla @mmroden https://github.com/mmroden Could you try to replace the Dockerfile with the following (dirty try) and run cd api && make run again ?

FROM nvidia/cuda:12.1.0-base-ubuntu22.04

WORKDIR /app

Set up PATH for Conda

ENV PATH="/root/miniconda3/bin:${PATH}"

RUN apt-get -y update \ && apt-get install --no-install-recommends git ffmpeg libsm6 libxext6 make wget -y \ && apt-get autoremove -y \ && rm -rf /var/lib/apt/lists/*

Copy project files

COPY app /app/app

Install Miniconda

RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \ && bash Miniconda3-latest-Linux-x86_64.sh -b -p /root/miniconda3 \ && rm -f Miniconda3-latest-Linux-x86_64.sh

Initialize Conda and create environment

RUN /root/miniconda3/bin/conda init bash \ && /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda create -n doctr-api python=3.9 -y"

Activate environment and install dependencies

RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && conda install h5py -y" RUN /bin/bash -c "source /root/miniconda3/etc/profile.d/conda.sh && conda activate doctr-api && pip install @.***+https://github.com/mindee/doctr.git fastapi uvicorn python-multipart"

Create the entrypoint script directly within the Dockerfile

RUN echo '#!/bin/bash' > /entrypoint.sh && \ echo 'source /root/miniconda3/etc/profile.d/conda.sh' >> /entrypoint.sh && \ echo 'conda activate doctr-api' >> /entrypoint.sh && \ echo 'exec "$@"' >> /entrypoint.sh && \ chmod +x /entrypoint.sh

Set the entrypoint to use the script

ENTRYPOINT ["/entrypoint.sh"] The key difference is that we don't need to build h5py here we make use of the already compiled binary from anaconda

This is definitely not recommended

— Reply to this email directly, view it on GitHub https://github.com/mindee/doctr/issues/1683#issuecomment-2288370234, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABVHDSR7JRT3XFROTM3HMDZRMUXLAVCNFSM6AAAAABL5QNCXWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOBYGM3TAMRTGQ. You are receiving this because you were mentioned.