Amazon Sagemaker:编写您自己的推理

Amazon Sagemaker: write your own inference

我正在评估在 Sagemaker 中编写您自己的 Estimator 需要什么。我按照这个例子 here 解释得很好,也很简单。

我的问题是关于 here. I see an example in which we can feed the invocations endpoint CSV 的推断。如果我只想 post 一个字符串甚至单个参数怎么办?最好的做法是什么?我看到有这样的条件:

if flask.request.content_type == "text/csv":

我们应该添加更多类似的东西来支持不同的格式,还是应该创建一个新的端点?

您需要添加对更多内容类型的支持。

既然您想传递字符串或参数,我建议您添加对“application/json”MIME 媒体类型的支持(What is the correct JSON content type?)。然后您的用户将使用 Json 调用 API,您可以从后端解析和提取参数。

例如,如果您有两个参数 agegender 要传递给您的模型。您可以将它们放在以下 Json 数据结构中:

{
 "age": ...,
 "gender": ...
}

然后添加对加载Json和后台提取参数的支持如下:

if flask.request.content_type == "application/json":
    data = flask.request.data.decode("utf-8")
    data = json.loads(data)
    parameter1 = data['age']
    parameter2 = data['gender']
    ...