successar / AttentionExplanation

GNU General Public License v3.0
310 stars 40 forks source link

Python & Dependency Versions #13

Open Akaiyo opened 1 year ago

Akaiyo commented 1 year ago

Hello, I went through the setup of this paper for replication and wanted to share my experience. 3 years have passed since this repository was updated and a lot of versions changed in the software world...

Running the mentioned dependency versions seem to not work on python 3.8 or higher. Version 3.7 is required.

This project requires compiling pytorch from source master branch or use pytorch-nightly. We use features that are not in stable release. It also requires installation of torchtext version 0.4.0 from source.

The mentioned features are now available from pytorch 1.1.0 onwards. Installing via pip install torch===1.1.0 torchtext===0.4.0 -f https://download.pytorch.org/whl/torch_stable.html works and the dependencies could be added to the requirements.txt .

However, running this version in google colab with a gpu does not work (as of 19.01.2023) but torch===1.2.0+cu92 can be used instead (it just gives a deprecation warning). I did not test newer versions of pytorch.

Running the project with the above mentioned setup yields an additional error from allennlp:

ArrayField.empty_field: return type `None` is not a `<class 'allennlp.data.fields.field.Field'>`.

The solution, pip install overrides==3.1.0, mentioned in the following issue https://github.com/allenai/specter/issues/27 fixes the problem.

I do not expect the authors to fix the repository and in general I want to applaud the reproducability and setup of the code. I am just writing this in the hope that the next person that stumbles on these problems can fix them faster. Maybe I have the time myself for a pull request and to verify once more that a new requirements file works.