

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

# `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)를 참조하세요.