Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
aws-lambda-sagemakerendpoint
Toutes les classes sont en cours de développement actif et sujettes à des modifications ou à des suppressions non rétrocompatibles dans toute version future. Ceux-ci ne sont pas assujettis à laGestion de versions sémantiques
Remarque: Pour garantir une bonne fonctionnalité, les packages AWS Solutions Builts et AWS CDK de votre projet doivent être la même version.
| Langage | Package |
|---|---|
|
aws_solutions_constructs.aws_lambda_sagemakerendpoint
|
|
@aws-solutions-constructs/aws-lambda-sagemakerendpoint
|
|
software.amazon.awsconstructs.services.lambdasagemakerendpoint
|
Overview
Cette solution AWS Construct implémente une fonction AWS Lambda connectée à un point de terminaison Amazon Sagemaker.
Voici une définition de modèle déployable minimale dans TypeScript :
import { Duration } from '@aws-cdk/core'; import * as lambda from '@aws-cdk/aws-lambda'; import { LambdaToSagemakerEndpoint, LambdaToSagemakerEndpointProps, } from '@aws-solutions-constructs/aws-lambda-sagemakerendpoint'; const constructProps: LambdaToSagemakerEndpointProps = { modelProps: { primaryContainer: { image: '{{AccountId}}.dkr.ecr.{{region}}.amazonaws.com/linear-learner:latest', modelDataUrl: 's3://{{bucket-name}}/{{prefix}}/model.tar.gz', }, }, lambdaFunctionProps: { runtime: lambda.Runtime.PYTHON_3_8, // This assumes a handler function in lib/lambda/index.py code: lambda.Code.fromAsset(`${__dirname}/lambda`), handler: 'index.handler', timeout: Duration.minutes(5), memorySize: 128, }, }; new LambdaToSagemakerEndpoint(this, 'LambdaToSagemakerEndpointPattern', constructProps);
Initializer
new LambdaToSagemakerEndpoint(scope: Construct, id: string, props: LambdaToSagemakerEndpointProps);
Paramètres
-
scope
Construct -
id
string
Modèle de construction
| Nom | Type | Description |
|---|---|---|
| L'existence de Glambdaobj ? |
lambda.Function
|
Instance existante de l'objet Lambda Function, fournissant à la fois ceci etlambdaFunctionPropsprovoquera une erreur. |
| LambdaFunctionProps ? |
lambda.FunctionProps
|
Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la fonction Lambda. |
| ExistantSageMakerendPointTobj ? |
sagemaker.CfnEndpoint
|
Un enpoint Sagemaker existant en option à utiliser. Fournir à la fois ceci etendpointPropsprovoquera une erreur. |
| ModelProps ? |
sagemaker.CfnModelProps | any
|
Propriétés fournies par l'utilisateur pour remplacer les propriétés par défaut du modèle Sagemaker. Au moinsmodelProps.primaryContainerdoit être fourni pour créer un modèle. Par défaut, le modèle créera un rôle avec les autorisations minimales requises, mais le client peut fournir un rôle personnalisé avec des fonctionnalités supplémentaires en utilisantmodelProps.executionRoleArn. |
| EndPointConfigProps ? |
sagemaker.CfnEndpointConfigProps
|
Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut de la configuration Sagemaker Endpoint. |
| EndPointProps ? |
sagemaker.CfnEndpointProps
|
Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du point de terminaison Sagemaker. |
| VPC existant ? |
ec2.IVpc
|
Un VPC existant optionnel dans lequel cette construction doit être déployée. Lorsqu'ils sont déployés dans un VPC, la fonction Lambda et Sagemaker Endpoint utilisent les ENI du VPC pour accéder aux ressources réseau. Un point de terminaison d'interface sera créé dans le VPC pour Amazon Sagemaker Runtime et Amazon S3 VPC Endpoint. Si un VPC existant est fourni, ledeployVpcne peut pas êtretrue. |
| VPCProps ? |
ec2.VpcProps
|
Propriétés facultatives fournies par l'utilisateur pour remplacer les propriétés par défaut du nouveau VPC.enableDnsHostnames,enableDnsSupport,natGatewaysandsubnetConfigurationsont définis par la construction, donc toutes les valeurs pour ces propriétés fournies ici seront remplacées. SideployVpcn'est pastrue, cette propriété sera ignorée. |
| Déploiement de VPC ? |
boolean
|
Que ce soit pour créer un nouveau VPC basé survpcPropsdans lequel déployer ce modèle. Paramètre surtruedéploiera le VPC minimal et le plus privé pour exécuter le modèle :
true, puisexistingVpcne peut pas être spécifié. La valeur par défaut est false. |
| SageMakerEnvironmentVariableName ? |
string
|
Nom facultatif de la variable d'environnement de point de terminaison SageMaker définie pour la fonction Lambda. |
Propriétés de modèle
| Nom | Type | Description |
|---|---|---|
| LambdaUNction |
lambda.Function
|
Renvoie une instance de la fonction Lambda créée par le modèle. |
| SageMakerEndPoint |
sagemaker.CfnEndpoint
|
Renvoie une instance du point de terminaison Sagemaker créé par le modèle. |
| SageMakerEndPointConfig ? |
sagemaker.CfnEndpointConfig
|
Renvoie une instance de SageMaker EndpointConfig créée par le modèle, siexistingSagemakerEndpointObjn'est pas fourni. |
| SageMakerModel ? |
sagemaker.CfnModel
|
Renvoie une instance du modèle Sagemaker créé par le modèle, siexistingSagemakerEndpointObjn'est pas fourni. |
| VPC ? |
ec2.IVpc
|
Renvoie une instance du VPC créée par le modèle, sideployVpcesttrue, ou siexistingVpcest fourni. |
Paramètres par défaut
L'implémentation prête à l'emploi de ce modèle sans remplacement définira les valeurs par défaut suivantes :
Fonction AWS Lambda
-
Configurez le rôle IAM d'accès limité pour la fonction Lambda.
-
Activez la réutilisation des connexions avec la fonction Keep-Alive pour NodeJS Lambda.
-
Autorisez la fonction à appeler le point de terminaison Sagemaker pour les inférences.
-
Configurez la fonction pour accéder aux ressources du VPC, où le point de terminaison Sagemaker est déployé.
-
Activez le suivi X-Ray
-
Définir les variables d'environnement :
-
SAGEMAKER_ENDPOINT_NAME(default) -
AWS_NODEJS_CONNECTION_REUSE_ENABLED(pour les fonctions Nœud 10.x et supérieures)
-
Amazon SageMaker
-
Configurez des privilèges limités pour créer des ressources Sagemaker.
-
Déployez le modèle Sagemaker, EndPointConfig et le point de terminaison.
-
Configurez le point de terminaison Sagemaker à déployer dans un VPC.
-
Déployez le point de terminaison VPC S3 et l'interface VPC Runtime de Sagemaker.
Architecture
GitHub
| Pour afficher le code de ce modèle, créer/afficher les problèmes et les demandes d'extraction, et plus encore : | |
|---|---|
|
@aws -solutions-construction/aws-lambda-sagemakerendpoint |