我在 sagemaker 中部署了一个端点,并试图通过我的 python 程序调用它。我用邮递员测试过它,它工作得很好。然后我写了调用代码如下
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.
在使用邮递员时,我已经给出了我的访问密钥和密钥,但我不确定在使用 sagemaker api 时如何传递它。我也无法在文档中找到它。
所以我的问题是,如何使用本地机器上的 sagemaker api 来调用我的端点?