aws-apigateway-sagemakerendpunkt - Konstrukte für AWS S-Lösungen

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

aws-apigateway-sagemakerendpunkt

Alle Klassen befinden sich in aktiver Entwicklung und unterliegen nicht abwärtskompatiblen Änderungen oder Entfernen in jeder zukünftigen Version. Diese unterliegen nicht derSemantic VersioningModell. Dies bedeutet, dass Sie möglicherweise Ihren Quellcode aktualisieren müssen, wenn Sie ein Upgrade auf eine neuere Version dieses Pakets durchführen.

Hinweis: Um eine ordnungsgemäße Funktionalität sicherzustellen, müssen die AWS Solutions Constructs Pakete und AWS CDK-Pakete in Ihrem Projekt dieselbe Version aufweisen.

Sprache Paket
Python
aws_solutions_constructs.aws_apigateway_sagemakerendpoint
Typoskript
@aws-solutions-constructs/aws-apigateway-sagemakerendpoint
Java
software.amazon.awsconstructs.services.apigatewaysagemakerendpoint

Overview

Dieses AWS Solutions Construct implementiert eine Amazon API Gateway REST-API, die mit einem Amazon SageMaker Endpunkt verbunden ist.

Hier ist eine minimale bereitstellbare Musterdefinition 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);

Parameter

Muster-Konstrukt Requisiten

Name Typ Beschreibung
ApigatewayProps? api.RestApiProps Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standard-Requisiten für die API Gateway REST-API
ApigatewayExecutionRole? iam.Role IAM-Rolle, die vom API Gateway zum Aufrufen des SageMaker Endpoints verwendet wird. Wenn nicht angegeben, wird eine Standardrolle mit Zugriff aufendpointName.
EndpointName string Name des bereitgestellten SageMaker Inferenz-Endpunkts.
ResourceName? string Optionaler Ressourcenname, bei dem die GET-Methode verfügbar ist.
resourcePath string Ressourcenpfad für die GET-Methode. Die hier definierte Variable kann inrequestMappingTemplate.
RequestMappingTemplate string Mapping-Vorlage zum Konvertieren von GET-Anforderungen, die über die REST-API empfangen wurden, in POST-Anfragen, die vom SageMaker End
ResponseMappingTemplate? string Optionale Mapping-Vorlage zum Konvertieren von Antworten, die vom SageMaker Endpunkt empfangen wurden.
LogGroupProps? logs.LogGroupProps Optionale, vom Benutzer bereitgestellte Requisiten zum Überschreiben der Standardprops für die CloudWatch Logs s-Protokollgruppe.

Muster-Eigenschaften

Name Typ Beschreibung
ApiGateway api.LambdaRestApi Gibt eine Instanz der API Gateway REST-API zurück, die durch das Muster erstellt wurde.
ApigatewayRole iam.Role Gibt eine Instanz der IAM-Rolle zurück, die durch das Muster für die API Gateway REST-API erstellt wurde.
ApigatewayCloudWatchRole iam.Role Gibt eine Instanz der IAM-Rolle zurück, die durch das Muster erstellt wurde, das die Zugriffsprotokollierung von der API Gateway REST-API zu CloudWatch ermöglicht.
ApigatewayLogGroup logs.LogGroup Gibt eine Instanz der Protokollgruppe zurück, die durch das Muster erstellt wurde, an das API Gateway REST-API-Zugriffsprotokolle gesendet werden.

Beispiele zu -API-Verwendung

Hinweis: Jeder SageMaker Endpunkt ist eindeutig, und die Antwort der API hängt vom bereitgestellten Modell ab. Das folgende Beispiel geht davon aus, dass die Probe vonBlogbeitrag. Eine Referenz dazu, wie das implementiert wird, finden Sie unterinteg.apigateway-sagemakerendpoint-overwrite.ts.

Art Anfrage-Pfad Abfragezeichenfolge SageMaker Aktion Beschreibung
GET /321 items=101,131,162 sagemaker:InvokeEndpoint Ruft die Vorhersagen für einen bestimmten Benutzer und Elemente ab.

Standardeinstellungen

Die vorgefertigte Implementierung dieses Musters ohne Überschreibungen setzt die folgenden Standardwerte:

Amazon API Gateway

  • Bereitstellen eines Edge-optimierten API-Endpunkts

  • Aktivieren der CloudWatch Protokollierung für API Gateway

  • Konfigurieren der IAM-Rolle für den Zugriff auf die geringste Berechtigung für API Gateway

  • Legen Sie den standardmäßigen AuthorizationType für alle API-Methoden auf IAM fest

  • X-Ray blaufverfolgung

  • Überprüfen Sie Anforderungsparameter, bevor Sie Daten an SageMaker

Architecture

GitHub

Um den Code für dieses Muster anzuzeigen, erstellen/anzeigen Probleme und Pull-Anforderungen usw.:
@aws -solutions-konstrukte/aws-apigateway-sagemakerendpoint