람다-세이지메이크렌드포인트 - AWS 솔루션 구성체

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

람다-세이지메이크렌드포인트

모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다의미 체계 버전모델을 선택합니다. 즉, 이 패키지를 사용할 수도 있지만 이 패키지의 최신 버전으로 업그레이드할 때 소스 코드를 업데이트해야 할 수도 있습니다.

참고: 적절한 기능을 보장하려면 프로젝트의 AWS 솔루션 구성 패키지와 AWS CDK 패키지가 동일한 버전이어야 합니다.

언어 패키지
Python
aws_solutions_constructs.aws_lambda_sagemakerendpoint
타이프 스크립트
@aws-solutions-constructs/aws-lambda-sagemakerendpoint
Java
software.amazon.awsconstructs.services.lambdasagemakerendpoint

Overview

이 AWS 솔루션 구성은 Amazon 세이지메이커 엔드포인트에 연결된 AWS Lambda 함수를 구현합니다.

다음은 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);

파라미터

패턴 구성

이름 유형 설명
람다오브즈 기존인가요? lambda.Function Lambda 함수 객체의 기존 인스턴스, 이 및lambdaFunctionProps오류가 발생합니다.
람다기능소품? lambda.FunctionProps Lambda 함수의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다.
기존메이크렌드포인트저장되시겠습니까? sagemaker.CfnEndpoint 사용할 기존 세이지메이커 엔포인트 (선택 사항) 입니다. 이 두 가지를 모두 제공endpointProps오류가 발생합니다.
모델소품? sagemaker.CfnModelProps | any Sagemaker 모델의 기본 속성을 재정의하는 사용자 제공 속성입니다. 최소modelProps.primaryContainer를 제공해야만 모델을 만들 수 있습니다. 기본적으로 패턴은 최소 필수 권한을 가진 역할을 만들지만 클라이언트는modelProps.executionRoleArn.
끝점구성 소품? sagemaker.CfnEndpointConfigProps Sagemaker 끝점 구성의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다.
엔드포인트 Props? sagemaker.CfnEndpointProps Sagemaker 끝점의 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다.
기존VPC? ec2.IVpc 이 구문을 배포해야 하는 선택 사항인 기존 VPC 입니다. VPC 배포되면 Lambda 함수와 Sagemaker 엔드포인트는 VPC의 ENI를 사용하여 네트워크 리소스에 액세스합니다. 인터페이스 엔드포인트는 Amazon 세이지메이커 런타임용 VPC 및 Amazon S3 VPC 엔드포인트에 생성됩니다. 기존 VPC 가 제공되면deployVpc속성은 일 수 없습니다.true.
vPCProps? ec2.VpcProps 새 VPC 기본 속성을 재정의하는 선택적 사용자 제공 속성입니다.enableDnsHostnames,enableDnsSupport,natGatewayssubnetConfiguration는 구조에 의해 설정되므로 여기에 제공된 속성에 대한 모든 값이 overrriden됩니다. 다음의 경우,deployVpc이 (가)true, 다음이 속성은 무시됩니다.
VPC를 배포하시겠습니까? boolean 를 기반으로 새 VPC 생성할지 여부vpcProps이 패턴을 배포 할 수 있습니다. 이 로 설정true는 패턴을 실행하기 위해 최소한의 대부분의 프라이빗 VPC 배포합니다.
  • CDK 프로그램에서 사용하는 각 가용 영역에 하나의 격리된 서브넷입니다.

  • enableDnsHostnamesenableDnsSupport는 둘 다true.

이 속성을 로 설정한 경우true을 선택한 다음existingVpc를 지정할 수 없습니다. 기본값은 false입니다.
이름변경 내용을 저장하시겠습니까? string Lambda 함수에 대한 SageMaker 끝점 환경 변수 세트의 선택적 이름입니다.

패턴 속성

이름 유형 설명
람다함수 lambda.Function 패턴에 의해 생성 된 Lambda 함수의 인스턴스를 돌려줍니다.
세이지메이크렌드포인트 sagemaker.CfnEndpoint 패턴에 의해 생성 된 세이지메이커 끝점의 인스턴스를 돌려줍니다.
저장하시겠습니까? sagemaker.CfnEndpointConfig 패턴에 의해 생성된 SageMaker EndpointConfig 인스턴스를 반환합니다.existingSagemakerEndpointObj는 제공되지 않습니다.
세이지메이커 모델? sagemaker.CfnModel 만약 패턴에 의해 생성 된 세이지메이커 모델의 인스턴스를 돌려줍니다existingSagemakerEndpointObj는 제공되지 않습니다.
VPC? ec2.IVpc 패턴에 의해 생성된 VPC 인스턴스를 반환합니다.deployVpc확장하는 데true, 또는existingVpc가 제공될 예정입니다.

기본 설정

재정의없이이 패턴을 즉시 구현하면 다음과 같은 기본값이 설정됩니다.

AWS Lambda 함수

  • Lambda 함수에 대한 제한된 권한 액세스 IAM 역할을 구성합니다.

  • NodeJS Lambda 함수에 대한 연결 유지와 연결을 재사용 할 수 있습니다.

  • 함수가 추론을 위해 Sagemaker 끝점을 호출하도록 허용합니다.

  • Sagemaker 엔드포인트가 배포되는 VPC 리소스에 액세스하도록 함수를 구성합니다.

  • X-Ray 추적 사용

  • 환경 변수를 설정합니다.

    • SAGEMAKER_ENDPOINT_NAME (default)

    • AWS_NODEJS_CONNECTION_REUSE_ENABLED(노드 10.x 이상 함수의 경우)

Amazon SageMaker 엔드포인트

  • Sagemaker 리소스를 생성할 수 있는 제한된 권한을 구성합니다.

  • 세이지메이커 모델, 엔드포인트 구성 및 엔드포인트를 배포합니다.

  • VPC 배포할 Sagemaker 엔드포인트를 구성합니다.

  • S3 VPC 엔드포인트 및 세이지메이커 런타임 VPC 인터페이스를 배포합니다.

Architecture

GitHub

이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다.
@aws -솔루션 - 구성/aws-람다 - 세이지메이크 렌드 포인트