我已经在 sagemaker 中部署了一个端点,并试图通过我的 python 程序调用它。我已经使用 postman 对其进行了测试,并且效果很好。然后我写了调用代码如下
import boto3
import pandas as pd
import io
import numpy as np
def np2csv(arr):
csv = io.BytesIO()
np.savetxt(csv, arr, delimiter=',', fmt='%g')
return csv.getvalue().decode().rstrip()
runtime= boto3.client('runtime.sagemaker')
payload = np2csv(test_X)
runtime.invoke_endpoint(
EndpointName='<my-endpoint-name>',
Body=payload,
ContentType='text/csv',
Accept='Accept'
)
现在当我运行它时我得到了一个验证错误
ValidationError: An error occurred (ValidationError) when calling the InvokeEndpoint operation: Endpoint <my-endpoint-name> of account <some-unknown-account-number> not found.
在使用 postman 时,我已经提供了我的访问 key 和 key ,但我不确定在使用 sagemaker api 时如何传递它。我也无法在文档中找到它。
所以我的问题是,如何从我的本地机器使用 sagemaker api 来调用我的端点?
最佳答案
我也遇到了这个问题,原来是我的region
不对。
愚蠢但值得一试!
关于python - 使用 sagemaker api 调用端点时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48438202/