Closed rickymagner closed 1 year ago
Hello @rickymagner thanks for your interest in Concrete-ML!
Can you show me what python -m pip show concrete-ml
outputs on your machine?
From the traceback you are providing I guess that you have an outdated version of Concrete-ML installed on your system.
Hi, here's the output:
Name: concrete-ml
Version: 0.3.0
Summary: Concrete-ML is an open-source set of tools which aims to simplify the use of fully homomorphic encryption (FHE) for data scientists.
Home-page: https://zama.ai/concrete-ml/
Author: Zama
Author-email: hello@zama.ai
License: BSD-3-Clause-Clear
Location: /Users/rmagner/Documents/Experiments/Concrete/venv/lib/python3.8/site-packages
Requires: concrete-numpy, hummingbird-ml, numpy, onnx, protobuf, scikit-learn, scipy, setuptools, skorch, torch, xgboost
Required-by:
Looks like you're right and I ended up with an older version somehow. I tried recreating my venv and reinstalling with
pip install -U pip wheel setuptools
pip install concrete-ml==0.6.1
but get this error:
Collecting concrete-ml==0.6.1
Using cached concrete_ml-0.6.1-py3-none-any.whl (119 kB)
Collecting concrete-ml-extensions-brevitas==0.1.0
Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB)
Collecting typing-extensions==4.4.0
Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting setuptools==65.6.3
Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB)
Collecting concrete-numpy==0.9.0
Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB)
Collecting protobuf==3.19.4
Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB)
Collecting xgboost==1.6.2
Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB)
Collecting numpy==1.21.6
Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB)
Collecting hummingbird-ml[onnx]==0.4.4
Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB)
Collecting onnx==1.12.0
Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB)
Collecting onnxoptimizer==0.2.7
Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB)
Collecting skorch==0.11.0
Using cached skorch-0.11.0-py3-none-any.whl (155 kB)
Collecting torch==1.12.1
Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB)
Collecting scikit-learn==1.0.2
Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB)
Collecting scipy==1.7.3
Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB)
Collecting future-annotations
Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB)
Collecting packaging
Using cached packaging-23.0-py3-none-any.whl (42 kB)
Collecting dependencies==2.0.1
Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB)
INFO: pip is looking at multiple versions of concrete-ml-extensions-brevitas to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of concrete-ml to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement concrete-compiler<0.24.0,>=0.23.1 (from concrete-numpy) (from versions: 0.1.1, 0.1.2, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0)
ERROR: No matching distribution found for concrete-compiler<0.24.0,>=0.23.1
It seems there's a dependency mismatch between this package's compiler version and concrete-numpy's?
Just to be sure, you are running on intel MacOS right?
Hey, I'm on macOS intel and I just tried, and I can't repro your issue
[REDACTED] % mkdir temp [REDACTED] % cd temp [REDACTED]/temp % python3 -m venv .venv [REDACTED]/temp % source .venv/bin/activate (.venv) [REDACTED]/temp % pip install -U pip wheel setuptools Looking in indexes: https://pypi.org/simple, [REDACTED]/simple Requirement already satisfied: pip in ./.venv/lib/python3.8/site-packages (22.0.4) Collecting pip Using cached pip-23.0-py3-none-any.whl (2.1 MB) Collecting wheel Using cached wheel-0.38.4-py3-none-any.whl (36 kB) Requirement already satisfied: setuptools in ./.venv/lib/python3.8/site-packages (56.0.0) Collecting setuptools Using cached setuptools-67.0.0-py3-none-any.whl (1.1 MB) Installing collected packages: wheel, setuptools, pip Attempting uninstall: setuptools Found existing installation: setuptools 56.0.0 Uninstalling setuptools-56.0.0: Successfully uninstalled setuptools-56.0.0 Attempting uninstall: pip Found existing installation: pip 22.0.4 Uninstalling pip-22.0.4: Successfully uninstalled pip-22.0.4 Successfully installed pip-23.0 setuptools-67.0.0 wheel-0.38.4 (.venv) [REDACTED]/temp % pip install concrete-ml==0.6.1 Looking in indexes: https://pypi.org/simple, [REDACTED]/simple Collecting concrete-ml==0.6.1 Using cached concrete_ml-0.6.1-py3-none-any.whl (119 kB) Collecting hummingbird-ml[onnx]==0.4.4 Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB) Collecting setuptools==65.6.3 Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB) Collecting onnxoptimizer==0.2.7 Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB) Collecting typing-extensions==4.4.0 Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB) Collecting concrete-numpy==0.9.0 Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB) Collecting concrete-ml-extensions-brevitas==0.1.0 Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB) Collecting scikit-learn==1.0.2 Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB) Collecting torch==1.12.1 Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB) Collecting numpy==1.21.6 Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB) Collecting xgboost==1.6.2 Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB) Collecting skorch==0.11.0 Using cached skorch-0.11.0-py3-none-any.whl (155 kB) Collecting scipy==1.7.3 Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB) Collecting onnx==1.12.0 Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB) Collecting protobuf==3.19.4 Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB) Collecting dependencies==2.0.1 Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB) Collecting future-annotations Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB) Collecting packaging Using cached packaging-23.0-py3-none-any.whl (42 kB) Collecting networkx<3.0.0,>=2.6.3 Using cached networkx-2.8.8-py3-none-any.whl (2.0 MB) Collecting Pillow<10.0.0,>=9.0.0 Using cached Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl (3.3 MB) Collecting matplotlib<4.0.0,>=3.5.1 Using cached matplotlib-3.6.3-cp38-cp38-macosx_10_12_x86_64.whl (7.3 MB) Collecting concrete-compiler<0.24.0,>=0.23.1 Using cached [REDACTED]/packages/concrete-compiler/0.23.4/concrete_compiler-0.23.4-cp38-cp38-macosx_11_0_x86_64.whl (44.5 MB) Collecting dill Using cached dill-0.3.6-py3-none-any.whl (110 kB) Collecting psutil Using cached psutil-5.9.4-cp36-abi3-macosx_10_9_x86_64.whl (243 kB) Collecting onnxconverter-common>=1.6.0 Using cached onnxconverter_common-1.13.0-py2.py3-none-any.whl (83 kB) Collecting onnxruntime>=1.0.0 Using cached onnxruntime-1.13.1-cp38-cp38-macosx_10_15_x86_64.whl (6.2 MB) Collecting onnxmltools>=1.6.0 Using cached onnxmltools-1.11.1-py3-none-any.whl (308 kB) Collecting skl2onnx>=1.7.0 Using cached skl2onnx-1.13-py2.py3-none-any.whl (288 kB) Collecting joblib>=0.11 Using cached joblib-1.2.0-py3-none-any.whl (297 kB) Collecting threadpoolctl>=2.0.0 Using cached threadpoolctl-3.1.0-py3-none-any.whl (14 kB) Collecting tqdm>=4.14.0 Using cached tqdm-4.64.1-py2.py3-none-any.whl (78 kB) Collecting tabulate>=0.7.7 Using cached tabulate-0.9.0-py3-none-any.whl (35 kB) Collecting PyYAML Using cached PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl (192 kB) Collecting cycler>=0.10 Using cached cycler-0.11.0-py3-none-any.whl (6.4 kB) Collecting kiwisolver>=1.0.1 Using cached kiwisolver-1.4.4-cp38-cp38-macosx_10_9_x86_64.whl (65 kB) Collecting pyparsing>=2.2.1 Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB) Collecting contourpy>=1.0.1 Using cached contourpy-1.0.7-cp38-cp38-macosx_10_9_x86_64.whl (243 kB) Collecting python-dateutil>=2.7 Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB) Collecting fonttools>=4.22.0 Using cached fonttools-4.38.0-py3-none-any.whl (965 kB) Collecting sympy Using cached sympy-1.11.1-py3-none-any.whl (6.5 MB) Collecting flatbuffers Using cached flatbuffers-23.1.21-py2.py3-none-any.whl (26 kB) Collecting coloredlogs Using cached coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB) Collecting tokenize-rt>=3 Using cached tokenize_rt-5.0.0-py2.py3-none-any.whl (5.8 kB) Collecting six>=1.5 Using cached six-1.16.0-py2.py3-none-any.whl (11 kB) Collecting humanfriendly>=9.1 Using cached humanfriendly-10.0-py2.py3-none-any.whl (86 kB) Collecting mpmath>=0.19 Using cached mpmath-1.2.1-py3-none-any.whl (532 kB) Installing collected packages: mpmath, flatbuffers, typing-extensions, tqdm, tokenize-rt, threadpoolctl, tabulate, sympy, six, setuptools, PyYAML, pyparsing, psutil, protobuf, Pillow, packaging, numpy, networkx, kiwisolver, joblib, humanfriendly, fonttools, dill, dependencies, cycler, torch, scipy, python-dateutil, onnx, future-annotations, contourpy, concrete-compiler, coloredlogs, xgboost, scikit-learn, onnxruntime, onnxoptimizer, onnxconverter-common, matplotlib, concrete-ml-extensions-brevitas, skorch, skl2onnx, hummingbird-ml, concrete-numpy, onnxmltools, concrete-ml Attempting uninstall: setuptools Found existing installation: setuptools 67.0.0 Uninstalling setuptools-67.0.0: Successfully uninstalled setuptools-67.0.0 Successfully installed Pillow-9.4.0 PyYAML-6.0 coloredlogs-15.0.1 concrete-compiler-0.23.4 concrete-ml-0.6.1 concrete-ml-extensions-brevitas-0.1.0 concrete-numpy-0.9.0 contourpy-1.0.7 cycler-0.11.0 dependencies-2.0.1 dill-0.3.6 flatbuffers-23.1.21 fonttools-4.38.0 future-annotations-1.0.0 humanfriendly-10.0 hummingbird-ml-0.4.4 joblib-1.2.0 kiwisolver-1.4.4 matplotlib-3.6.3 mpmath-1.2.1 networkx-2.8.8 numpy-1.21.6 onnx-1.12.0 onnxconverter-common-1.13.0 onnxmltools-1.11.1 onnxoptimizer-0.2.7 onnxruntime-1.13.1 packaging-23.0 protobuf-3.19.4 psutil-5.9.4 pyparsing-3.0.9 python-dateutil-2.8.2 scikit-learn-1.0.2 scipy-1.7.3 setuptools-65.6.3 six-1.16.0 skl2onnx-1.13 skorch-0.11.0 sympy-1.11.1 tabulate-0.9.0 threadpoolctl-3.1.0 tokenize-rt-5.0.0 torch-1.12.1 tqdm-4.64.1 typing-extensions-4.4.0 xgboost-1.6.2 (.venv) [REDACTED]/temp %
@fd0r is right: if ever you're on M1 or M2, it will not install.
Yes, my "About" page says: "2.4 GHz 8-Core Intel Core i9"
Could there be any issues with pip/python versions? I'm using Python 3.8.8 and pip 23.0.
python 3.8 is normally ok, and I just tried with pip 23: it works as well. What a mystery
Do you have a recent macOS?
sw_vers
I have
ProductName: macOS ProductVersion: 12.6.2 BuildVersion: 21G320
which is not the last one
Huh, very strange. I have the same:
ProductName: macOS
ProductVersion: 12.6.2
BuildVersion: 21G320
Did you have any of the dependencies manually installed before already, e.g. concrete-compiler
, etc? I might try adding those first and see if it helps.
I have the impression that your original problem is that
pip install concrete-compiler==0.23.4
fails for you, do you confirm? For me it works
Yes, that seems to be the problem:
$ ~ pip install concrete-compiler==0.23.4
ERROR: Could not find a version that satisfies the requirement concrete-compiler==0.23.4 (from versions: 0.1.1, 0.1.2, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0)
ERROR: No matching distribution found for concrete-compiler==0.23.4
It seems that https://github.com/zama-ai/concrete-compiler is either a private or no longer existing repo. Do you know where the code for that package is coming from? I see it on PyPI still here.
concrete-compiler is indeed not open source (for now) but still, since you install it from pip, it is supposed to work
Let me ask @umut-sahin , who is from compiler team, if he could help
should you try python -m pip install concrete-compiler==0.23.4
, by the way?
are you sure that pip
is the one you think? ie, does which pip
show the one in your fresh venv?
Hi, I get the same error when running with python -m pip
, and running which pip
points to an alias to pip3
, and which pip3
points to the one in my venv. I tried running pip3 install concrete-compiler==0.23.4
and get the same error as above.
could you try a pip3.10 install concrete-compiler==0.23.4
? or any other version you have installed, just make sure to use the complete version
Just for the sake of clarity, could you run the following please:
python3 --version
python3 -m venv debug_issue_venv
source debug_issue_venv/bin/activate
which python
python --version
pip install -U pip wheel setuptools
pip install concrete-ml
and show us the log of that, please? This is so strange
(by the way, sorry for the troubles, and if you urgently want to try something, it is possible to use Concrete-ML with docker as well; but, on macOS, it is slower)
I tried variations of pip3.10 install…
but only have pip3.8.
Here are the outputs for the last block:
$ ~ python3 --version
Python 3.8.8
$ ~ python3 -m venv debug_issue_venv
$ ~ source debug_issue_venv/bin/activate
$ ~ which python
python: aliased to python3
$ ~ python --version
Python 3.8.8
$ ~ pip install -U pip wheel setuptools
Collecting pip
Using cached pip-23.0-py3-none-any.whl (2.1 MB)
Collecting wheel
Using cached wheel-0.38.4-py3-none-any.whl (36 kB)
Collecting setuptools
Using cached setuptools-67.0.0-py3-none-any.whl (1.1 MB)
Installing collected packages: pip, wheel, setuptools
Attempting uninstall: pip
Found existing installation: pip 20.2.3
Uninstalling pip-20.2.3:
Successfully uninstalled pip-20.2.3
Attempting uninstall: setuptools
Found existing installation: setuptools 49.2.1
Uninstalling setuptools-49.2.1:
Successfully uninstalled setuptools-49.2.1
Successfully installed pip-23.0 setuptools-67.0.0 wheel-0.38.4
$ ~ pip install concrete-ml
Collecting concrete-ml
Using cached concrete_ml-0.6.1-py3-none-any.whl (119 kB)
Collecting scipy==1.7.3
Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB)
Collecting typing-extensions==4.4.0
Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting xgboost==1.6.2
Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB)
Collecting numpy==1.21.6
Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB)
Collecting skorch==0.11.0
Using cached skorch-0.11.0-py3-none-any.whl (155 kB)
Collecting hummingbird-ml[onnx]==0.4.4
Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB)
Collecting onnxoptimizer==0.2.7
Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB)
Collecting torch==1.12.1
Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB)
Collecting setuptools==65.6.3
Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB)
Collecting concrete-ml-extensions-brevitas==0.1.0
Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB)
Collecting onnx==1.12.0
Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB)
Collecting concrete-numpy==0.9.0
Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB)
Collecting scikit-learn==1.0.2
Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB)
Collecting protobuf==3.19.4
Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB)
Collecting future-annotations
Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB)
Collecting dependencies==2.0.1
Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB)
Collecting packaging
Using cached packaging-23.0-py3-none-any.whl (42 kB)
Collecting matplotlib<4.0.0,>=3.5.1
Using cached matplotlib-3.6.3-cp38-cp38-macosx_10_12_x86_64.whl (7.3 MB)
Collecting Pillow<10.0.0,>=9.0.0
Using cached Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl (3.3 MB)
INFO: pip is looking at multiple versions of concrete-ml-extensions-brevitas to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of concrete-ml to determine which version is compatible with other requirements. This could take a while.
Collecting concrete-ml
Using cached concrete_ml-0.6.0-py3-none-any.whl (119 kB)
Collecting scikit-learn>=1.0.2
Using cached scikit_learn-1.2.1-cp38-cp38-macosx_10_9_x86_64.whl (9.0 MB)
Collecting hummingbird-ml[onnx]<0.5.0,>=0.4.4
Using cached hummingbird_ml-0.4.7-py2.py3-none-any.whl (162 kB)
Collecting concrete-numpy>=0.8.0
Using cached concrete_numpy-0.10.0-py3-none-any.whl (82 kB)
Collecting xgboost<2.0.0,>=1.5.2
Using cached xgboost-1.7.3-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.8 MB)
Collecting scipy>=1.7.3
Using cached scipy-1.10.0-cp38-cp38-macosx_10_15_x86_64.whl (35.0 MB)
Collecting numpy>=1.21.6
Using cached numpy-1.24.1-cp38-cp38-macosx_10_9_x86_64.whl (19.8 MB)
Collecting onnx<2.0.0,>=1.11.0
Using cached onnx-1.13.0-cp38-cp38-macosx_10_12_x86_64.whl (12.7 MB)
Requirement already satisfied: setuptools in ./debug_issue_venv/lib/python3.8/site-packages (from concrete-ml) (67.0.0)
Collecting concrete-numpy>=0.8.0
Using cached concrete_numpy-0.9.1-py3-none-any.whl (82 kB)
Using cached concrete_numpy-0.8.0-py3-none-any.whl (68 kB)
INFO: pip is looking at multiple versions of dependencies to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of protobuf to determine which version is compatible with other requirements. This could take a while.
Collecting concrete-ml
Using cached concrete_ml-0.5.1-py3-none-any.whl (103 kB)
Collecting concrete-ml-extensions-brevitas==0.0.0
Using cached concrete_ml_extensions_brevitas-0.0.0-py3-none-any.whl (403 kB)
Collecting concrete-ml
Using cached concrete_ml-0.5.0-py3-none-any.whl (102 kB)
Collecting torch<2.0.0,>=1.11.0
Using cached torch-1.13.1-cp38-none-macosx_10_9_x86_64.whl (135.4 MB)
Collecting concrete-ml
Using cached concrete_ml-0.4.0-py3-none-any.whl (97 kB)
Using cached concrete_ml-0.3.0-py3-none-any.whl (84 kB)
Collecting concrete-numpy==0.7.0
Using cached concrete_numpy-0.7.0-py3-none-any.whl (65 kB)
Collecting concrete-compiler<0.11.0,>=0.10.0
Using cached concrete_compiler-0.10.0-cp38-cp38-macosx_10_15_x86_64.whl (41.0 MB)
Collecting networkx<3.0.0,>=2.6.3
Using cached networkx-2.8.8-py3-none-any.whl (2.0 MB)
Collecting PyYAML
Using cached PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl (192 kB)
Collecting dill
Using cached dill-0.3.6-py3-none-any.whl (110 kB)
Collecting onnxconverter-common>=1.6.0
Using cached onnxconverter_common-1.13.0-py2.py3-none-any.whl (83 kB)
Collecting hummingbird-ml[onnx]<0.5.0,>=0.4.4
Using cached hummingbird_ml-0.4.6-py2.py3-none-any.whl (162 kB)
Using cached hummingbird_ml-0.4.5-py2.py3-none-any.whl (162 kB)
Collecting psutil
Using cached psutil-5.9.4-cp36-abi3-macosx_10_9_x86_64.whl (243 kB)
Collecting onnxruntime>=1.0.0
Using cached onnxruntime-1.13.1-cp38-cp38-macosx_10_15_x86_64.whl (6.2 MB)
Collecting onnxmltools>=1.6.0
Using cached onnxmltools-1.11.1-py3-none-any.whl (308 kB)
Collecting skl2onnx>=1.7.0
Using cached skl2onnx-1.13-py2.py3-none-any.whl (288 kB)
Collecting threadpoolctl>=2.0.0
Using cached threadpoolctl-3.1.0-py3-none-any.whl (14 kB)
Collecting joblib>=1.1.1
Using cached joblib-1.2.0-py3-none-any.whl (297 kB)
Collecting tqdm>=4.14.0
Using cached tqdm-4.64.1-py2.py3-none-any.whl (78 kB)
Collecting tabulate>=0.7.7
Using cached tabulate-0.9.0-py3-none-any.whl (35 kB)
Collecting python-dateutil>=2.7
Using cached python_dateutil-2.8.2-py2.py3-none-any.whl (247 kB)
Collecting cycler>=0.10
Using cached cycler-0.11.0-py3-none-any.whl (6.4 kB)
Collecting contourpy>=1.0.1
Using cached contourpy-1.0.7-cp38-cp38-macosx_10_9_x86_64.whl (243 kB)
Collecting fonttools>=4.22.0
Using cached fonttools-4.38.0-py3-none-any.whl (965 kB)
Collecting pyparsing>=2.2.1
Using cached pyparsing-3.0.9-py3-none-any.whl (98 kB)
Collecting kiwisolver>=1.0.1
Using cached kiwisolver-1.4.4-cp38-cp38-macosx_10_9_x86_64.whl (65 kB)
Collecting coloredlogs
Using cached coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)
Collecting sympy
Using cached sympy-1.11.1-py3-none-any.whl (6.5 MB)
Collecting flatbuffers
Using cached flatbuffers-23.1.21-py2.py3-none-any.whl (26 kB)
Collecting scikit-learn<2.0.0,>=1.1.0
Using cached scikit_learn-1.1.1-cp38-cp38-macosx_10_13_x86_64.whl (8.5 MB)
Collecting six>=1.5
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting humanfriendly>=9.1
Using cached humanfriendly-10.0-py2.py3-none-any.whl (86 kB)
Collecting mpmath>=0.19
Using cached mpmath-1.2.1-py3-none-any.whl (532 kB)
Installing collected packages: mpmath, flatbuffers, typing-extensions, tqdm, threadpoolctl, tabulate, sympy, six, PyYAML, pyparsing, psutil, protobuf, Pillow, packaging, numpy, networkx, kiwisolver, joblib, humanfriendly, fonttools, dill, cycler, torch, scipy, python-dateutil, onnx, contourpy, concrete-compiler, coloredlogs, xgboost, scikit-learn, onnxruntime, onnxconverter-common, matplotlib, skorch, skl2onnx, hummingbird-ml, concrete-numpy, onnxmltools, concrete-ml
Successfully installed Pillow-9.4.0 PyYAML-6.0 coloredlogs-15.0.1 concrete-compiler-0.10.0 concrete-ml-0.3.0 concrete-numpy-0.7.0 contourpy-1.0.7 cycler-0.11.0 dill-0.3.6 flatbuffers-23.1.21 fonttools-4.38.0 humanfriendly-10.0 hummingbird-ml-0.4.4 joblib-1.2.0 kiwisolver-1.4.4 matplotlib-3.6.3 mpmath-1.2.1 networkx-2.8.8 numpy-1.24.1 onnx-1.12.0 onnxconverter-common-1.13.0 onnxmltools-1.11.1 onnxruntime-1.13.1 packaging-23.0 protobuf-3.19.4 psutil-5.9.4 pyparsing-3.0.9 python-dateutil-2.8.2 scikit-learn-1.1.1 scipy-1.10.0 six-1.16.0 skl2onnx-1.13 skorch-0.11.0 sympy-1.11.1 tabulate-0.9.0 threadpoolctl-3.1.0 torch-1.13.1 tqdm-4.64.1 typing-extensions-4.4.0 xgboost-1.7.3
Install is successful, but then running python example.py
with the provided example produces the original error reported in this issue. It still installs the old version:
$ ~ python -m pip show concrete-ml
Name: concrete-ml
Version: 0.3.0
Summary: Concrete-ML is an open-source set of tools which aims to simplify the use of fully homomorphic encryption (FHE) for data scientists.
Home-page: https://zama.ai/concrete-ml/
Author: Zama
Author-email: hello@zama.ai
License: BSD-3-Clause-Clear
Location: /Users/rmagner/Documents/Experiments/Concrete/debug_issue_venv/lib/python3.8/site-packages
Requires: concrete-numpy, hummingbird-ml, numpy, onnx, protobuf, scikit-learn, scipy, setuptools, skorch, torch, xgboost
Required-by:
It's definitely a strange issue, but there's no urgency. I just wanted to test out the package a little bit. Thanks!
Could you maybe try by explicitly specifying the version?
pip install concrete-ml==0.6.1
So yes, a strange issue. What you should do for now is to use docker, to test out the package. It is easy to install (https://docs.zama.ai/concrete-ml/getting-started/pip_installing#using-docker), but at the same time, it is normally also easy to install with pip
and here we have a problem. There is something in your config that is unclear and prevents to use the last compiler/Concrete-Numpy/Concrete-ML, we're investigating
One thing you may try @rickymagner is:
pip install
I can imagine it will not work because this wheel was filtered out for your config, but we may hope that the error you get may tell us why at the beginning, 0.6.1 was filtered out. And then, we might be able to solve it
You can also try
pip install -U --use-deprecated=legacy-resolver concrete-ml==0.6.1
We have seen issues like https://stackoverflow.com/questions/65122957/resolving-new-pip-backtracking-runtime-issue/65793484#65793484 which may be related to your problem
Hi, thanks for the suggestions. Unfortunately they haven't worked. Here's the outputs:
$ ~ pip install concrete_ml-0.6.1-py3-none-any.whl
Processing ./concrete_ml-0.6.1-py3-none-any.whl
Collecting scipy==1.7.3
Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB)
Collecting skorch==0.11.0
Using cached skorch-0.11.0-py3-none-any.whl (155 kB)
Collecting concrete-numpy==0.9.0
Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB)
Collecting numpy==1.21.6
Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB)
Collecting hummingbird-ml[onnx]==0.4.4
Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB)
Collecting torch==1.12.1
Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB)
Collecting concrete-ml-extensions-brevitas==0.1.0
Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB)
Collecting onnxoptimizer==0.2.7
Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB)
Collecting onnx==1.12.0
Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB)
Collecting setuptools==65.6.3
Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB)
Collecting scikit-learn==1.0.2
Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB)
Collecting typing-extensions==4.4.0
Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting xgboost==1.6.2
Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB)
Collecting protobuf==3.19.4
Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB)
Collecting future-annotations
Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB)
Collecting dependencies==2.0.1
Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB)
Collecting packaging
Using cached packaging-23.0-py3-none-any.whl (42 kB)
Collecting matplotlib<4.0.0,>=3.5.1
Using cached matplotlib-3.6.3-cp38-cp38-macosx_10_12_x86_64.whl (7.3 MB)
Collecting Pillow<10.0.0,>=9.0.0
Using cached Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl (3.3 MB)
Collecting networkx<3.0.0,>=2.6.3
Using cached networkx-2.8.8-py3-none-any.whl (2.0 MB)
INFO: pip is looking at multiple versions of concrete-ml-extensions-brevitas to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of concrete-ml to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement concrete-compiler<0.24.0,>=0.23.1 (from concrete-numpy) (from versions: 0.1.1, 0.1.2, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0)
ERROR: No matching distribution found for concrete-compiler<0.24.0,>=0.23.1
and
pip install -U --use-deprecated=legacy-resolver concrete-ml==0.6.1
Collecting concrete-ml==0.6.1
Using cached concrete_ml-0.6.1-py3-none-any.whl (119 kB)
Collecting scikit-learn==1.0.2
Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB)
Collecting typing-extensions==4.4.0
Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting xgboost==1.6.2
Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB)
Collecting hummingbird-ml[onnx]==0.4.4
Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB)
Collecting torch==1.12.1
Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB)
Collecting protobuf==3.19.4
Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB)
Collecting onnxoptimizer==0.2.7
Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB)
Collecting setuptools==65.6.3
Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB)
Collecting concrete-ml-extensions-brevitas==0.1.0
Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB)
Collecting skorch==0.11.0
Using cached skorch-0.11.0-py3-none-any.whl (155 kB)
Collecting scipy==1.7.3
Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB)
Collecting concrete-numpy==0.9.0
Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB)
Collecting numpy==1.21.6
Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB)
Collecting onnx==1.12.0
Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB)
Collecting joblib>=0.11
Using cached joblib-1.2.0-py3-none-any.whl (297 kB)
Collecting threadpoolctl>=2.0.0
Using cached threadpoolctl-3.1.0-py3-none-any.whl (14 kB)
Collecting psutil
Using cached psutil-5.9.4-cp36-abi3-macosx_10_9_x86_64.whl (243 kB)
Collecting onnxconverter-common>=1.6.0
Using cached onnxconverter_common-1.13.0-py2.py3-none-any.whl (83 kB)
Collecting dill
Using cached dill-0.3.6-py3-none-any.whl (110 kB)
Collecting onnxruntime>=1.0.0; extra == "onnx"
Using cached onnxruntime-1.13.1-cp38-cp38-macosx_10_15_x86_64.whl (6.2 MB)
Collecting onnxmltools>=1.6.0; extra == "onnx"
Using cached onnxmltools-1.11.1-py3-none-any.whl (308 kB)
Collecting skl2onnx>=1.7.0; extra == "onnx"
Using cached skl2onnx-1.13-py2.py3-none-any.whl (288 kB)
Collecting future-annotations
Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB)
Collecting packaging
Using cached packaging-23.0-py3-none-any.whl (42 kB)
Collecting dependencies==2.0.1
Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB)
Collecting tabulate>=0.7.7
Using cached tabulate-0.9.0-py3-none-any.whl (35 kB)
Collecting tqdm>=4.14.0
Using cached tqdm-4.64.1-py2.py3-none-any.whl (78 kB)
Collecting Pillow<10.0.0,>=9.0.0
Using cached Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl (3.3 MB)
ERROR: Could not find a version that satisfies the requirement concrete-compiler<0.24.0,>=0.23.1 (from concrete-numpy==0.9.0->concrete-ml==0.6.1) (from versions: 0.1.1, 0.1.2, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0)
ERROR: No matching distribution found for concrete-compiler<0.24.0,>=0.23.1 (from concrete-numpy==0.9.0->concrete-ml==0.6.1)
If it's working for others with a similar environment, there must be something else messed up in my environment. I can try using the docker solution or maybe a cloud VM to run it.
On a separate note, concrete-numpy
installs and seems to work fine. Do you know if the Compiler class defined in that package is similar to the one found in the ML library? For example, if I wanted to try implementing some ML algorithms using just concrete-numpy
, should they work essentially the same? That seemed to be where the dependency resolver was getting stuck for the ML version for me.
I would go for the docker solution, really.
Yes you can use Concrete-Numpy directly but it is better / easier to use Concrete-ML, if you want to enjoy what we've been working for a bit more than a year.
And warning to use the last Concrete-Numpy: don't be stuck on old versions of Concrete-Numpy if this is the way you want to take, because of your issues in installation. As it looks your issue is at the Concrete-compiler level, I would say, you're also blocked to an old version of Concrete-Numpy, which is bad for you.
Thanks, I did just check that an older version of concrete-numpy
was installed by default (0.7.0) for the same reason. I will try using the ML package in a different environment I can get it working in. Thanks for all of your help!
Our pleasure and sorry for the troubles. Still not sure if it is our fault or not, sorry for that.
If you're still interested in debugging, having logs of
pip install -v concrete-ml==0.6.1
pip install -vv concrete-ml==0.6.1
pip install -vvv concrete-ml==0.6.1
and the same for concrete-compiler==0.23.4 might help.
Here are the logs for those, in case you find it helpful:
$ ~ pip install -v concrete-ml==0.6.1
Using pip 23.0 from /Users/rmagner/Documents/Experiments/Concrete/venv/lib/python3.8/site-packages/pip (python 3.8)
Collecting concrete-ml==0.6.1
Using cached concrete_ml-0.6.1-py3-none-any.whl (119 kB)
Collecting hummingbird-ml[onnx]==0.4.4
Using cached hummingbird_ml-0.4.4-py2.py3-none-any.whl (181 kB)
Collecting scikit-learn==1.0.2
Using cached scikit_learn-1.0.2-cp38-cp38-macosx_10_13_x86_64.whl (7.9 MB)
Collecting concrete-ml-extensions-brevitas==0.1.0
Using cached concrete_ml_extensions_brevitas-0.1.0-py3-none-any.whl (414 kB)
Collecting xgboost==1.6.2
Using cached xgboost-1.6.2-py3-none-macosx_10_15_x86_64.macosx_11_0_x86_64.macosx_12_0_x86_64.whl (1.7 MB)
Collecting numpy==1.21.6
Using cached numpy-1.21.6-cp38-cp38-macosx_10_9_x86_64.whl (16.9 MB)
Collecting skorch==0.11.0
Using cached skorch-0.11.0-py3-none-any.whl (155 kB)
Collecting onnx==1.12.0
Using cached onnx-1.12.0-cp38-cp38-macosx_10_12_x86_64.whl (12.4 MB)
Collecting typing-extensions==4.4.0
Using cached typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting setuptools==65.6.3
Using cached setuptools-65.6.3-py3-none-any.whl (1.2 MB)
Collecting concrete-numpy==0.9.0
Using cached concrete_numpy-0.9.0-py3-none-any.whl (82 kB)
Collecting protobuf==3.19.4
Using cached protobuf-3.19.4-cp38-cp38-macosx_10_9_x86_64.whl (961 kB)
Collecting onnxoptimizer==0.2.7
Using cached onnxoptimizer-0.2.7-cp38-cp38-macosx_10_9_x86_64.whl (441 kB)
Collecting torch==1.12.1
Using cached torch-1.12.1-cp38-none-macosx_10_9_x86_64.whl (137.8 MB)
Collecting scipy==1.7.3
Using cached scipy-1.7.3-cp38-cp38-macosx_10_9_x86_64.whl (33.0 MB)
Collecting dependencies==2.0.1
Using cached dependencies-2.0.1-py2.py3-none-any.whl (15 kB)
Collecting packaging
Using cached packaging-23.0-py3-none-any.whl (42 kB)
Collecting future-annotations
Using cached future_annotations-1.0.0-py2.py3-none-any.whl (5.6 kB)
Collecting networkx<3.0.0,>=2.6.3
Using cached networkx-2.8.8-py3-none-any.whl (2.0 MB)
Collecting Pillow<10.0.0,>=9.0.0
Using cached Pillow-9.4.0-2-cp38-cp38-macosx_10_10_x86_64.whl (3.3 MB)
INFO: pip is looking at multiple versions of concrete-ml-extensions-brevitas to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of <Python from Requires-Python> to determine which version is compatible with other requirements. This could take a while.
INFO: pip is looking at multiple versions of concrete-ml to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement concrete-compiler<0.24.0,>=0.23.1 (from concrete-numpy) (from versions: 0.1.1, 0.1.2, 0.2.0, 0.3.0, 0.3.1, 0.4.0, 0.5.0, 0.6.0, 0.7.0, 0.8.0, 0.9.0, 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0, 0.15.0, 0.16.0)
ERROR: No matching distribution found for concrete-compiler<0.24.0,>=0.23.1
and the others are larger so I attached them here as txt files. vv.log vvv.log
Oops, I forgot to attach the same for concrete-compiler==0.23.1. v-cc.log vv-cc.log vvv-cc.log
First time I have a look at that kind of file, but let me try!
I extract 0.23.4 things:
Skipping link: none of the wheel's tags (cp310-cp310-macosx_11_0_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/f8/0b/58ee88e2abdf48bfec75f05f5d81af793f02ea90e4a1dececf26a4c3bad4/concrete_compiler-0.23.4-cp310-cp310-macosx_11_0_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp310-cp310-manylinux_2_28_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/de/68/702b8c831a48ccc592c936fe3bfea2e483916496f7e0f445307db4a60f9b/concrete_compiler-0.23.4-cp310-cp310-manylinux_2_28_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp37-cp37m-manylinux_2_28_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/16/74/4333e563e7e551998e95378d7182da50a1758caee011098126e6e45d2a83/concrete_compiler-0.23.4-cp37-cp37m-manylinux_2_28_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp38-cp38-macosx_11_0_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/1d/72/aaac30031931611bd9ce6e4208ef9f4a4d7d2d0b2b33131f415e19a7514f/concrete_compiler-0.23.4-cp38-cp38-macosx_11_0_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp38-cp38-manylinux_2_28_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/f2/56/89806c1b2b0b7bda702af2584232e4fa5b84c7a35f8905db481234142491/concrete_compiler-0.23.4-cp38-cp38-manylinux_2_28_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp39-cp39-macosx_11_0_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/e3/6f/153b47fd13545b6be5cbe3850953572965c190f93d96ead16879cc590076/concrete_compiler-0.23.4-cp39-cp39-macosx_11_0_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Skipping link: none of the wheel's tags (cp39-cp39-manylinux_2_28_x86_64) are compatible (run pip debug --verbose to show compatible tags): https://files.pythonhosted.org/packages/5a/89/1f2bde24d7fb2fd384e6e478e70a64f00b3ece8a6355b39ef34dea195b0a/concrete_compiler-0.23.4-cp39-cp39-manylinux_2_28_x86_64.whl (from https://pypi.org/simple/concrete-compiler/)
Three of them are for macOS: cp38-cp38-macosx_11_0_x86_64, cp39-cp39-macosx_11_0_x86_64, cp310-cp310-macosx_11_0_x86_64
Then I do pip debug --verbose
: I can check that there are compatible things
% pip debug --verbose | grep "cp38-cp38-macosx_11_0_x86_64\|cp39-cp39-macosx_11_0_x86_64\|cp310-cp310-macosx_11_0_x86_64"
WARNING: This command is only meant for debugging. Do not use this with automation for parsing and getting these details, since the output and options of this command may change without notice.
cp38-cp38-macosx_11_0_x86_64
So, now, @rickymagner, could you try:
pip debug --verbose | grep "cp38-cp38-macosx_11_0_x86_64\|cp39-cp39-macosx_11_0_x86_64\|cp310-cp310-macosx_11_0_x86_64"
on your machine, and normally I guess you're going to have nothingpip debug --verbose
output?pip debug --verbose | grep "cp3.-cp3.-macosx_1._0_x86_64"
pip debug --verbose | grep "cp3..-cp3..-macosx_1._0_x86_64"
Hi, yes here are the outputs of the commands:
$ ~ pip debug --verbose | grep "cp38-cp38-macosx_11_0_x86_64\|cp39-cp39-macosx_11_0_x86_64\|cp310-cp310-macosx_11_0_x86_64"
WARNING: This command is only meant for debugging. Do not use this with automation for parsing and getting these details, since the output and options of this command may change without notice.
This has exit code 1.
The next command pip debug --verbose
is attached. And the final two are the same as above: exit code 1 with the same warning about debugging.
Thanks!
Hum, I don't see any macosx_11_0 in your pip_debug_verbose.txt, which is surprising. You have a 12.6.2 (from your sw_vers) but your python config seems very strange.
And why do I see /Users/rmagner/opt/anaconda3/lib/python3.8/site-packages/pip
? Aren't you in your venv?
For me:
which pip
says [REDACTED]/concrete-ml-internal/.venv/bin/pip
, for example
Hi, sorry for the late reply. Yes, I am in the venv, so it's strange that which pip3
is pointing to the conda version. Perhaps there's something with conda polluting the venv? I haven't used conda very much, so perhaps I can try removing it and retrying? Though I'm not sure if that would break anything else…
Maybe you should have a look to your PATH. Maybe conda path is put in the first place? Hard to debug that remotely, it looks very related to your configuration
Or, instead of pip
, try to do python -m pip
, which may prevent your system to use conda
I did end up removing conda from my system and checking it was removed from my $PATH successfully. Now it looks like which pip3
points to the venv location:
$ ~ which pip3
/Users/rmagner/Documents/Experiments/Concrete/venv/bin/pip3
This seems like progress, but unfortunately following the guide to install e.g. wheel, etc. and then concrete-ml==0.6.1 results in the same concrete-compiler issues as above. Now my environment seems to be in python3.9.6. Could this be an issue?
Also, thanks for your help so far, but it's possible we could close the issue if you'd like since it seems like it's probably something weird with my environment rather than a problem with the package itself.
python3.7 to python3.9 are supported, so now, it should be fine.
OK yes, we'll close the issue as you proposed, since something seems quite wrong in your system. Sorry that it's too hard to debug that remotely.
Summary
I'm unable to compile a model in my MacOS environment.
Description
Steps to reproduce:
python example.py
and get this error:%0 = [[ -3] [-1 ... -1] [ 4]] # ClearTensor<int8, shape=(30, 1)> %1 = _input_0 # EncryptedTensor<uint8, shape=(1, 30)> %2 = -131 # ClearScalar
%3 = add(%1, %2) # EncryptedTensor<int9, shape=(1, 30)>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ only up to 8-bit integers are supported
%4 = subgraph(%3) # EncryptedTensor<int8, shape=(1, 30)>
%5 = matmul(%4, %0) # EncryptedTensor<int16, shape=(1, 1)>
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ only up to 8-bit integers are supported
%6 = subgraph(%5) # EncryptedTensor<uint8, shape=(1, 1)>
return %6
Subgraphs:
$ ~ gcc --version Apple clang version 14.0.0 (clang-1400.0.29.202) Target: x86_64-apple-darwin21.6.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin