

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Migrasikan beban kerja inferensi dari x86 ke AWS Graviton
<a name="realtime-endpoints-graviton"></a>

 [AWS Graviton](https://aws.amazon.com/ec2/graviton/) adalah serangkaian ARM-based prosesor yang dirancang oleh. AWS Mereka lebih hemat energi daripada prosesor berbasis x86 dan menawarkan rasio harga-kinerja yang menarik. Amazon SageMaker AI menawarkan Graviton-based instance sehingga Anda dapat memanfaatkan prosesor canggih ini untuk kebutuhan inferensi Anda. 

 Anda dapat memigrasikan beban kerja inferensi yang ada dari instance berbasis x86 ke Graviton-based instance, dengan menggunakan gambar kontainer yang kompatibel dengan ARM atau gambar kontainer multi-arsitektur. Panduan ini mengasumsikan bahwa Anda menggunakan gambar kontainer [AWS Deep Learning, atau gambar kontainer](https://github.com/aws/deep-learning-containers/blob/master/available_images.md) yang kompatibel dengan ARM Anda sendiri. Untuk informasi lebih lanjut tentang membuat gambar Anda sendiri, periksa [Membangun gambar Anda](https://github.com/aws/deep-learning-containers#building-your-image). 

 Pada tingkat tinggi, memigrasikan beban kerja inferensi dari instance berbasis x86 ke instance adalah proses empat langkah: Graviton-based 

1. Dorong gambar kontainer ke Amazon Elastic Container Registry (Amazon ECR), registri kontainer AWS terkelola.

1. Buat Model SageMaker AI.

1. Buat konfigurasi titik akhir.

1. Buat titik akhir.

 Bagian berikut dari panduan ini memberikan rincian lebih lanjut mengenai langkah-langkah di atas. Ganti contoh kode {{user placeholder text}} dalam dengan informasi Anda sendiri. 

**Topics**
+ [Dorong gambar wadah ke Amazon ECR](#realtime-endpoints-graviton-ecr)
+ [Buat Model SageMaker AI](#realtime-endpoints-graviton-model)
+ [Buat konfigurasi titik akhir](#realtime-endpoints-graviton-epc)
+ [Buat titik akhir](#realtime-endpoints-graviton-ep)

## Dorong gambar wadah ke Amazon ECR
<a name="realtime-endpoints-graviton-ecr"></a>

 Anda dapat mendorong gambar kontainer Anda ke Amazon ECR dengan file. AWS CLI Saat menggunakan gambar yang kompatibel dengan ARM, verifikasi bahwa itu mendukung arsitektur ARM: 

```
docker inspect {{deep-learning-container-uri}}
```

 Respons `"Architecture": "arm64"` menunjukkan bahwa gambar mendukung arsitektur ARM. Anda dapat mendorongnya ke Amazon ECR dengan `docker push` perintah. Untuk informasi selengkapnya, periksa [Mendorong gambar Docker](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-ecr-image.html). 

 Multi-architecture gambar kontainer pada dasarnya adalah sekumpulan gambar kontainer yang mendukung arsitektur atau sistem operasi yang berbeda, yang dapat Anda rujuk dengan nama manifes umum. Jika Anda menggunakan gambar wadah multi-arsitektur, maka selain mendorong gambar ke Amazon ECR, Anda juga harus mendorong daftar manifes ke Amazon ECR. Daftar manifes memungkinkan penyertaan bersarang dari manifes gambar lain, di mana setiap gambar yang disertakan ditentukan oleh arsitektur, sistem operasi, dan atribut platform lainnya. Contoh berikut membuat daftar manifes, dan mendorongnya ke Amazon ECR. 

1. Buat daftar manifes.

   ```
   docker manifest create {{aws-account-id}}.dkr.ecr.{{aws-region}}.amazonaws.com/{{my-repository}} \
     {{aws-account-id}}.dkr.ecr.{{aws-account-id}}.amazonaws.com/{{my-repository:amd64}} \
   	{{aws-account-id}}.dkr.ecr.{{aws-account-id}}.amazonaws.com/{{my-repository:arm64}} \
   ```

1.  Beri anotasi daftar manifes, sehingga benar mengidentifikasi gambar mana untuk arsitektur mana. 

   ```
   docker manifest annotate --arch arm64 {{aws-account-id}}.dkr.ecr.{{aws-region}}.amazonaws.com/{{my-repository}} \
     {{aws-account-id}}.dkr.ecr.{{aws-region}}.amazonaws.com/{{my-repository:arm64}}
   ```

1. Dorong manifes.

   ```
   docker manifest push {{aws-account-id}}.dkr.ecr.{{aws-region}}.amazonaws.com/{{my-repository}}
   ```

 Untuk informasi selengkapnya tentang membuat dan mendorong daftar manifes ke Amazon ECR, periksa [Memperkenalkan gambar wadah multi-arsitektur untuk Amazon ECR](https://aws.amazon.com/blogs/containers/introducing-multi-architecture-container-images-for-amazon-ecr/), dan [Mendorong](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-multi-architecture-image.html) gambar multi-arsitektur. 

## Buat Model SageMaker AI
<a name="realtime-endpoints-graviton-model"></a>

 Buat Model SageMaker AI dengan memanggil [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModel.html)API. 

```
import boto3
from sagemaker import get_execution_role


aws_region = "{{aws-region}}"
sagemaker_client = boto3.client("sagemaker", region_name=aws_region)

role = get_execution_role()

sagemaker_client.create_model(
    ModelName = "{{model-name}}",
    PrimaryContainer = {
        "Image": "{{deep-learning-container-uri}}",
        "ModelDataUrl": "{{model-s3-location}}",
        "Environment": {
            "SAGEMAKER_PROGRAM": "{{inference.py}}",
            "SAGEMAKER_SUBMIT_DIRECTORY": "{{inference-script-s3-location}}",
            "SAGEMAKER_CONTAINER_LOG_LEVEL": "20",
            "SAGEMAKER_REGION": aws_region,
        }
    },
    ExecutionRoleArn = role
)
```

## Buat konfigurasi titik akhir
<a name="realtime-endpoints-graviton-epc"></a>

 Buat konfigurasi titik akhir dengan memanggil [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpointConfig.html)API. Untuk daftar instance, periksa [Menghitung Graviton-based instans yang dioptimalkan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/compute-optimized-instances.html). 

```
sagemaker_client.create_endpoint_config(
    EndpointConfigName = "{{endpoint-config-name}}",
    ProductionVariants = [
        {
            "VariantName": "{{variant-name}}",
            "ModelName": "{{model-name}}",
            "InitialInstanceCount": {{1}},
            "InstanceType": "{{ml.c7g.xlarge}}", # Graviton-based instance
       }
    ]
)
```

## Buat titik akhir
<a name="realtime-endpoints-graviton-ep"></a>

 Buat titik akhir dengan memanggil [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html)API. 

```
sagemaker_client.create_endpoint(
    EndpointName = "{{endpoint-name}}",
    EndpointConfigName = "{{endpoint-config-name}}"
)
```