

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

# JumpStart 파운데이션 모델 사용량
<a name="jumpstart-foundation-models-use"></a>

Amazon SageMaker Studio 또는 Amazon SageMaker Studio Classic을 통해 파운데이션 모델을 선택, 훈련 또는 배포하고, JumpStart 파운데이션 모델을 SageMaker Python SDK와 함께 프로그래밍 방식으로 사용하거나 JumpStart 파운데이션 모델을 SageMaker AI 콘솔을 통해 직접 검색할 수 있습니다.

**Topics**
+ [Studio에서 파운데이션 모델 사용](jumpstart-foundation-models-use-studio-updated.md)
+ [Amazon SageMaker Studio Classic에서 파운데이션 모델 사용](jumpstart-foundation-models-use-studio.md)
+ [SageMaker Python SDK로 파운데이션 모델 사용](jumpstart-foundation-models-use-python-sdk.md)
+ [SageMaker AI 콘솔에서 파운데이션 모델 살펴보기](jumpstart-foundation-models-use-console.md)

# Studio에서 파운데이션 모델 사용
<a name="jumpstart-foundation-models-use-studio-updated"></a>

Amazon SageMaker Studio를 사용하면 Studio UI를 통해 공개적으로 사용 가능한 모델과 독점 JumpStart 파운데이션 모델을 직접 미세 조정, 배포 및 평가할 수 있습니다.

**중요**  
2023년 11월 30일부터 이전 Amazon SageMaker Studio 환경이 이제 Amazon SageMaker Studio Classic으로 지정되었습니다. 다음 섹션은 업데이트된 Studio 환경 사용에 해당합니다. Studio Classic 애플리케이션 사용에 대한 자세한 내용은 [Amazon SageMaker Studio Classic](studio.md) 섹션을 참조하세요.

시작하려면 Amazon SageMaker Studio의 JumpStart 랜딩 페이지로 이동합니다. **홈** 페이지 또는 왼쪽 패널 메뉴에서 액세스할 수 있습니다. **JumpStart** 랜딩 페이지에서 공개적으로 사용 가능한 모델과 독점 모델 모두의 공급자로부터 모델 허브를 탐색하고 모델을 검색할 수 있습니다.

각 모델 허브 내에서 가장 **가장 많은 좋아요**, **가장 많은 다운로드**, **최근 업데이트**를 기준으로 모델을 정렬하거나 작업별로 필터링할 수 있습니다. 모델을 선택하여 세부 정보 카드를 확인합니다. 모델 세부 정보 카드에서 사용 가능한 옵션에 따라 모델 **미세 조정**, **배포** 또는 **평가**를 선택할 수 있습니다. 일부 모델은 미세 조정 또는 평가에 사용할 수 없습니다.

Amazon SageMaker Studio로 시작하기에 대한 자세한 정보는 [Amazon SageMaker Studio](studio-updated.md) 섹션을 참조하세요.

**Topics**
+ [Studio에서 모델 미세 조정](jumpstart-foundation-models-use-studio-updated-fine-tune.md)
+ [Studio에서 모델 배포](jumpstart-foundation-models-use-studio-updated-deploy.md)
+ [Studio에서 모델 평가](jumpstart-foundation-models-use-studio-updated-evaluate.md)
+ [Amazon Bedrock에서 SageMaker JumpStart 모델 사용](jumpstart-foundation-models-use-studio-updated-register-bedrock.md)

# Studio에서 모델 미세 조정
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune"></a>

