将 datacapture 编码数据更改为 csv
Change datacapture encoding data to csv
我正在使用 sagemaker 模型监视器。
捕获数据时,输出如下json文件。
{"captureData":{"endpointInput":{"observedContentType":"text/csv","mode":"INPUT","data":"MSwwLjUzLDAuNDIsMC4xMzUsMC42NzcsMC4yNTY1LDAuMTQxNSwwLjIx","encoding":"BASE64"},"endpointOutput":{"observedContentType":"text/csv; charset=utf-8","mode":"OUTPUT","data":"MTEuNjQzNDU1NTA1MzcxMDk0","encoding":"BASE64"}},"eventMetadata":{"eventId":"33404924-c0d4-4044-9dc2-1e1f5575cb0a","inferenceTime":"2020-06-04T05:45:45Z"},"eventVersion":"0"}
我希望编码为 csv,但它以某种方式输出 base64。
我们何时何地更改编码设置?
是在调用端点期间吗?或在进行端点配置时设置。
我找了一些文件,但没找到。
我刚遇到同样的问题!似乎您需要指定 CaptureContentTypeHeader
参数来告诉 SageMaker 将哪种内容类型 headers 视为 CSV(或 JSON),而不是默认的 base64 编码负载!
例如将以下内容添加到您的 CreateEndpointConfig 调用或 boto3/sagemaker SDK 等效项中应该可以修复它:
{
"DataCaptureConfig": {
"CaptureContentTypeHeader": {
"CsvContentTypes": [ "text/csv" ]
},
}
}
我猜这是为了 non-standard Content-Type headers?提供一层配置来解析例如:
application/x-mycoolmodel
-> JSON
,对比
application/x-secretsauce
-> BASE64
我正在使用 sagemaker 模型监视器。
捕获数据时,输出如下json文件。
{"captureData":{"endpointInput":{"observedContentType":"text/csv","mode":"INPUT","data":"MSwwLjUzLDAuNDIsMC4xMzUsMC42NzcsMC4yNTY1LDAuMTQxNSwwLjIx","encoding":"BASE64"},"endpointOutput":{"observedContentType":"text/csv; charset=utf-8","mode":"OUTPUT","data":"MTEuNjQzNDU1NTA1MzcxMDk0","encoding":"BASE64"}},"eventMetadata":{"eventId":"33404924-c0d4-4044-9dc2-1e1f5575cb0a","inferenceTime":"2020-06-04T05:45:45Z"},"eventVersion":"0"}
我希望编码为 csv,但它以某种方式输出 base64。
我们何时何地更改编码设置?
是在调用端点期间吗?或在进行端点配置时设置。
我找了一些文件,但没找到。
我刚遇到同样的问题!似乎您需要指定 CaptureContentTypeHeader
参数来告诉 SageMaker 将哪种内容类型 headers 视为 CSV(或 JSON),而不是默认的 base64 编码负载!
例如将以下内容添加到您的 CreateEndpointConfig 调用或 boto3/sagemaker SDK 等效项中应该可以修复它:
{
"DataCaptureConfig": {
"CaptureContentTypeHeader": {
"CsvContentTypes": [ "text/csv" ]
},
}
}
我猜这是为了 non-standard Content-Type headers?提供一层配置来解析例如:
application/x-mycoolmodel
->JSON
,对比application/x-secretsauce
->BASE64