How to make the code work on Python 3.8
oqusous opened this issue · comments
Is there a way to get the code running on python 3.8? Why is it necessary to have it on 3.7?
I get errors related to scikit-learn, numpy and allennlp.
I guess there's no necessity for Python 3.7. We just tested the code with Python 3.7 and we cannot guarantee that it'll work with other versions.
It does not work,
Traceback (most recent call last):
File "predict_gector.py", line 5, in <module>
from gector.gec_model import GecBERTModel
File "/home/omarq/gector/gector/gec_model.py", line 8, in <module>
from allennlp.data.dataset import Batch
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/__init__.py", line 1, in <module>
from allennlp.data.dataset_readers.dataset_reader import DatasetReader
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/dataset_readers/__init__.py", line 10, in <module>
from allennlp.data.dataset_readers.ccgbank import CcgBankDatasetReader
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/dataset_readers/ccgbank.py", line 9, in <module>
from allennlp.data.dataset_readers.dataset_reader import DatasetReader
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/dataset_readers/dataset_reader.py", line 8, in <module>
from allennlp.data.instance import Instance
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/instance.py", line 3, in <module>
from allennlp.data.fields.field import DataArray, Field
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/fields/__init__.py", line 10, in <module>
from allennlp.data.fields.knowledge_graph_field import KnowledgeGraphField
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/fields/knowledge_graph_field.py", line 14, in <module>
from allennlp.data.token_indexers.token_indexer import TokenIndexer, TokenType
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/token_indexers/__init__.py", line 5, in <module>
from allennlp.data.token_indexers.dep_label_indexer import DepLabelIndexer
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/token_indexers/dep_label_indexer.py", line 8, in <module>
from allennlp.data.tokenizers.token import Token
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/tokenizers/__init__.py", line 7, in <module>
from allennlp.data.tokenizers.word_tokenizer import WordTokenizer
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/tokenizers/word_tokenizer.py", line 9, in <module>
from allennlp.data.tokenizers.word_stemmer import WordStemmer, PassThroughWordStemmer
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/allennlp/data/tokenizers/word_stemmer.py", line 1, in <module>
from nltk.stem import PorterStemmer as NltkPorterStemmer
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/__init__.py", line 146, in <module>
from nltk.chunk import *
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/chunk/__init__.py", line 155, in <module>
from nltk.chunk.api import ChunkParserI
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/chunk/api.py", line 13, in <module>
from nltk.chunk.util import ChunkScore
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/chunk/util.py", line 12, in <module>
from nltk.tag.mapping import map_tag
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/tag/__init__.py", line 70, in <module>
from nltk.tag.sequential import
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/tag/sequential.py", line 26, in <module>
from nltk.classify import NaiveBayesClassifier
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/classify/__init__.py", line 97, in <module>
from nltk.classify.scikitlearn import SklearnClassifier
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/nltk/classify/scikitlearn.py", line 38, in <module>
from sklearn.feature_extraction import DictVectorizer
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/__init__.py", line 64, in <module>
from .base import clone
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/base.py", line 13, in <module>
from .utils.fixes import signature
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/utils/__init__.py", line 13, in <module>
from .validation import (as_float_array,
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/utils/validation.py", line 27, in <module>
from ..utils._joblib import Memory
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/utils/_joblib.py", line 18, in <module>
from ..externals.joblib import __all__ # noqa
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/externals/joblib/__init__.py", line 119, in <module>
from .parallel import Parallel
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/externals/joblib/parallel.py", line 32, in <module>
from .externals.cloudpickle import dumps, loads
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/externals/joblib/externals/cloudpickle/__init__.py", line 3, in <module>
from .cloudpickle import *
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/externals/joblib/externals/cloudpickle/cloudpickle.py", line 151, in <module>
_cell_set_template_code = _make_cell_set_template_code()
File "/home/omarq/gector/gec_venv/lib/python3.8/site-packages/sklearn/externals/joblib/externals/cloudpickle/cloudpickle.py", line 132, in _make_cell_set_template_code
return types.CodeType(
TypeError: an integer is required (got type bytes)
This looks similar to #132
Yes. I look up at that error, it asks to upgrade scikit-learn- when I do, allennlp imports stop working. Are you planning to try out python3.8 and resolve any dependency issues in the future?
Unfortunately, we're not
Worth asking! Thank you very much for the amazing tool. It works flawlessly on 3.7.
Thanks. Happy to hear that :)