Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to install the package on Mac OS #58

Closed
bhav09 opened this issue Jul 6, 2023 · 1 comment
Closed

Unable to install the package on Mac OS #58

bhav09 opened this issue Jul 6, 2023 · 1 comment

Comments

@bhav09
Copy link

bhav09 commented Jul 6, 2023

Unable to install Nemo-guardrails on Mac OS

The issue seems with the package annoy==1.17.1. It fails to build the wheel for this version, however, 1.17.3 works.
I upgraded my pip and setup tools version too but the error persisted.
Can you please look into this? @drazvan @aaronp24

Python Version: 3.10.9
Mac OS: Venture 13.2

Sharing the error log below:

Collecting nemoguardrails
  Using cached nemoguardrails-0.3.0-py3-none-any.whl (13.8 MB)
Requirement already satisfied: pydantic~=1.10.6 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (1.10.11)
Requirement already satisfied: aiohttp==3.8.4 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (3.8.4)
Requirement already satisfied: langchain==0.0.167 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.0.167)
Requirement already satisfied: requests>=2.31.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (2.31.0)
Requirement already satisfied: typer==0.7.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.7.0)
Requirement already satisfied: PyYAML~=6.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (6.0)
Requirement already satisfied: setuptools~=65.5.1 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (65.5.1)
Collecting annoy==1.17.1 (from nemoguardrails)
  Using cached annoy-1.17.1.tar.gz (647 kB)
  Preparing metadata (setup.py) ... done
