В настоящее время у меня есть AWS EMR со связанным ноутбуком с тем же кластером.
Я хотел бы загрузить просторную модель (en_core_web_sm
), но сначала мне нужно загрузить модель, которая обычно сделано с использованием python -m spacy download en_core_web_sm
, но я действительно не могу найти, как это сделать в сеансе PySpark.
Вот моя конфигурация:
%%configure -f
{
"name":"conf0",
"kind": "pyspark",
"conf":{
"spark.pyspark.python": "python",
"spark.pyspark.virtualenv.enabled": "true",
"spark.pyspark.virtualenv.type":"native",
"spark.pyspark.virtualenv.bin.path":"/usr/bin/virtualenv"
},
"files":["s3://my-s3/code/utils/NLPtools.py",
"s3://my-s3/code/utils/Parse_wikidump.py",
"s3://my-s3/code/utils/S3_access.py",
"s3://my-s3/code/utils/myeval.py",
"s3://my-s3/code/utils/rank_metrics.py",
"s3://my-s3/code/utils/removeoutput.py",
"s3://my-s3/code/utils/secret_manager.py",
"s3://my-s3/code/utils/word2vec.py"]
}
Я могу запустить такую команду, что вроде нормально:
sc.install_pypi_package("boto3")
sc.install_pypi_package("pandas")
sc.install_pypi_package("hdfs")
sc.install_pypi_package("NLPtools")
sc.install_pypi_package("numpy")
sc.install_pypi_package("tqdm")
sc.install_pypi_package("wikipedia")
sc.install_pypi_package("filechunkio")
sc.install_pypi_package("thinc")
sc.install_pypi_package("gensim")
sc.install_pypi_package("termcolor")
sc.install_pypi_package("boto")
sc.install_pypi_package("spacy")
sc.install_pypi_package("langdetect")
sc.install_pypi_package("pathos")
Но, конечно, как будто мне не удается загрузить модель, при попытке загрузить я получил следующую ошибку:
An error was encountered:
[E050] Can't find model 'en_core_web_sm'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.
Traceback (most recent call last):
File "/mnt/tmp/spark-eef27750-07a4-4a8a-82dc-b006827e7f1f/userFiles-ec6ecbe3-558b-42df-bd38-cd33b2340ae0/NLPtools.py", line 13, in <module>
nlp = spacy.load('en_core_web_sm', disable=['parser', 'textcat'])
File "/tmp/1596550154785-0/lib/python2.7/site-packages/spacy/__init__.py", line 30, in load
return util.load_model(name, **overrides)
File "/tmp/1596550154785-0/lib/python2.7/site-packages/spacy/util.py", line 175, in load_model
raise IOError(Errors.E050.format(name=name))
IOError: [E050] Can't find model 'en_core_web_sm'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.
I Я пытался установить его непосредственно в кластере (главный / рабочий), но он находится «вне» сеанса PySpark, поэтому не будет встроен. И такие команды, как !python -m spacy download en_core_web_sm
, не работают в записной книжке PySpark ...
Заранее спасибо!