Keras-Prodigy version conflict issue


I am using the latest version of Prodigy(1.41). I am trying to install keras(2.1.5) with tensorflow(1.6.0) dependency in my current environment.
On doing so, I run into an issue with html5lib.
Spacy requires html5lib==1.0b8 whereas keras requires html5lib==0.99

This is my conceptual conflict error message:

ContextualVersionConflict: (html5lib 1.0b8 (/Users/home/my_testenv1/lib/python3.6/site-packages), Requirement.parse(‘html5lib==0.9999999’), {‘tensorboard’})

Has anyone come across this issue in the past? Can you share your thoughts or give me some advice on how to run keras with prodigy?

Thank you and appreciate all the help.

Ah, damn – the good news is: we’ve already removed the html5lib dependency from the spaCy version on master, so this won’t be a problem anymore in the next release. (The only reason we needed it was to mitigate an issue with the six package – which we’ve also removed for the upcoming version.)

Since spaCy doesn’t even use this dependency directly, is there a way you can ignore the version conflict? For example, by setting --ignore-installed?

Is this bug new in 1.4.1? I have 1.4.0 installed alongside Keras and didn’t see any problems.

No, I’m pretty sure spaCy has had this dependency for a while. I think it might come down to what you installed first, and how strict you’re enforcing version conflict checks?

Hi Ines,

–ignore installed wasn’t helpful. Thanks for the advice.
I am running Prodigy and keras on two separate environments for now.

Thank you

Forgot to update, sorry – this issue should be fixed in spaCy v2.0.11, which removes a bunch of dependencies, including the conflicting html5lib. So you should be able to simply upgrade spaCy in your Prodigy environment:

pip install -U spacy

Thank you so much, Ines

1 Like