本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
导入 A SageMaker I 模型
您可以选择将 SageMaker 人工智能托管的模型导入 Amazon Fraud Detector。与模型类似,可以 SageMaker 将 AI 模型添加到探测器中,并使用 GetEventPrediction
API 生成欺诈预测。作为GetEventPrediction
请求的一部分,Amazon Fraud Detector 将调用您的 SageMaker 人工智能终端节点并将结果传递给您的规则。
您可以将 Amazon Fraud Detector 配置为使用作为GetEventPrediction
请求一部分发送的事件变量。如果您选择使用事件变量,则必须提供输入模板。Amazon Fraud Detector 将使用此模板将您的事件变量转换为调用 SageMaker AI 终端节点所需的输入有效负载。或者,您可以将 SageMaker AI 模型配置为使用作为请求一部分发送的 ByteBuffer。GetEventPrediction
Amazon Fraud Detector 支持导入使用 JSON 或 CSV 输入格式以及 JSON 或 CSV 输出格式 SageMaker 的人工智能算法。支持的 SageMaker AI 算法示例包括 XGBoost Linear Learner 和 Random Cut Forest。
使用导入 SageMaker AI 模型 适用于 Python (Boto3) 的 AWS SDK
要导入 A SageMaker I 模型,请使用 PutExternalModel
API。以下示例假设 SageMaker AI 终端节点sagemaker-transaction-model
已部署,处于InService
状态并使用 XGBoost 算法。
输入配置指定将使用事件变量来构造模型输入(设置useEventVariables
为TRUE
)。如果 XGBoost 需要 CSV 输入,则输入格式为 TEXT_CSV。 csvInputTemplate 指定如何根据作为GetEventPrediction
请求的一部分发送的变量构建 CSV 输入。此示例假设您已经创建了变量order_amt
prev_amt
、hist_amt
和payment_type
。
输出配置指定 SageMaker 人工智能模型的响应格式,并将相应的 CSV 索引映射到 Amazon Fraud Detector 变量sagemaker_output_score
。配置完成后,即可在规则中使用输出变量。
注意
SageMaker AI 模型的输出必须映射到带有源的变量EXTERNAL_MODEL_SCORE
。您无法使用变量在控制台中创建这些变量。改为在配置模型导入时必须创建它们。
import boto3 fraudDetector = boto3.client('frauddetector') fraudDetector.put_external_model ( modelSource = 'SAGEMAKER', modelEndpoint = 'sagemaker-transaction-model', invokeModelEndpointRoleArn = 'your_SagemakerExecutionRole_arn', inputConfiguration = { 'useEventVariables' : True, 'eventTypeName' : 'sample_transaction', 'format' : 'TEXT_CSV', 'csvInputTemplate' : '{{order_amt}}, {{prev_amt}}, {{hist_amt}}, {{payment_type}}' }, outputConfiguration = { 'format' : 'TEXT_CSV', 'csvIndexToVariableMap' : { '0' : 'sagemaker_output_score' } }, modelEndpointStatus = 'ASSOCIATED' )