模型监控捕获数据 - EndpointOutput 编码为 BASE64。

0

【以下的问题经过翻译处理】 https://docs.aws.amazon.com/sagemaker/latest/dg/model-monitor-data-capture-endpoint.html 我按照文档中提到的步骤进行操作,但似乎无法更改数据捕获文件中EndpointOutput的编码。对于xgboost模型,它是BASE64编码的。我使用的是最新版本1.2.3。

监控调度程序需要EndpointOutput和EndpointInput具有相同的编码格式。我的EndpointInput是CSV格式,但EndpointOutput是BASE64编码,无法更改。

这导致运行分析器时出现问题。在生成基线并捕获数据后,当监控程序运行分析器时,会抛出编码不匹配的错误。为了使其正常运行,EndpointOutput和EndpointInput的编码格式应相同。

我发现无法更改输出的编码。我还尝试使用LightGBM、CatBoost算法,但对于这些EndpointOuput的编码方式是JSON,虽然可读,但仍无法解决问题。

是否有一种方法可以更改数据捕获中的EndpointOutput编码。

1 回答
0

【以下的回答经过翻译处理】 输出编码可以通过使用EndpointConfig.DataCaptureConfig中的CaptureContentTypeHeader进行配置。我认为由于未设置此项,因此使用默认编码,即base64。

请尝试使用以下属性设置:

"CaptureContentTypeHeader": { 
         "CsvContentTypes": [ "text/csv" ]
      }

假设所涉及的模型的content_type/accept为“text_csv”。

profile picture
专家
已回答 1 年前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则