aws-apigateway-sagemakerendpoint - Costrutti delle soluzioni AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

aws-apigateway-sagemakerendpoint

Tutte le classi sono in fase di sviluppo attivo e soggette a modifiche o rimozione non compatibili con le versioni precedenti in qualsiasi versione futura. Questi non sono soggetti allaVersionamento semanticoModello. Ciò significa che, mentre è possibile utilizzarli, potrebbe essere necessario aggiornare il codice sorgente quando si esegue l'aggiornamento a una versione più recente di questo pacchetto.

Nota: Per garantire la corretta funzionalità, i pacchetti AWS Solutions Constructs e i pacchetti AWS CDK nel progetto devono essere della stessa versione.

Linguaggio Pacchetto
Python
aws_solutions_constructs.aws_apigateway_sagemakerendpoint
TypeScript
@aws-solutions-constructs/aws-apigateway-sagemakerendpoint
Java
software.amazon.awsconstructs.services.apigatewaysagemakerendpoint

Overview

Questo Construct di soluzioni AWS implementa un'Amazon API Gateway API connessa a un endpoint Amazon SageMaker.

Ecco una definizione di modello distribuibile minima in TypeScript:

import { ApiGatewayToSageMakerEndpoint, ApiGatewayToSageMakerEndpointProps } from '@aws-solutions-constructs/aws-apigateway-sagemakerendpoint'; // Below is an example VTL (Velocity Template Language) mapping template for mapping the Api GET request to the Sagemaker POST request const requestTemplate = `{ "instances": [ #set( $user_id = $input.params("user_id") ) #set( $items = $input.params("items") ) #foreach( $item in $items.split(",") ) {"in0": [$user_id], "in1": [$item]}#if( $foreach.hasNext ),#end $esc.newline #end ] }`; // Replace 'my-endpoint' with your Sagemaker Inference Endpoint new ApiGatewayToSageMakerEndpoint(this, 'test-apigw-sagemakerendpoint', { endpointName: 'my-endpoint', resourcePath: '{user_id}', requestMappingTemplate: requestTemplate });

Initializer

new ApiGatewayToSageMakerEndpoint(scope: Construct, id: string, props: ApiGatewayToSageMakerEndpointProps);

Parametri

Puntelli di costruzione modelli

Nome Tipo Descrizione
ApiGatewayProps? api.RestApiProps Oggetti di scena facoltativi forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per l'API REST del gateway API.
ApiGatewayExecutionRole? iam.Role Ruolo IAM utilizzato da API Gateway per richiamare l'endpoint SageMaker. Se non viene specificato, viene creato un ruolo predefinito con accesso aendpointName: .
EndpointName string Nome dell'endpoint di inferenza SageMaker distribuito.
ResourceName? string Nome risorsa facoltativo in cui sarà disponibile il metodo GET.
resourcePath string Percorso della risorsa per il metodo GET. La variabile definita qui può essere referenziata inrequestMappingTemplate: .
RequestMappingTemplate string Modello di mapping per convertire le richieste GET ricevute nell'API REST in richieste POST previste dall'endpoint SageMaker.
ResponseMappingTemplate? string Modello di mapping facoltativo per convertire le risposte ricevute dall'endpoint SageMaker.
LogGroupProps? logs.LogGroupProps Elementi di scena opzionali forniti dall'utente per sovrascrivere gli oggetti di scena predefiniti per il gruppo di log CloudWatch Logs.

Proprietà modelli

Nome Tipo Descrizione
ApiGateway api.LambdaRestApi Restituisce un'istanza dell'API REST del gateway API creata dal modello.
ApiGatewayRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern per l'API REST del gateway API.
APigatewayCloudWatchRole iam.Role Restituisce un'istanza del ruolo IAM creato dal pattern che abilita la registrazione degli accessi dall'API REST del gateway API a CloudWatch.
ApiGatewayLogGroup logs.LogGroup Restituisce un'istanza del gruppo di log creato dal modello a cui vengono inviati i log di accesso API REST del API Gateway API.

Uso di API di esempio

Nota: Ogni endpoint SageMaker è univoco e la risposta dell'API dipenderà dal modello distribuito. L'esempio riportato di seguito presuppone che il campione daPost di blog: . Per un riferimento su come sarebbe implementato, fare riferimento ainteg.apigateway-sagemakerendpoint-overwrite.ts: .

Metodo Percorso della richiesta Stringa di query Azione SageMaker Descrizione
GET /321 items=101,131,162 sagemaker:InvokeEndpoint Recupera le previsioni per un utente e gli elementi specifici.

Impostazioni predefinite

L'implementazione predefinita di questo modello senza sostituzioni imposterà i seguenti valori predefiniti:

Amazon API Gateway

  • Distribuzione di un endpoint API ottimizzato per gli edge

  • Abilitazione della registrazione CloudWatch per API Gateway

  • Configurare il ruolo IAM di accesso ai privilegi minimi per il API Gateway

  • Impostare l'AuthorizationType predefinito per tutti i metodi API su IAM

  • Abilita la traccia X-Ray

  • Convalidare i parametri di richiesta prima di passare i dati a SageMaker

Architecture

GitHub

Per visualizzare il codice per questo modello, creare/visualizzare problemi e richieste pull e altro ancora:
@aws -solutions-constructs/aws-apigateway-sagemakerendpoint