mustafaaljadery / lightning-whisper-mlx

An extremely fast implementation of whisper optimized for Apple Silicon using MLX.
https://mustafaaljadery.github.io/lightning-whisper-mlx/
580 stars 29 forks source link

fail to pip install on Mac Pro #9

Closed taozhiyuai closed 6 months ago

taozhiyuai commented 6 months ago

Mac Pro m3 max 128GB

fail to install, anyone help? thanks.

taozhiyu@603e5f4a42f1 ~ % pip3 install lightning-whisper-mlx Looking in indexes: https://pypi.mirrors.ustc.edu.cn/simple/ Collecting lightning-whisper-mlx Downloading https://mirrors.bfsu.edu.cn/pypi/web/packages/55/f7/7792e314703254a4e3543b35b66bc8316d4bad10007e07f13081e11cbf90/lightning_whisper_mlx-0.0.10-py3-none-any.whl (947 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 947.4/947.4 kB 5.1 MB/s eta 0:00:00 Requirement already satisfied: huggingface-hub in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (0.22.2) Requirement already satisfied: mlx in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (0.12.0) Collecting numba (from lightning-whisper-mlx) Downloading https://mirrors.bfsu.edu.cn/pypi/web/packages/54/7e/6d5ca55bcffd569e506b488673aca396ac76a543b4dcd57fe713c318fe0c/numba-0.59.1-cp312-cp312-macosx_11_0_arm64.whl (2.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.6/2.6 MB 20.3 MB/s eta 0:00:00 Requirement already satisfied: numpy in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (1.26.4) Requirement already satisfied: torch in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (2.3.0) Requirement already satisfied: tqdm in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (4.66.2) Collecting more-itertools (from lightning-whisper-mlx) Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/50/e2/8e10e465ee3987bb7c9ab69efb91d867d93959095f4807db102d07995d94/more_itertools-10.2.0-py3-none-any.whl (57 kB) Collecting tiktoken==0.3.3 (from lightning-whisper-mlx) Downloading https://mirrors.bfsu.edu.cn/pypi/web/packages/8e/3a/20704b89b271cfebb1c981ef9f172fb18cb879b5c5cfc3b209083f71b229/tiktoken-0.3.3.tar.gz (25 kB) Installing build dependencies ... done Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... done Requirement already satisfied: scipy in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from lightning-whisper-mlx) (1.13.0) Requirement already satisfied: regex>=2022.1.18 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from tiktoken==0.3.3->lightning-whisper-mlx) (2023.12.25) Requirement already satisfied: requests>=2.26.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from tiktoken==0.3.3->lightning-whisper-mlx) (2.31.0) Requirement already satisfied: filelock in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from huggingface-hub->lightning-whisper-mlx) (3.13.3) Requirement already satisfied: fsspec>=2023.5.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from huggingface-hub->lightning-whisper-mlx) (2024.3.1) Requirement already satisfied: packaging>=20.9 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from huggingface-hub->lightning-whisper-mlx) (24.0) Requirement already satisfied: pyyaml>=5.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from huggingface-hub->lightning-whisper-mlx) (6.0.1) Requirement already satisfied: typing-extensions>=3.7.4.3 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from huggingface-hub->lightning-whisper-mlx) (4.10.0) Collecting llvmlite<0.43,>=0.42.0dev0 (from numba->lightning-whisper-mlx) Downloading https://mirrors.bfsu.edu.cn/pypi/web/packages/7b/1b/0fc1895fd6ae3b50775aaee42221668e0d04927b386d8e56940710e63b1f/llvmlite-0.42.0-cp312-cp312-macosx_11_0_arm64.whl (28.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 28.8/28.8 MB 35.5 MB/s eta 0:00:00 Requirement already satisfied: sympy in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from torch->lightning-whisper-mlx) (1.12) Requirement already satisfied: networkx in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from torch->lightning-whisper-mlx) (3.3) Requirement already satisfied: jinja2 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from torch->lightning-whisper-mlx) (3.1.3) Requirement already satisfied: charset-normalizer<4,>=2 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from requests>=2.26.0->tiktoken==0.3.3->lightning-whisper-mlx) (3.3.2) Requirement already satisfied: idna<4,>=2.5 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from requests>=2.26.0->tiktoken==0.3.3->lightning-whisper-mlx) (3.6) Requirement already satisfied: urllib3<3,>=1.21.1 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from requests>=2.26.0->tiktoken==0.3.3->lightning-whisper-mlx) (2.2.1) Requirement already satisfied: certifi>=2017.4.17 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from requests>=2.26.0->tiktoken==0.3.3->lightning-whisper-mlx) (2024.2.2) Requirement already satisfied: MarkupSafe>=2.0 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from jinja2->torch->lightning-whisper-mlx) (2.1.5) Requirement already satisfied: mpmath>=0.19 in /Library/Frameworks/Python.framework/Versions/3.12/lib/python3.12/site-packages (from sympy->torch->lightning-whisper-mlx) (1.3.0) Building wheels for collected packages: tiktoken Building wheel for tiktoken (pyproject.toml) ... error error: subprocess-exited-with-error

× Building wheel for tiktoken (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [37 lines of output] running bdist_wheel running build running build_py creating build creating build/lib.macosx-10.9-universal2-cpython-312 creating build/lib.macosx-10.9-universal2-cpython-312/tiktoken copying tiktoken/registry.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken copying tiktoken/init.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken copying tiktoken/core.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken copying tiktoken/model.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken copying tiktoken/load.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken creating build/lib.macosx-10.9-universal2-cpython-312/tiktoken_ext copying tiktoken_ext/openai_public.py -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken_ext running egg_info writing tiktoken.egg-info/PKG-INFO writing dependency_links to tiktoken.egg-info/dependency_links.txt writing requirements to tiktoken.egg-info/requires.txt writing top-level names to tiktoken.egg-info/top_level.txt reading manifest file 'tiktoken.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'Makefile' adding license file 'LICENSE' writing manifest file 'tiktoken.egg-info/SOURCES.txt' copying tiktoken/py.typed -> build/lib.macosx-10.9-universal2-cpython-312/tiktoken running build_ext running build_rust error: can't find Rust compiler

  If you are using an outdated pip version, it is possible a prebuilt wheel is available for this package but pip is not able to install from it. Installing from the wheel would avoid the need for a Rust compiler.

  To update pip, run:

      pip install --upgrade pip

  and then retry package installation.

  If you did intend to build this package from source, try installing a Rust compiler from your system package manager and ensure it is on the PATH during installation. Alternatively, rustup (available at https://rustup.rs) is the recommended way to download and update the Rust compiler toolchain.
  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for tiktoken Failed to build tiktoken ERROR: Could not build wheels for tiktoken, which is required to install pyproject.toml-based projects

mustafaaljadery commented 6 months ago

Hey, you need to install rust for the tiktoken tokenizer. Install rust on my by running the following:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Or check out the official rust site: https://www.rust-lang.org/tools/install.

After that, run the pip install again.