Requirement already satisfied: sentence-transformers==2.2.2 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (2.2.2)
Requirement already satisfied: fastapi==0.96.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.96.0)
Requirement already satisfied: starlette==0.27.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.27.0)
Requirement already satisfied: uvicorn==0.22.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.22.0)
Requirement already satisfied: httpx==0.23.3 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.23.3)
Requirement already satisfied: simpleeval==0.9.13 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (0.9.13)
Requirement already satisfied: typing-extensions==4.5.0 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (4.5.0)
Requirement already satisfied: Jinja2==3.1.2 in ./venv/lib/python3.10/site-packages (from nemoguardrails) (3.1.2)
Requirement already satisfied: attrs>=17.3.0 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (23.1.0)
Requirement already satisfied: charset-normalizer<4.0,>=2.0 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (3.1.0)
Requirement already satisfied: multidict<7.0,>=4.5 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (6.0.4)
Requirement already satisfied: async-timeout<5.0,>=4.0.0a3 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (4.0.2)
Requirement already satisfied: yarl<2.0,>=1.0 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (1.9.2)
Requirement already satisfied: frozenlist>=1.1.1 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (1.3.3)
Requirement already satisfied: aiosignal>=1.1.2 in ./venv/lib/python3.10/site-packages (from aiohttp==3.8.4->nemoguardrails) (1.3.1)
Requirement already satisfied: certifi in ./venv/lib/python3.10/site-packages (from httpx==0.23.3->nemoguardrails) (2023.5.7)
Requirement already satisfied: httpcore<0.17.0,>=0.15.0 in ./venv/lib/python3.10/site-packages (from httpx==0.23.3->nemoguardrails) (0.16.3)
Requirement already satisfied: rfc3986[idna2008]<2,>=1.3 in ./venv/lib/python3.10/site-packages (from httpx==0.23.3->nemoguardrails) (1.5.0)
Requirement already satisfied: sniffio in ./venv/lib/python3.10/site-packages (from httpx==0.23.3->nemoguardrails) (1.3.0)
Requirement already satisfied: MarkupSafe>=2.0 in ./venv/lib/python3.10/site-packages (from Jinja2==3.1.2->nemoguardrails) (2.1.3)
Requirement already satisfied: SQLAlchemy<3,>=1.4 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (2.0.18)
Requirement already satisfied: dataclasses-json<0.6.0,>=0.5.7 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (0.5.9)
Requirement already satisfied: numexpr<3.0.0,>=2.8.4 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (2.8.4)
Requirement already satisfied: numpy<2,>=1 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (1.25.0)
Requirement already satisfied: openapi-schema-pydantic<2.0,>=1.2 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (1.2.4)
Requirement already satisfied: tenacity<9.0.0,>=8.1.0 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (8.2.2)
Requirement already satisfied: tqdm>=4.48.0 in ./venv/lib/python3.10/site-packages (from langchain==0.0.167->nemoguardrails) (4.65.0)
Requirement already satisfied: transformers<5.0.0,>=4.6.0 in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (4.30.2)
Requirement already satisfied: torch>=1.6.0 in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (2.0.1)
Requirement already satisfied: torchvision in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (0.15.2)
Requirement already satisfied: scikit-learn in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (1.3.0)
Requirement already satisfied: scipy in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (1.11.1)
Requirement already satisfied: nltk in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (3.8.1)
Requirement already satisfied: sentencepiece in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (0.1.99)
Requirement already satisfied: huggingface-hub>=0.4.0 in ./venv/lib/python3.10/site-packages (from sentence-transformers==2.2.2->nemoguardrails) (0.16.2)
Requirement already satisfied: anyio<5,>=3.4.0 in ./venv/lib/python3.10/site-packages (from starlette==0.27.0->nemoguardrails) (3.7.1)
Requirement already satisfied: click<9.0.0,>=7.1.1 in ./venv/lib/python3.10/site-packages (from typer==0.7.0->nemoguardrails) (8.1.3)
Requirement already satisfied: h11>=0.8 in ./venv/lib/python3.10/site-packages (from uvicorn==0.22.0->nemoguardrails) (0.14.0)
Requirement already satisfied: idna<4,>=2.5 in ./venv/lib/python3.10/site-packages (from requests>=2.31.0->nemoguardrails) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in ./venv/lib/python3.10/site-packages (from requests>=2.31.0->nemoguardrails) (2.0.3)
Requirement already satisfied: exceptiongroup in ./venv/lib/python3.10/site-packages (from anyio<5,>=3.4.0->starlette==0.27.0->nemoguardrails) (1.1.2)
Requirement already satisfied: marshmallow<4.0.0,>=3.3.0 in ./venv/lib/python3.10/site-packages (from dataclasses-json<0.6.0,>=0.5.7->langchain==0.0.167->nemoguardrails) (3.19.0)
Requirement already satisfied: marshmallow-enum<2.0.0,>=1.5.1 in ./venv/lib/python3.10/site-packages (from dataclasses-json<0.6.0,>=0.5.7->langchain==0.0.167->nemoguardrails) (1.5.1)
Requirement already satisfied: typing-inspect>=0.4.0 in ./venv/lib/python3.10/site-packages (from dataclasses-json<0.6.0,>=0.5.7->langchain==0.0.167->nemoguardrails) (0.9.0)
Requirement already satisfied: filelock in ./venv/lib/python3.10/site-packages (from huggingface-hub>=0.4.0->sentence-transformers==2.2.2->nemoguardrails) (3.12.2)
Requirement already satisfied: fsspec in ./venv/lib/python3.10/site-packages (from huggingface-hub>=0.4.0->sentence-transformers==2.2.2->nemoguardrails) (2023.6.0)
Requirement already satisfied: packaging>=20.9 in ./venv/lib/python3.10/site-packages (from huggingface-hub>=0.4.0->sentence-transformers==2.2.2->nemoguardrails) (23.1)
Requirement already satisfied: greenlet!=0.4.17 in ./venv/lib/python3.10/site-packages (from SQLAlchemy<3,>=1.4->langchain==0.0.167->nemoguardrails) (2.0.2)
Requirement already satisfied: sympy in ./venv/lib/python3.10/site-packages (from torch>=1.6.0->sentence-transformers==2.2.2->nemoguardrails) (1.12)
Requirement already satisfied: networkx in ./venv/lib/python3.10/site-packages (from torch>=1.6.0->sentence-transformers==2.2.2->nemoguardrails) (3.1)
Requirement already satisfied: regex!=2019.12.17 in ./venv/lib/python3.10/site-packages (from transformers<5.0.0,>=4.6.0->sentence-transformers==2.2.2->nemoguardrails) (2023.6.3)
Requirement already satisfied: tokenizers!=0.11.3,<0.14,>=0.11.1 in ./venv/lib/python3.10/site-packages (from transformers<5.0.0,>=4.6.0->sentence-transformers==2.2.2->nemoguardrails) (0.13.3)
Requirement already satisfied: safetensors>=0.3.1 in ./venv/lib/python3.10/site-packages (from transformers<5.0.0,>=4.6.0->sentence-transformers==2.2.2->nemoguardrails) (0.3.1)
Requirement already satisfied: joblib in ./venv/lib/python3.10/site-packages (from nltk->sentence-transformers==2.2.2->nemoguardrails) (1.3.1)
Requirement already satisfied: threadpoolctl>=2.0.0 in ./venv/lib/python3.10/site-packages (from scikit-learn->sentence-transformers==2.2.2->nemoguardrails) (3.1.0)
Requirement already satisfied: pillow!=8.3.*,>=5.3.0 in ./venv/lib/python3.10/site-packages (from torchvision->sentence-transformers==2.2.2->nemoguardrails) (9.5.0)
Requirement already satisfied: mypy-extensions>=0.3.0 in ./venv/lib/python3.10/site-packages (from typing-inspect>=0.4.0->dataclasses-json<0.6.0,>=0.5.7->langchain==0.0.167->nemoguardrails) (1.0.0)
Requirement already satisfied: mpmath>=0.19 in ./venv/lib/python3.10/site-packages (from sympy->torch>=1.6.0->sentence-transformers==2.2.2->nemoguardrails) (1.3.0)
Building wheels for collected packages: annoy
  Building wheel for annoy (setup.py) ... error
  error: subprocess-exited-with-error
  
  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [18 lines of output]
      /Users/bhavishya.pandit/PycharmProjects/AI Security/venv/lib/python3.10/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
        warnings.warn(
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib.macosx-10.9-universal2-cpython-310
      creating build/lib.macosx-10.9-universal2-cpython-310/annoy
      copying annoy/__init__.py -> build/lib.macosx-10.9-universal2-cpython-310/annoy
      copying annoy/__init__.pyi -> build/lib.macosx-10.9-universal2-cpython-310/annoy
      copying annoy/py.typed -> build/lib.macosx-10.9-universal2-cpython-310/annoy
      running build_ext
      building 'annoy.annoylib' extension
      creating build/temp.macosx-10.9-universal2-cpython-310
      creating build/temp.macosx-10.9-universal2-cpython-310/src
      /usr/bin/clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch arm64 -arch x86_64 -g "-I/Users/bhavishya.pandit/PycharmProjects/AI Security/venv/include" -I/Library/Frameworks/Python.framework/Versions/3.10/include/python3.10 -c src/annoymodule.cc -o build/temp.macosx-10.9-universal2-cpython-310/src/annoymodule.o -D_CRT_SECURE_NO_WARNINGS -fpermissive -march=native -O3 -ffast-math -fno-associative-math -DANNOYLIB_MULTITHREADED_BUILD -std=c++14 -mmacosx-version-min=10.12
      clang: error: the clang compiler does not support '-march=native'
      error: command '/usr/bin/clang' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for annoy
  Running setup.py clean for annoy
Failed to build annoy
**ERROR: Could not build wheels for annoy, which is required to install pyproject.toml-based projects**

Thank you!

@drazvan
Copy link
Collaborator

drazvan commented Jul 11, 2023

Thanks for reporting this @bhav09. Indeed, this is an issue with Mac OS venture 13.2 (and onwards). The 1.17.3 release from annoy specifically fixes this: https://github.com/spotify/annoy/releases/tag/v1.17.3. We'll update the dependency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants