如何修复 aws 区域错误“ValueError:必须使用 SageMaker 支持的区域设置本地 AWS 配置”
Posted
技术标签:
【中文标题】如何修复 aws 区域错误“ValueError:必须使用 SageMaker 支持的区域设置本地 AWS 配置”【英文标题】:How to fix aws region error "ValueError: Must setup local AWS configuration with a region supported by SageMaker" 【发布时间】:2019-04-26 14:24:20 【问题描述】:我第一次在笔记本电脑上运行 sagemaker。当我尝试启动会话时出现此错误 ValueError:必须使用 SageMaker 支持的区域设置本地 AWS 配置
本地配置设置为 Sagemaker 支持的 eu-west-1。
我将区域更改为 us-west-2 并返回,但没有任何变化。当然,每次更改后我都会重新启动笔记本内核以防万一。
import boto3
import re
import os
import numpy as np
import pandas as pd
import sagemaker as sage
boto_session = boto3.Session(profile_name="bennu")
session = sage.Session(boto_session=boto_session) #this is where the error appears
我希望会议开始并进入下一步。完整的笔记本在这里https://github.com/PacktPublishing/Hands-On-Machine-Learning-Using-Amazon-SageMaker-v-/blob/master/section_1/train_and_deploy_your_first_model_on_sagemaker.ipynb
【问题讨论】:
从笔记本电脑运行 SageMaker 是什么意思?您是在运行应在 SageMaker 上启动训练作业的笔记本,还是在 SageMaker 笔记本实例上运行? 感谢您使用 Amazon SageMaker!您是从本地笔记本电脑还是从 SageMaker 笔记本实例中运行上述代码? 【参考方案1】:您需要按照 AWS 文档的要求在配置文件中设置区域。您可以在这里找到位置:
~/.aws/config on Linux, macOS, or Unix
C:\Users\USERNAME\.aws\config on Windows
此文件应包含以下格式的行:
[default]
region = your_aws_region
例如,在我的情况下,它需要是region = ap-southeast-2
【讨论】:
为什么它下面使用boto3客户端,而boto3可以使用环境变量AWS_DEFAULT_REGION
?我有同样的问题,环境变量设置正确【参考方案2】:
在我的情况下,我通过这样做创建 sagemaker 会话来解决它:
import boto3
import sagemaker
sagemaker.Session(boto3.session.Session())
并将AWS_DEFAULT_REGION
环境变量设置为us-east-1
。
【讨论】:
【参考方案3】:继续@Avi 的回答。
在 MacOS 中。
应该在~/.aws/credentials
中修改
与
[default]
region = <your_aws_region>
【讨论】:
以上是关于如何修复 aws 区域错误“ValueError:必须使用 SageMaker 支持的区域设置本地 AWS 配置”的主要内容,如果未能解决你的问题,请参考以下文章
如何修复 tensorflow 中的“ValueError:空训练数据”错误
如何修复:ValueError:long() 以 10 为底的无效文字
如何修复'ValueError:shapes(1,3)和(1,1)未对齐:3(dim 1)!= 1(dim 0)'numpy中的错误
如何在迭代 pandas 分组 df 时修复 ValueError?