기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
아피가테이웨이 세이지메이크렌드포인트
모든 클래스는 활발히 개발 중이며 향후 버전에서 이전 버전과 호환되지 않는 변경 또는 제거 될 수 있습니다. 이들은 적용되지 않습니다의미 체계 버전
참고: 적절한 기능을 보장하려면 프로젝트의 AWS 솔루션 구성 패키지와 AWS CDK 패키지가 동일한 버전이어야 합니다.
언어 | 패키지 |
---|---|
|
aws_solutions_constructs.aws_apigateway_sagemakerendpoint
|
|
@aws-solutions-constructs/aws-apigateway-sagemakerendpoint
|
|
software.amazon.awsconstructs.services.apigatewaysagemakerendpoint
|
Overview
이 AWS 솔루션 구성은 Amazon SageMaker 엔드포인트에 연결된 Amazon API 게이트웨이 REST API를 구현합니다.
다음은 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);
파라미터
-
scope
Construct
-
id
string
PropingTemplate
이름 | 유형 | 설명 |
---|---|---|
어피게이트웨이 소품? |
api.RestApiProps
|
API Gateway REST API의 기본 소품을 재정의하는 선택적 사용자 제공 소품. |
어피게이트웨이 실행역할? |
iam.Role
|
API Gateway 에서 SageMaker 엔드포인트를 호출하기 위해 사용하는 IAM 역할 지정되지 않은 경우 기본 역할이 생성되어endpointName . |
EndpointName |
string
|
배포된 SageMaker 추론 끝점의 이름입니다. |
ResourceName |
string
|
GET 메서드를 사용할 수 있습니다 선택적 리소스 이름입니다. |
resourcePath |
string
|
GET 메서드의 리소스 경로입니다. 여기에 정의 된 변수는에서 참조 할 수 있습니다requestMappingTemplate . |
RequestMappingTemplate |
string
|
REST API에서 수신된 GET 요청을 SageMaker 끝점에서 예상되는 POST 요청으로 변환하는 매핑 템플릿. |
ResponseMappingTemplate |
string
|
SageMaker 엔드포인트로부터 수신된 응답을 변환하는 선택적 매핑 템플릿입니다. |
로그그룹Props? |
logs.LogGroupProps
|
CloudWatch Logs 로그 그룹의 기본 소품을 무시하기 위한 선택적 사용자 제공 prop입니다. |
패턴 속성
이름 | 유형 | 설명 |
---|---|---|
ApiGateway way |
api.LambdaRestApi
|
패턴에 의해 생성 된 API Gateway REST API의 인스턴스를 돌려줍니다. |
에이피게이트웨이 역할 |
iam.Role
|
API Gateway REST API의 패턴으로 생성된 IAM 역할의 인스턴스를 반환합니다. |
아피게이트웨이클라우드워치역할 |
iam.Role
|
API Gateway REST API에서 CloudWatch 로의 액세스 로깅을 활성화하는 패턴으로 생성된 IAM 역할의 인스턴스를 반환합니다. |
어피게이트웨이로그 그룹 |
logs.LogGroup
|
API Gateway REST API 액세스 로그가 전송되는 패턴으로 생성된 로그 그룹의 인스턴스를 반환합니다. |
샘플 API 사용
참고: 각 SageMaker 끝점은 고유하며 API의 응답은 배포된 모델에 따라 달라집니다. 아래의 예는에서 샘플을 가정이 블로그 게시물
방법 | 요청 경로 | 쿼리 문자열 | SageMaker 액션 | 설명 |
---|---|---|---|---|
GET |
/321
|
items=101,131,162
|
sagemaker:InvokeEndpoint
|
특정 사용자 및 항목에 대한 예측을 검색합니다. |
기본 설정
재정의없이이 패턴을 즉시 구현하면 다음과 같은 기본값이 설정됩니다.
Amazon API Gateway
-
엣지 최적화 API 엔드포인트 배포
-
API Gateway 에 대한 CloudWatch 로깅
-
API Gateway 대한 최소 권한 액세스 IAM 역할 구성
-
모든 API 메소드의 기본 권한 부여 유형을 IAM으로 설정
-
X-Ray 추적
-
데이터를 SageMaker 에 전달하기 전에 요청 매개 변수의 유효성
Architecture
GitHub
이 패턴의 코드를 보려면 문제 및 끌어오기 요청을 작성/조회하는 등의 작업을 수행합니다. | |
---|---|
|
@aws -솔루션 - 구성/aws-apigateway-세이지메이크 렌드 포인트 |