While following the tutorial 'Prodigy-PDF for PDF annotation and OCR - Prodigy Shorts' using a conda environment on a MAC M1 I got the error "ImportError: cannot import name 'ControllerComponentDict' from 'prodigy'". I installed prodigy with 'python -m' and used the command "python -m prodigy pdf.image.manual bet /Users/rb/ --label number, date, title".
I check the installed packages with "python -m pip list" and found that there is no package 'ControllerComponentDict'.
Can you try to upgrade to Prodigy v1.12.7? We updated a new controller in v1.12.0 so I suspect that'll help.
I looked up your license and it seems like 12 months of free upgrades did expire; however, as a thank you to all of our users, we provided v1.12.x version as one-time free extension to all users when we released it. We sent an email in July about this free upgrade.
You can use the old pip install with your license key. But we also updated how we provide wheel files, now using https://download.prodi.gy and using your license key as Username. The nice thing with this approach is it'll show you all past versions of Prodigy you're eligible for (not just the most recent).
One disclaimer: all of the new plugins are developed with the most current of Prodigy. We're trying to avoid issues like this but we can't promise backward support. So there's a chance even with v1.12.7, you may find this (or other plugins) have some component that's on a more recent version of Prodigy.
I tried --upgrade prodigy but did not got any updates (so it is still 1.11.8). My phyton version is 3.10. Is there a way to install a specific version, not just the last stable one?
This is why we moved to this new download.prodi.gy server as now users can install any version of Prodigy they're eligible for (not just the most recent).
Then use these instructions to install the wheel file.
In general, I would recommend installing it on a new venv. Python 3.10 should be fine. Your annotations will be okay even if you upgrade if you're still pointing to the same location where you DB is (e.g., PRODIGY_HOME location in prodigy stats).
I downloaded the wheel prodigy-1.12.7-cp310-cp310-macosx_11_0_arm64.whl, as far as I have a MacBook Air with M1 and the current macOS Sonoma 14.0.
pip complains that it is not the right wheel for the platform. Which one would be better suited?
You may want to try prodigy-1.12.7-cp310-cp310-macosx_11_0_x86_64.whl.
You can confirm by running prodigy stats and then looking at your Platform.
$ prodigy stats
============================== ✨ Prodigy Stats ==============================
Version 1.13.1
Location /usr/local/lib/python3.9/site-packages/prodigy
Prodigy Home /Users/rhymenoceros/.prodigy
Platform macOS-14.0-x86_64-i386-64bit
Python Version 3.9.17
Spacy Version 3.5.2
Database Name SQLite
Database Id sqlite
Total Datasets 23
Total Sessions 103
I got it working after completely uninstalling anaconda, installing miniconda for the M1 and installing the corresponding prodigy version 12.7 for python 3.10 and MacOS for ARM64:)
THX for the support!!!