ModuleNotFoundError: No module named 'prodigy.components'; 'prodigy' is not a package


I have a problem installing prodigy on MacOS (MacOS 13.4.1). I downloaded Prodigy v1.13.0 for Mac.

Python 3.9.16, pip 23.2.1

I have installed prodigy with pip. I also tried to install it with pip install prodigy -f /path/to/wheels and pip install path/prodigy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl. I also unpacked the appropriate .whl file and put it into site-packages directory. But it all did not help. I do believe it is some problem with the installation on MacOS specifically as the package installation worked perfectly on my Linux machine.

Thanks in advance for your reply.

hi Varvara,

Thanks for your post and sorry for the problems!

I just tried on nearly the same:

  • MacOS 13.4.1
  • M1 (arm64)
  • Python 3.9.17
  • pip 23.2.1
  • prodigy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl

And had no issues running:

$ python3.9 -m venv venv

$ source venv/bin/activate

(venv) $ pip install prodigy -f prodigy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl
Looking in links: prodigy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl
Processing ./prodigy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl
Collecting pyjwt<3.0.0,>=2.0.0

(venv) $ prodigy stats

============================== ✨  Prodigy Stats ==============================

Version          1.13.0                        
Location         /Users/ryan/Downloads/my_prodigy_project/venv/lib/python3.9/site-packages/prodigy
Prodigy Home     /Users/ryan/.prodigy          
Platform         macOS-13.4.1-arm64-arm-64bit  
Python Version   3.9.17                        
Spacy Version    3.6.1                         
Database Name    SQLite                        
Database Id      sqlite                        
Total Datasets   0                            
Total Sessions   0                   

Just curious - are you using an Intel or M1/M2 mac? Can you run arch?

What are the error messages you're getting with your failed installation?

Does it work if you run python -m pip install prodigy -f /path/to/wheels?