미세 조정을 사용하면 처음부터 훈련하지 않고도 새 데이터세트를 기반으로 사전 훈련된 모델을 훈련시킬 수 있습니다. 전이 학습이라고도 하는 이 프로세스를 통해 더 작은 데이터세트를 사용하고 훈련 시간을 단축하여 정확한 모델을 생성할 수 있습니다. JumpStart 파운데이션 모델을 미세 조정하려면 Studio UI에서 모델 세부 정보 카드로 이동합니다. Studio에서 JumpStart를 여는 방법에 대한 자세한 내용은 [Studio에서 JumpStart 열기](studio-jumpstart.md#jumpstart-open-studio) 섹션을 참조하세요. 선택한 모델 세부 정보 카드로 이동한 후 오른쪽 상단 모서리에서 **훈련**을 선택합니다. 일부 모델에는 미세 조정을 사용할 수 없습니다.

**중요**  
일부 파운데이션 모델은 미세 조정 전 EULA(최종 사용자 라이선스 계약)을 명시적으로 수락해야 합니다. 자세한 내용은 [Amazon SageMaker Studio에서의 EULA 수락](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-studio) 섹션을 참조하세요.

## 모델 설정
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-model"></a>

Amazon SageMaker Studio에서 사전 훈련된 JumpStart 파운데이션 모델을 사용하는 경우 **모델 아티팩트 위치(Amazon S3 URI)**가 기본적으로 채워집니다. 기본 Amazon S3 URI를 편집하려면 **모델 아티팩트 위치 입력**을 선택합니다. 일부 모델은 모델 아티팩트 위치 변경을 지원하지 않습니다.

## 데이터 설정
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-data"></a>

**데이터** 필드에서 훈련 데이터세트 위치에 Amazon S3 URI 포인트를 제공합니다. 기본 Amazon S3 URI는 예제 훈련 데이터세트를 가리킵니다. 기본 Amazon S3 URI를 편집하려면 **훈련 데이터세트 입력**을 선택하고 URI를 변경합니다. 훈련 데이터 형식 지정에 대한 자세한 내용은 Amazon SageMaker Studio의 모델 세부 정보 카드를 검토하세요.

## 하이퍼파라미터
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-hyperparameters"></a>

모델을 미세 조정하는 데 사용되는 훈련 작업의 하이퍼파라미터를 사용자 지정할 수 있습니다. 미세 조정 가능한 각 모델에 사용할 수 있는 하이퍼파라미터는 모델에 따라 다릅니다.

모델 간에 일반적으로 사용되는 하이퍼파라미터는 다음과 같습니다.
+ **에포크** – 한 에포크는 전체 데이터세트를 한 번 순환하는 것입니다. 여러 간격으로 하나의 배치가 완성되고, 여러 배치가 모여 결국 한 에포크를 완성하게 됩니다. 모델의 정확도가 허용 가능한 수준에 도달하거나 오류율이 허용 수준 아래로 떨어질 때까지 여러 에포크가 실행됩니다.
+ **학습률** – 에포크 간에 값을 변경해야 하는 양. 모델이 세분화됨에 따라 내부 가중치를 조정하고 오류율을 점검하여 모델이 개선되는지 확인합니다. 일반적인 학습률은 0.1 또는 0.01인데, 0.01은 훨씬 작은 조정으로 인해 훈련이 수렴되는 데 오랜 시간이 걸릴 수 있는 반면, 0.1은 훨씬 커서 훈련이 오버슈팅될 수 있습니다. 이는 모델 훈련을 위해 조정할 수 있는 기본 하이퍼파라미터 중 하나입니다. 텍스트 모델의 경우 학습률이 훨씬 낮을수록(BERT의 경우 5e–5) 모델이 더 정확할 수 있습니다.
+ **배치 크기** – 각 간격마다 선택하여 훈련을 위해 GPU로 보낼 데이터세트의 레코드 수입니다.

Studio UI의 모델 세부 정보 카드에서 도구 팁 프롬프트와 추가 정보를 검토하여 원하는 모델에 맞는 하이퍼파라미터에 대해 자세히 알아봅니다.

사용 가능한 하이퍼파라미터에 대한 자세한 내용은 [일반적으로 지원되는 미세 조정 하이퍼파라미터](jumpstart-foundation-models-fine-tuning.md#jumpstart-foundation-models-fine-tuning-hyperparameters) 섹션을 참조하세요.

## 배포
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-instance"></a>

훈련 작업의 훈련 인스턴스 유형 및 출력 아티팩트 위치를 지정합니다. Studio UI 미세 조정 내에서 원하는 모델과 호환되는 인스턴스만 선택할 수 있습니다. 기본 출력 아티팩트 위치는 SageMaker AI의 기본 버킷입니다. 출력 아티팩트 위치를 변경하려면 **출력 아티팩트 위치 입력**으 선택하고 Amazon S3 URI를 변경합니다.

## 보안
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-security"></a>

SageMaker AI가 모델을 훈련시키는 데 사용하는 IAM 역할, 훈련 작업을 가상 프라이빗 클라우드(VPC)에 연결해야 하는지 여부, 데이터 보안을 위한 암호화 키를 포함하여 훈련 작업에 사용할 보안 설정을 지정합니다.

## 추가 정보
<a name="jumpstart-foundation-models-use-studio-updated-fine-tune-additional-info"></a>

**추가 정보** 필드에서 훈련 작업 이름을 편집할 수 있습니다. 키-값 페어의 형태로 태그를 추가하고 제거하여 미세 조정 훈련 작업을 구성하고 분류하는 데 도움이 될 수도 있습니다.

미세 조정 구성에 대한 정보를 제공한 후 **제출**을 선택합니다. 미세 조정을 선택한 사전 훈련된 파운데이션 모델에 훈련 전에 최종 사용자 라이선스 계약(EULA)의 명시적 동의가 필요한 경우, EULA가 팝업 창에 제공됩니다. EULA 약관에 동의하려면 **수락**을 선택합니다. 사용자는 모델을 다운로드하거나 사용하기 전에 해당 라이선스 조건을 검토 및 준수하고 사용 사례에 적합한지 확인해야 합니다.

# Studio에서 모델 배포
<a name="jumpstart-foundation-models-use-studio-updated-deploy"></a>

JumpStart 파운데이션 모델을 배포하려면 Studio UI에서 모델 세부 정보 카드로 이동합니다. Studio에서 JumpStart를 여는 방법에 대한 자세한 내용은 [Studio에서 JumpStart 열기](studio-jumpstart.md#jumpstart-open-studio) 섹션을 참조하세요. 선택한 모델 세부 정보 페이지로 이동한 후 Studio UI의 오른쪽 상단 모서리에서 **배포**를 선택합니다. 그런 다음 [SageMaker Studio를 사용하여 모델 배포](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deploy-models.html#deploy-models-studio)의 단계를 따릅니다.

**중요**  
일부 파운데이션 모델은 배포 전에 EULA(최종 사용자 라이선스 계약)을 명시적으로 수락해야 합니다. 자세한 내용은 [Amazon SageMaker Studio에서의 EULA 수락](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-studio) 섹션을 참조하세요.

# Studio에서 모델 평가
<a name="jumpstart-foundation-models-use-studio-updated-evaluate"></a>

Amazon SageMaker JumpStart는 Studio에서 SageMaker Clarify 파운데이션 모델 평가(FME)와 통합됩니다. JumpStart 모델에 내장 평가 기능이 있는 경우 JumpStart Studio UI의 모델 세부 정보 페이지 오른쪽 상단에서 **평가**를 선택할 수 있습니다. 자세한 내용은 [파운데이션 모델 평가](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-foundation-models-evaluate.html)를 참조하세요.

# Amazon Bedrock에서 SageMaker JumpStart 모델 사용
<a name="jumpstart-foundation-models-use-studio-updated-register-bedrock"></a>

Amazon SageMaker JumpStart에서 Amazon Bedrock으로 배포한 모델을 등록할 수 있습니다. Amazon Bedrock을 사용하면 여러 엔드포인트를 통해 모델을 호스팅할 수 있습니다. 또한 에이전트 및 지식 베이스 등의 Amazon Bedrock 기능을 사용할 수 있습니다. Amazon Bedrock의 모델 사용에 관한 자세한 내용은 [https://docs.aws.amazon.com/bedrock/latest/userguide/amazon-bedrock-marketplace.html](https://docs.aws.amazon.com/bedrock/latest/userguide/amazon-bedrock-marketplace.html) 섹션을 참조하세요.

**중요**  
모델을 Amazon Bedrock으로 마이그레이션하려면 [AmazonBedrockFullAccess](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonBedrockFullAccess.html) 정책을 IAM 역할에 연결하는 것을 권장합니다. 관리형 정책을 연결할 수 없는 경우 IAM 역할에 다음 권한이 있는지 확인합니다.  

****  

```
{
    	"Version":"2012-10-17",		 	 	 
    	"Statement": [
    		{
    			"Sid": "BedrockAll",
    			"Effect": "Allow",
    			"Action": [
    				"bedrock:*"
    			],
    			"Resource": "*"
    		},
    		{
    			"Sid": "DescribeKey",
    			"Effect": "Allow",
    			"Action": [
    				"kms:DescribeKey"
    			],
    			"Resource": "arn:*:kms:*:::*"
    		},
    		{
    			"Sid": "APIsWithAllResourceAccess",
    			"Effect": "Allow",
    			"Action": [
    				"iam:ListRoles",
    				"ec2:DescribeVpcs",
    				"ec2:DescribeSubnets",
    				"ec2:DescribeSecurityGroups"
    			],
    			"Resource": "*"
    		},
    		{
    			"Sid": "MarketplaceModelEndpointMutatingAPIs",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:CreateEndpoint",
    				"sagemaker:CreateEndpointConfig",
    				"sagemaker:CreateModel",
    				"sagemaker:CreateInferenceComponent",
    				"sagemaker:DeleteInferenceComponent",
    				"sagemaker:DeleteEndpoint",
    				"sagemaker:UpdateEndpoint"
    			],
    			"Resource": [
    				"arn:aws:sagemaker:*:*:endpoint/*",
    				"arn:aws:sagemaker:*:*:endpoint-config/*",
    				"arn:aws:sagemaker:*:*:model/*"
    			],
    			"Condition": {
    				"StringEquals": {
    					"aws:CalledViaLast": "bedrock.amazonaws.com"
    				}
    			}
    		},
    		{
    			"Sid": "BedrockEndpointTaggingOperations",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:AddTags",
    				"sagemaker:DeleteTags"
    			],
    			"Resource": [
    				"arn:aws:sagemaker:*:*:endpoint/*",
    				"arn:aws:sagemaker:*:*:endpoint-config/*",
    				"arn:aws:sagemaker:*:*:model/*"
    			]
    		},
    		{
    			"Sid": "MarketplaceModelEndpointNonMutatingAPIs",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:DescribeEndpoint",
    				"sagemaker:DescribeEndpointConfig",
    				"sagemaker:DescribeModel",
    				"sagemaker:DescribeInferenceComponent",
    				"sagemaker:ListEndpoints",
    				"sagemaker:ListTags"
    			],
    			"Resource": [
    				"arn:aws:sagemaker:*:*:endpoint/*",
    				"arn:aws:sagemaker:*:*:endpoint-config/*",
    				"arn:aws:sagemaker:*:*:model/*"
    			],
    			"Condition": {
    				"StringEquals": {
    					"aws:CalledViaLast": "bedrock.amazonaws.com"
    				}
    			}
    		},
    		{
    			"Sid": "BedrockEndpointInvokingOperations",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:InvokeEndpoint",
    				"sagemaker:InvokeEndpointWithResponseStream"
    			],
    			"Resource": [
    				"arn:aws:sagemaker:*:*:endpoint/*"
    			],
    			"Condition": {
    				"StringEquals": {
    					"aws:CalledViaLast": "bedrock.amazonaws.com"
    				}
    			}
    		},
    		{
    			"Sid": "DiscoveringMarketplaceModel",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:DescribeHubContent"
    			],
    			"Resource": [
    				"arn:aws:sagemaker:*:aws:hub-content/SageMakerPublicHub/Model/*",
    				"arn:aws:sagemaker:*:aws:hub/SageMakerPublicHub"
    			]
    		},
    		{
    			"Sid": "AllowMarketplaceModelsListing",
    			"Effect": "Allow",
    			"Action": [
    				"sagemaker:ListHubContents"
    			],
    			"Resource": "arn:aws:sagemaker:*:aws:hub/SageMakerPublicHub"
    		},
    		{
    			"Sid": "RetrieveSubscribedMarketplaceLicenses",
    			"Effect": "Allow",
    			"Action": [
    				"license-manager:ListReceivedLicenses"
    			],
    			"Resource": [
    				"*"
    			]
    		},
    		{
    			"Sid": "PassRoleToSageMaker",
    			"Effect": "Allow",
    			"Action": [
    				"iam:PassRole"
    			],
    			"Resource": [
    				"arn:aws:iam::*:role/*Sagemaker*ForBedrock*"
    			],
    			"Condition": {
    				"StringEquals": {
    					"iam:PassedToService": [
    						"sagemaker.amazonaws.com",
    						"bedrock.amazonaws.com"
    					]
    				}
    			}
    		},
    		{
    			"Sid": "PassRoleToBedrock",
    			"Effect": "Allow",
    			"Action": [
    				"iam:PassRole"
    			],
    			"Resource": "arn:aws:iam::*:role/*AmazonBedrock*",
    			"Condition": {
    				"StringEquals": {
    					"iam:PassedToService": [
    						"bedrock.amazonaws.com"
    					]
    				}
    			}
    		}
    	]
    }
```
Amazon Bedrock 전체 액세스 정책은 Amazon Bedrock API에 대한 권한만 제공합니다. 에서 Amazon Bedrock을 사용하려면 AWS Management Console IAM 역할에 다음 권한도 있어야 합니다.  

```
{
        "Sid": "AllowConsoleS3AccessForBedrockMarketplace",
        "Effect": "Allow",
        "Action": [
          "s3:GetObject",
          "s3:GetBucketCORS",
          "s3:ListBucket",
          "s3:ListBucketVersions",
          "s3:GetBucketLocation"
        ],
        "Resource": "*"
    }
```
자체 정책을 작성하는 경우 리소스에 대한 Amazon Bedrock Marketplace 작업을 허용하는 정책 설명을 포함해야 합니다. 예를 들어 다음 정책을 사용하면 Amazon Bedrock이 엔드포인트에 배포한 모델에 `InvokeModel` 작업을 사용할 수 있습니다.  

****  

```
{
    
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "BedrockAll",
                "Effect": "Allow",
                "Action": [
                    "bedrock:InvokeModel"
                ],
                "Resource": [
                "arn:aws:bedrock:us-east-1:111122223333:marketplace/model-endpoint/all-access"
                ]
            },
            {
                "Sid": "VisualEditor1",
                "Effect": "Allow",
                "Action": ["sagemaker:InvokeEndpoint"],
                "Resource": "arn:aws:sagemaker:us-east-1:111122223333:endpoint/*",
                "Condition": {
                    "StringEquals": {
                        "aws:ResourceTag/project": "example-project-id",
                        "aws:CalledViaLast": "bedrock.amazonaws.com"
                    }
                }
            }
        ]
    
}
```

모델을 배포한 후 Amazon Bedrock에서 사용할 수 있습니다. Amazon Bedrock에서 사용할 수 있는지 확인하려면 Studio UI에서 모델 세부 정보 카드로 이동합니다. 모델 카드에 **Bedrock 준비 완료**가 표시되면 모델을 Amazon Bedrock에 등록할 수 있습니다.

**중요**  
기본적으로 Amazon SageMaker JumpStart는 배포하는 모델에 대한 네트워크 액세스를 사용 해제합니다. 네트워크 액세스를 사용 설정한 경우 Amazon Bedrock에서 모델을 사용할 수 없습니다. Amazon Bedrock에서 모델을 사용하려면 네트워크 액세스가 사용 해제된 상태로 모델을 재배포해야 합니다.

Amazon Bedrock과 함께 사용하려면 **엔드포인트 세부 정보** 페이지로 이동하여 Studio UI의 오른쪽 상단 모서리에서 **Bedrock과 함께 사용**을 선택합니다. 팝업이 표시되면 **Bedrock에 등록**을 선택합니다.

# Amazon SageMaker Studio Classic에서 파운데이션 모델 사용
<a name="jumpstart-foundation-models-use-studio"></a>

Studio Classic UI를 통해 공개적으로 사용 가능한 독점 JumpStart 파운데이션 모델을 직접 배포 및 미세 조정할 수 있습니다.

**중요**  
2023년 11월 30일부터 이전 Amazon SageMaker Studio 환경이 이제 Amazon SageMaker Studio Classic으로 지정되었습니다. 다음 섹션은 Studio Classic 애플리케이션 사용에 관해 다룹니다. 업데이트된 Studio 환경 사용에 대한 자세한 내용은 [Amazon SageMaker Studio](studio-updated.md) 섹션을 참조하세요.  
Studio Classic은 기존 워크로드에 대해 유지 관리되지만 더 이상 온보딩에 사용할 수 없습니다. 기존 Studio Classic 애플리케이션만 중지하거나 삭제할 수 있으며 새 애플리케이션을 생성할 수 없습니다. [워크로드를 새 Studio 환경으로 마이그레이션하는](studio-updated-migrate.md) 것이 좋습니다.

Studio Classic을 시작하려면 [Amazon SageMaker Studio Classic 시작](studio-launch.md)을 참조하세요.

 ![\[JumpStart foundation models available in Amazon SageMaker Studio Classic.\]](http://docs.aws.amazon.com/ko_kr/sagemaker/latest/dg/images/jumpstart/jumpstart-fm-studio.png) 

Amazon SageMaker Studio Classic을 연 후 탐색 패널의 SageMaker JumpStart 섹션에서 **모델, 노트북, 솔루션**을 선택합니다. 그런 다음 아래로 스크롤하여 사용 사례에 따라 **파운데이션 모델: 텍스트 생성** 또는 **파운데이션 모델: 이미지 생성** 섹션을 찾으세요.

제안된 파운데이션 모델 카드에서 **모델 보기**를 선택하거나 **모든 모델 탐색**을 선택하여 텍스트 생성 또는 이미지 생성에 사용 가능한 모든 파운데이션 모델을 볼 수 있습니다. 사용 가능한 모델을 모두 표시하도록 선택하면 작업, 데이터 유형, 콘텐츠 유형 또는 프레임워크별로 사용 가능한 모델을 추가로 필터링할 수 있습니다. **검색** 창에서 모델 이름을 직접 검색할 수도 있습니다. 모델 선택에 대한 지침이 필요한 경우 [사용 가능한 파운데이션 모델](jumpstart-foundation-models-latest.md)을 참조하세요.

**중요**  
일부 파운데이션 모델은 EULA(최종 사용자 라이선스 계약)을 명시적으로 수락해야 합니다. 자세한 내용은 [Amazon SageMaker Studio에서의 EULA 수락](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-studio) 섹션을 참조하세요.

Studio Classic에서 선택한 파운데이션 모델에 대해 **모델 보기**를 선택한 후 모델을 배포할 수 있습니다. 자세한 내용은 [모델 배포](jumpstart-deploy.md) 섹션을 참조하세요.

**노트북에서 실행** 섹션에서 **노트북 열기**를 선택하여 Studio Classic에서 직접 파운데이션 모델의 예제 노트북을 실행할 수도 있습니다.

**참고**  
Studio Classic에 독점 파운데이션 모델을 배포하려면 먼저 AWS Marketplace에서 모델을 구독해야 합니다. AWS Marketplace 링크는 Studio Classic 내의 연결된 예제 노트북에 제공됩니다.

모델을 미세 조정할 수 있는 경우 모델을 미세 조정할 수도 있습니다. 자세한 내용은 [모델 미세 조정](jumpstart-fine-tune.md) 섹션을 참조하세요. 미세 조정 가능한 JumpStart 파운데이션 모델 목록은 [미세 조정을 위한 파운데이션 모델 및 하이퍼파라미터](jumpstart-foundation-models-fine-tuning.md)을 참조하세요.

# SageMaker Python SDK로 파운데이션 모델 사용
<a name="jumpstart-foundation-models-use-python-sdk"></a>

모든 JumpStart 파운데이션 모델은 SageMaker Python SDK를 사용하여 프로그래밍 방식 배포에 사용할 수 있습니다.

공개적으로 사용 가능한 파운데이션 모델을 배포하려면 해당 모델 ID를 사용할 수 있습니다. 공개적으로 사용 가능한 모든 파운데이션 모델의 모델 ID를 참조하려면 [사전 훈련된 모델 테이블을 사용한 내장 알고리즘](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html)을 참조하세요. **검색** 창에서 파운데이션 모델의 이름을 검색합니다. **항목 표시** 드롭다운 또는 페이지 매김 제어를 사용하여 사용 가능한 모델을 탐색합니다.

독점 모델은 AWS Marketplace에서 모델을 구독한 후 모델 패키지 정보를 사용하여 배포해야 합니다.

JumpStart 사용 가능한 모델 목록은 [사용 가능한 파운데이션 모델](jumpstart-foundation-models-latest.md)에서 확인할 수 있습니다.

**중요**  
일부 파운데이션 모델은 EULA(최종 사용자 라이선스 계약)을 명시적으로 수락해야 합니다. 자세한 내용은 [SageMaker Python SDK를 사용한 EULA 승인](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-python-sdk) 섹션을 참조하세요.

다음 섹션에서는 `JumpStartEstimator` 클래스를 사용하여 공개적으로 사용 가능한 파운데이션 모델을 미세 조정하고, `ModelPackage` 클래스를 사용하여 공개적으로 사용 가능한 파운데이션 모델을 배포하고, `JumpStartModel` 클래스를 사용하여 독점 파운데이션 모델을 배포하는 방법을 보여줍니다.

**Topics**
+ [`JumpStartEstimator` 클래스를 사용하여 공개적으로 사용 가능한 파운데이션 모델을 미세 조정합니다.](jumpstart-foundation-models-use-python-sdk-estimator-class.md)
+ [`JumpStartModel` 클래스와 함께 공개적으로 사용 가능한 파운데이션 모델 배포](jumpstart-foundation-models-use-python-sdk-model-class.md)
+ [`ModelPackage` 클래스와 함께 독점 파운데이션 모델 배포](jumpstart-foundation-models-use-python-sdk-proprietary.md)

# `JumpStartEstimator` 클래스를 사용하여 공개적으로 사용 가능한 파운데이션 모델을 미세 조정합니다.
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class"></a>

**참고**  
선별된 프라이빗 허브에서 파운데이션 모델을 미세 조정하는 방법에 대한 설명은 [선별된 허브 모델 미세 조정](jumpstart-curated-hubs-fine-tune.md) 섹션을 참조하세요.

SageMaker Python SDK를 사용하여 몇 줄의 코드만으로 내장 알고리즘 또는 사전 훈련된 모델을 미세 조정할 수 있습니다.

1. 먼저 [사전 훈련된 모델 테이블이 있는 기본 제공 알고리즘에서 원하는 모델의 모델 ID](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html)를 찾습니다.

1. 모델 ID를 사용하여 훈련 작업을 JumpStart 추정기로 정의합니다.

   ```
   from sagemaker.jumpstart.estimator import JumpStartEstimator
   
   model_id = "huggingface-textgeneration1-gpt-j-6b"
   estimator = JumpStartEstimator(model_id=model_id)
   ```

1. 미세 조정`estimator.fit()`에 사용할 훈련 데이터를 가리키면서 모델에서 를 실행합니다.

   ```
   estimator.fit(
       {"train": training_dataset_s3_path, "validation": validation_dataset_s3_path}
   )
   ```

1. 그런 다음 `deploy` 메서드를 사용하여 추론을 위해 모델을 자동으로 배포합니다. 이 예제에서는 Hugging Face의 GPT-J 6B 모델을 사용합니다.

   ```
   predictor = estimator.deploy()
   ```

1. 그런 다음 `predict` 메서드를 사용하여 배포된 모델로 추론을 실행할 수 있습니다.

   ```
   question = "What is Southern California often abbreviated as?"
   response = predictor.predict(question)
   print(response)
   ```

**참고**  
이 예제에서는 파운데이션 모델 GPT-J 6B 를 사용합니다. 이 모델은 질문 응답, 명명된 엔터티 인식, 요약 등을 포함한 다양한 텍스트 생성 사용 사례에 적합합니다. 모델 사용 사례에 대한 자세한 내용은 [사용 가능한 파운데이션 모델](jumpstart-foundation-models-latest.md) 섹션을 참조하세요.

`JumpStartEstimator`를 생성할 때 선택적으로 모델 버전 또는 인스턴스 유형을 지정할 수 있습니다. `JumpStartEstimator `클래스 및 파라미터에 대한 자세한 내용은 [JumpStartEstimator](https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.jumpstart.estimator.JumpStartEstimator)를 참조하세요.

## 기본 인스턴스 유형 확인
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-instance-types"></a>

`JumpStartEstimator` 클래스를 사용하여 사전 학습된 모델을 미세 조정할 때 선택적으로 특정 모델 버전 또는 인스턴스 유형을 포함할 수 있습니다. 모든 JumpStart 모델에는 기본 인스턴스 유형이 있습니다. 다음 코드를 사용하여 기본 훈련 인스턴스 유형을 검색합니다.

```
from sagemaker import instance_types

instance_type = instance_types.retrieve_default(
    model_id=model_id,
    model_version=model_version,
    scope="training")
print(instance_type)
```

`instance_types.retrieve()` 메서드를 사용하여 지정된 JumpStart 모델에 지원되는 모든 인스턴스 유형을 볼 수 있습니다.

## 기본 하이퍼파라미터 확인
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-hyperparameters"></a>

훈련에 사용되는 기본 하이퍼파라미터를 확인하려면 `hyperparameters` 클래스의 `retrieve_default()` 메서드를 사용할 수 있습니다.

```
from sagemaker import hyperparameters

my_hyperparameters = hyperparameters.retrieve_default(model_id=model_id, model_version=model_version)
print(my_hyperparameters)

# Optionally override default hyperparameters for fine-tuning
my_hyperparameters["epoch"] = "3"
my_hyperparameters["per_device_train_batch_size"] = "4"

# Optionally validate hyperparameters for the model
hyperparameters.validate(model_id=model_id, model_version=model_version, hyperparameters=my_hyperparameters)
```

사용 가능한 하이퍼파라미터에 대한 자세한 내용은 [일반적으로 지원되는 미세 조정 하이퍼파라미터](jumpstart-foundation-models-fine-tuning.md#jumpstart-foundation-models-fine-tuning-hyperparameters) 섹션을 참조하세요.

## 기본 지표 정의 확인
<a name="jumpstart-foundation-models-use-python-sdk-estimator-class-metric-definitions"></a>

기본 지표 정의를 확인할 수도 있습니다.

```
print(metric_definitions.retrieve_default(model_id=model_id, model_version=model_version))
```

# `JumpStartModel` 클래스와 함께 공개적으로 사용 가능한 파운데이션 모델 배포
<a name="jumpstart-foundation-models-use-python-sdk-model-class"></a>

SageMaker Python SDK를 사용하여 몇 줄의 코드만으로 기본 제공 알고리즘 또는 사전 훈련된 모델을 SageMaker AI 엔드포인트에 배포할 수 있습니다.

1. 먼저 [사전 훈련된 모델 테이블이 있는 기본 제공 알고리즘에서 원하는 모델의 모델 ID](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html)를 찾습니다.

1. 모델 ID를 사용하여 모델을 JumpStart 모델로 정의합니다.

   ```
   from sagemaker.jumpstart.model import JumpStartModel
   
   model_id = "huggingface-text2text-flan-t5-xl"
   my_model = JumpStartModel(model_id=model_id)
   ```

1. `deploy` 메서드를 사용하여 추론을 위해 모델을 자동으로 배포합니다. 이 예제에서는 Hugging Face의 FLAN-T5 XL 모델을 사용합니다.

   ```
   predictor = my_model.deploy()
   ```

1. 그런 다음 `predict` 메서드를 사용하여 배포된 모델로 추론을 실행할 수 있습니다.

   ```
   question = "What is Southern California often abbreviated as?"
   response = predictor.predict(question)
   print(response)
   ```

**참고**  
이 예제에서는 파운데이션 모델 FLAN-T5 XL을 사용합니다. 이 모델은 질문 응답, 요약, 챗봇 생성 등을 포함한 다양한 텍스트 생성 사용 사례에 적합합니다. 모델 사용 사례에 대한 자세한 내용은 [사용 가능한 파운데이션 모델](jumpstart-foundation-models-latest.md) 섹션을 참조하세요.

`JumpStartModel ` 클래스와 해당 파라미터에 대한 자세한 내용은 [JumpStartModel](https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.jumpstart.model.JumpStartModel)을 참조하세요.

## 기본 인스턴스 유형 확인
<a name="jumpstart-foundation-models-use-python-sdk-model-class-instance-types"></a>

`JumpStartModel` 클래스를 사용하여 사전 훈련된 모델을 배포할 때 선택적으로 특정 모델 버전 또는 인스턴스 유형을 포함할 수 있습니다. 모든 JumpStart 모델에는 기본 인스턴스 유형이 있습니다. 다음 코드를 사용하여 기본 배포 인스턴스 유형을 검색합니다.

```
from sagemaker import instance_types

instance_type = instance_types.retrieve_default(
    model_id=model_id,
    model_version=model_version,
    scope="inference")
print(instance_type)
```

`instance_types.retrieve()` 메서드를 사용하여 지정된 JumpStart 모델에 지원되는 모든 인스턴스 유형을 확인합니다.

## 추론 구성 요소를 사용하여 여러 모델을 공유 엔드포인트에 배포
<a name="jumpstart-foundation-models-use-python-sdk-model-class-endpoint-types"></a>

추론 구성 요소는 유연성과 확장성을 높이기 위해 엔드포인트에 하나 이상의 모델을 배포하는 데 사용할 수 있는 SageMaker AI 호스팅 객체입니다. JumpStart 모델의 `endpoint_type`를 기본 모델 기반 엔드포인트가 아닌 추론 구성 요소 기반으로 변경해야 합니다.

```
predictor = my_model.deploy(
    endpoint_name = 'jumpstart-model-id-123456789012', 
    endpoint_type = EndpointType.INFERENCE_COMPONENT_BASED
)
```

추론 구성 요소를 사용하여 엔드포인트를 만들고 SageMaker AI 모델을 배포하는 방법에 대한 자세한 내용은 [여러 모델을 사용한 공유 리소스 사용률](realtime-endpoints-deploy-models.md#deployed-shared-utilization) 섹션을 참조하세요.

## 유효한 입력 및 출력 추론 형식 확인
<a name="jumpstart-foundation-models-use-python-sdk-model-class-input-output"></a>

추론에 대해 유효한 데이터 입력 및 출력 형식을 확인하려면 `Serializers` 및 `Deserializers` 클래스의 `retrieve_options()` 메서드를 사용할 수 있습니다.

```
print(sagemaker.serializers.retrieve_options(model_id=model_id, model_version=model_version))
print(sagemaker.deserializers.retrieve_options(model_id=model_id, model_version=model_version))
```

## 지원되는 콘텐츠 확인 및 유형 수락
<a name="jumpstart-foundation-models-use-python-sdk-model-class-content-types"></a>

마찬가지로 `retrieve_options()` 메서드를 사용하여 지원되는 콘텐츠를 확인하고 모델의 유형을 수락할 수 있습니다.

```
print(sagemaker.content_types.retrieve_options(model_id=model_id, model_version=model_version))
print(sagemaker.accept_types.retrieve_options(model_id=model_id, model_version=model_version))
```

유틸리티에 대한 자세한 내용은 [Utility API](https://sagemaker.readthedocs.io/en/stable/api/utility/index.html)를 참조하세요.

# `ModelPackage` 클래스와 함께 독점 파운데이션 모델 배포
<a name="jumpstart-foundation-models-use-python-sdk-proprietary"></a>

독점 모델은 AWS Marketplace에서 모델을 구독한 후 모델 패키지 정보를 사용하여 배포해야 합니다. SageMaker AI 및에 대한 자세한 내용은의 Amazon SageMaker AI 알고리즘 및 모델 구매 및 판매를 AWS Marketplace참조하세요. [ Amazon SageMaker AWS Marketplace](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-marketplace.html) 최신 독점 모델에 대한 AWS Marketplace 링크를 찾으려면 [ Amazon SageMaker JumpStart 시작하기를 참조하세요](https://aws.amazon.com/sagemaker/jumpstart/getting-started/?sagemaker-jumpstart-cards.sort-by=item.additionalFields.priority&sagemaker-jumpstart-cards.sort-order=asc&awsf.sagemaker-jumpstart-filter-product-type=product-type%23foundation-model&awsf.sagemaker-jumpstart-filter-text=*all&awsf.sagemaker-jumpstart-filter-vision=*all&awsf.sagemaker-jumpstart-filter-tabular=*all&awsf.sagemaker-jumpstart-filter-audio-tasks=*all&awsf.sagemaker-jumpstart-filter-multimodal=*all&awsf.sagemaker-jumpstart-filter-RL=*all&sagemaker-jumpstart-cards.q=proprietary&sagemaker-jumpstart-cards.q_operator=AND).

에서 선택한 모델을 구독 AWS Marketplace한 후 SageMaker Python SDK 및 모델 공급자와 연결된 SDK를 사용하여 파운데이션 모델을 배포할 수 있습니다. 예를 들어 AI21 Labs, Cohere 및 LightOn은 각각 `"ai21[SM]"`, `cohere-sagemaker` 및 `lightonsage` 패키지를 사용합니다.

예를 들어 AI21 Labs의 Jurassic-2 Jumbo Instruct를 사용하여 JumpStart 모델을 정의하려면 다음 코드를 사용합니다.

```
import sagemaker
import ai21

role = get_execution_role()
sagemaker_session = sagemaker.Session()
model_package_arn = "arn:aws:sagemaker:us-east-1:865070037744:model-package/j2-jumbo-instruct-v1-1-43-4e47c49e61743066b9d95efed6882f35"

my_model = ModelPackage(
    role=role, model_package_arn=model_package_arn, sagemaker_session=sagemaker_session
)
```

단계별 예제를 보려면 SageMaker Studio Classic에서 선택한 독점 파운데이션 모델과 관련된 노트북을 찾아 실행하세요. 자세한 정보는 [Amazon SageMaker Studio Classic에서 파운데이션 모델 사용](jumpstart-foundation-models-use-studio.md)를 참조하세요. SageMaker Python SDK에 대한 자세한 설명은 [https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.model.ModelPackage](https://sagemaker.readthedocs.io/en/stable/api/inference/model.html#sagemaker.model.ModelPackage) 섹션을 참조하세요.

# SageMaker AI 콘솔에서 파운데이션 모델 살펴보기
<a name="jumpstart-foundation-models-use-console"></a>

Amazon SageMaker AI 콘솔을 통해 직접 JumpStart 파운데이션 모델을 탐색할 수 있습니다.

1. [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)에서 Amazon SageMaker AI 콘솔을 엽니다.

1. 왼쪽 탐색 패널에서 **JumpStart**를 찾아 **파운데이션 모델**을 선택합니다.

1. 모델을 찾아보거나 특정 모델을 검색합니다. 모델 선택 지침이 필요한 경우 [사용 가능한 파운데이션 모델](jumpstart-foundation-models-latest.md)을 참조하세요. **모델 보기**를 선택하면 선택한 파운데이션 모델의 모델 세부 정보 페이지를 볼 수 있습니다.

1. 모델이 독점 모델인 경우 모델 세부 정보 페이지의 오른쪽 상단에 있는 **구독**을 선택하여 AWS Marketplace에서 모델을 구독하세요. 선택한 모델의 구독을 확인하는 이메일을 받게 됩니다. SageMaker AI 및에 대한 자세한 내용은의 Amazon SageMaker AI 알고리즘 및 모델 구매 및 판매를 AWS Marketplace참조하세요. [ Amazon SageMaker AWS Marketplace](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-marketplace.html) 공개적으로 사용 가능한 파운데이션 모델은 구독이 필요하지 않습니다.

1. GitHub에서 예제 노트북을 보려면 모델 세부 정보 페이지의 오른쪽 상단에 있는 **코드 보기**를 선택합니다.

1. Amazon SageMaker Studio Classic에서 직접 예제 노트북을 보고 실행하려면 모델 세부 정보 페이지의 오른쪽 상단에 있는 **Studio에서 노트북 열기**를 선택하세요.