模型监控捕获数据 - 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 Antwort
0

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

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

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

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

profile picture
EXPERTE
beantwortet vor 8 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen