Prodigy 1.9.9 for windows - divider() got an unexpected keyword argument 'icon'

There are several errors in this version. I just commented these lines with error in the *.py for now. However the follow error I can't get around. Command I ran

python -m prodigy train textcat tmp_positive_all blank:en -o /tmp/tmp_model/ -es 0.5

Here is the error -

Created and merged data for 10 total examples
Using 5 train / 5 eval (split 50%)
Component: textcat | Batch size: compounding | Dropout: 0.2 | Iterations: 10
ℹ Baseline accuracy: -1.000
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\runpy.py", line 193, in _run_module_as_main
 "__main__", mod_spec)
File "C:\ProgramData\Anaconda3\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\ProgramData\Anaconda3\lib\site-packages\prodigy\__main__.py", line 60, in 
<module>
controller = recipe(*args, use_plac=True)
File "cython_src\prodigy\core.pyx", line 213, in 
prodigy.core.recipe.recipe_decorator.recipe_proxy
File "C:\ProgramData\Anaconda3\lib\site-packages\plac_core.py", line 328, in call
cmd, result = parser.consume(arglist)
File "C:\ProgramData\Anaconda3\lib\site-packages\plac_core.py", line 207, in 
consume
return cmd, self.func(*(args + varargs + extraopts), **kwargs)
File "C:\ProgramData\Anaconda3\lib\site-packages\prodigy\recipes\train.py", line 
149, in train
with train_printer as (get_acc, result, summary):
File "C:\ProgramData\Anaconda3\lib\contextlib.py", line 81, in __enter__
return next(self.gen)
File "cython_src\prodigy\components\printers.pyx", line 123, in train_printer
TypeError: divider() got an unexpected keyword argument 'icon'

It looks like you ended up with an older version of wasabi that's lower than the version required by Prodigy. So try running pip install -U wasabi!

Which version of wasabi should I install? I got the following -

N:>pip install -U wasabi
Requirement already up-to-date: wasabi in c:\programdata\anaconda3\lib\site-packages (0.6.0)

The latest is fine, it should be fully backwards-compatible. Prodigy v1.9.9 pins to wasabi>=0.4.2,<1.1.0.

And are you sure that's the same environment? Maybe you ended up in a weird state? The error definitely indicates that this module is calling into an older version of wasabi here. That would also explain other similar errors you might be seeing.

I think I installed 1.9.6 instead of 1.9.9. How can I manually uninstall prodigy? After I removed these prodigy files under site-packages. I still cant' install 1.9.9. Here is the error I got
N:>pip install prodigy z:\prodigy\installation\prodigy-1.9.9-cp36.cp37.cp38-cp36m.cp37m.cp38-win_amd64.whl
ERROR: Double requirement given: prodigy==1.9.9 from file:///Z:/prodigy/installation/prodigy-1.9.9-cp36.cp37.cp38-cp36m.cp37m.cp38-win_amd64.whl (already in prodigy, name='prodigy')
WARNING: You are using pip version 19.3.1; however, version 20.0.2 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

Okay, so this does sound like you ended up with a weird environment and there's something messed up here. If it's a virtual environment, just remove it and try again fresh?

In general, I'd recommend to always start with a fresh virtual environment upgrading main packages (not just Prodigy – anything really) to avoid getting stuck in a weird state.

Yes, i created a new virtual env and it worked now.

1 Like