AWS Sagemaker Studio JupyterLab Space:Glue Pyspark 和 Ray Kernel Python 和 pip 版本不匹配

问题描述 投票:0回答:1

我的 AWS Sagemaker Studio JupyterLab Space 中的 Glue Pyspark 和 Ray 内核中的 Python 版本与 pip 安装的软件包之间似乎存在差异。我第一次注意到这个问题是在我尝试导入 IPython 时,我收到了一个

ModuleNotFound
错误,但如果我这样做了
!pip list | grep ipython
,我会得到 ipython 8.20.0。我也做了
!ipython --version
给出了 8.20.0.

经过进一步调查,我做了以下事情。

1.使用 Glue Pyspark 和 Ray 内核

import sys
print(sys.path)

这给出了

['/tmp', '/tmp/spark-7a070785-711d-4791-9ed3-631d12bc29a0/userFiles-298f6845-dc16-4a6c-95e2-0245bbc35529', '/opt/amazon/spark/python/lib/pyspark.zip', '/opt/amazon/spark/python/lib/py4j-0.10.9-src.zip', '/opt/amazon/lib/python3.6/site-packages', '/usr/lib64/python37.zip', '/usr/lib64/python3.7', '/usr/lib64/python3.7/lib-dynload', '/home/spark/.local/lib/python3.7/site-packages', '/usr/lib64/python3.7/site-packages', '/usr/lib/python3.7/site-packages']

!python --version
但是给出 3.10.13

我也做了

pandas.__version__
,给出了1.3.2,但是
!pip list | grep pandas
给出了

熊猫2.1.4 熊猫存根 2.1.4.231227

2.使用标准 Python 3 (ipykernel)

import sys
print(sys.path)

这给出了

['/home/sagemaker-user', '/opt/conda/lib/python310.zip', '/opt/conda/lib/python3.10', '/opt/conda/lib/python3.10/lib-dynload', '', '/opt/conda/lib/python3.10/site-packages']

!python --version
现在给出 3.10.13,这与
sys.path

一致

我重新编写了

pandas.__version__
,现在给出了2.1.4,而
!pip list | grep pandas
给出了

熊猫2.1.4 熊猫存根 2.1.4.231227

这是一致的。

3.结论

因此,我似乎对 Glue Pyspark 和 Ray 内核有一个问题,其中内核中的 Python 版本指向 pip 识别的其他安装,因此找不到许多 pip 安装的软件包。

我确实在这里发现了类似的问题Conflicting Python versions in SageMaker Studio Notebook with Python 3.8 kernel但接受的答案并没有真正帮助我。

非常感谢任何帮助。我是否在这里遗漏了一些简单的东西,或者其他人是否遇到过 Glue Pyspark 和 Ray 内核的此类问题?

python-3.x amazon-sagemaker jupyter-lab amazon-sagemaker-studio
1个回答
0
投票

我能够重现同样的问题。我无法通过正常方法将其他软件包安装到“Glue PySpark and Ray”环境。

作为一种解决方法,我发现仍然可以通过执行如下 Python 代码来安装其他包:

import pip
pip.main(['install', "ipython"])

我想向团队报告此问题。

© www.soinside.com 2019 - 2024. All rights reserved.