SageMaker生命周期配置报错:找不到conda环境python3求解决方案
解决方案
修正后的生命周期脚本
#!/bin/bash set -e NOTEBOOK_FILE="/home/ec2-user/SageMaker/untitled.ipynb" # 加载conda环境配置,确保conda命令可用 source /home/ec2-user/anaconda3/etc/profile.d/conda.sh # 激活SageMaker默认的Python3 conda环境 conda activate conda_python3 # 后台执行Notebook文件,设置超时时间为600秒 nohup jupyter nbconvert --to notebook --ExecutePreprocessor.timeout=600 --ExecutePreprocessor.kernel_name=conda_python3 --execute "$NOTEBOOK_FILE" &
错误原因及修正说明
- 环境名称错误:Amazon SageMaker Notebook实例默认的Python3 conda环境名称是
conda_python3,而非原脚本中的python3,这是触发"Could not find conda environment: python3"错误的直接原因。 - conda激活方式适配:生命周期脚本的执行环境默认未加载conda配置,需要先通过
source /home/ec2-user/anaconda3/etc/profile.d/conda.sh初始化conda环境,才能正常使用conda activate命令。原脚本使用的source activate是旧版conda激活语法,在SageMaker环境中兼容性较差。
额外注意事项
- 确认
untitled.ipynb文件确实存在于/home/ec2-user/SageMaker/目录下,否则会触发文件找不到的错误。 - 若使用自定义conda环境,可在Notebook实例中执行
conda env list命令查看准确环境名称,替换脚本中的conda_python3即可。
内容的提问来源于stack exchange,提问作者Ahmed Sk
相关产品推荐
相关产品推荐

