【问题标题】:AWS API Gateway returns TARGET_MODEL_HEADER_MISSING even though target model passed in headerAWS API Gateway 返回 TARGET_MODEL_HEADER_MISSING,即使目标模型在标头中传递
【发布时间】:2021-10-04 00:14:09
【问题描述】:

我为 Sagemaker MultiDataModel 部署了一个端点。我可以使用 boto3 从本地计算机成功调用它。 我已经为此 Sagemaker MultiDataModel 设置了一个 API 网关,我正在尝试使用 https 请求从模型中检索预测。但我不断收到 TARGET_MODEL_HEADER_MISSING 错误。

我的 https 请求如下所示:

import requests
headers = {'X-Amzn-SageMaker-Target-Model':'/jobtitles-exact'}
response = requests.request("POST"
, "https://XXXXXXXXXX.execute-api.eu-north-1.amazonaws.com/v1/predicted-job-titles"
, headers = headers
, data = data
)

根据documentationsource code 似乎我正确地为标题提供了目标模型。但显然情况并非如此。

我应该如何在标头中为目标模型提供 https-request?

【问题讨论】:

    标签: amazon-web-services amazon-sagemaker api-gateway


    【解决方案1】:

    我找到了解决方案。除非明确告知,否则 API Gateway 不会将标头传递给 SageMaker。 传递标题:

    1. 打开 API 的“方法执行”
    2. 转到“方法请求”
    3. 在“HTTP 请求标头”下,您应该添加要添加的标头的名称,例如像这样:

    1. 返回“方法执行”
    2. 转到“集成请求”
    3. 在 HTTP“标头”下添加要映射的标头和映射,例如: 瞧,标题被传递了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-10-19
      • 2021-05-18
      • 2020-01-22
      • 2021-11-11
      • 1970-01-01
      • 1970-01-01
      • 2019-08-12
      • 2017-09-07
      相关资源
      最近更新 更多