Dapatkan hasil pekerjaan rekomendasi inferensi Anda - Amazon SageMaker

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

Dapatkan hasil pekerjaan rekomendasi inferensi Anda

Kumpulkan hasil pekerjaan rekomendasi inferensi Anda secara terprogram dengan AWS SDK for Python (Boto3), Studio Classic AWS CLI, atau konsol. SageMaker

AWS SDK for Python (Boto3)

Setelah rekomendasi inferensi selesai, Anda dapat menggunakan DescribeInferenceRecommendationsJob untuk mendapatkan rincian pekerjaan dan rekomendasi. Berikan nama pekerjaan yang Anda gunakan saat Anda membuat pekerjaan rekomendasi inferensi.

job_name='<INSERT>' response = sagemaker_client.describe_inference_recommendations_job( JobName=job_name)

Cetak objek respons. Sampel kode sebelumnya menyimpan respons dalam variabel bernamaresponse.

print(response['Status'])

Ini mengembalikan JSON respons yang mirip dengan contoh berikut. Perhatikan bahwa contoh ini menunjukkan jenis instance yang direkomendasikan untuk inferensi waktu nyata (untuk contoh yang menunjukkan rekomendasi inferensi tanpa server, lihat contoh setelah yang ini).

{ 'JobName': 'job-name', 'JobDescription': 'job-description', 'JobType': 'Default', 'JobArn': 'arn:aws:sagemaker:region:account-id:inference-recommendations-job/resource-id', 'Status': 'COMPLETED', 'CreationTime': datetime.datetime(2021, 10, 26, 20, 4, 57, 627000, tzinfo=tzlocal()), 'LastModifiedTime': datetime.datetime(2021, 10, 26, 20, 25, 1, 997000, tzinfo=tzlocal()), 'InputConfig': { 'ModelPackageVersionArn': 'arn:aws:sagemaker:region:account-id:model-package/resource-id', 'JobDurationInSeconds': 0 }, 'InferenceRecommendations': [{ 'Metrics': { 'CostPerHour': 0.20399999618530273, 'CostPerInference': 5.246913588052848e-06, 'MaximumInvocations': 648, 'ModelLatency': 263596 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.c5.xlarge', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }, { 'Metrics': { 'CostPerHour': 0.11500000208616257, 'CostPerInference': 2.92620870823157e-06, 'MaximumInvocations': 655, 'ModelLatency': 826019 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.c5d.large', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }, { 'Metrics': { 'CostPerHour': 0.11500000208616257, 'CostPerInference': 3.3625731248321244e-06, 'MaximumInvocations': 570, 'ModelLatency': 1085446 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.m5.large', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }], 'ResponseMetadata': { 'RequestId': 'request-id', 'HTTPStatusCode': 200, 'HTTPHeaders': { 'x-amzn-requestid': 'x-amzn-requestid', 'content-type': 'content-type', 'content-length': '1685', 'date': 'Tue, 26 Oct 2021 20:31:10 GMT' }, 'RetryAttempts': 0 } }

Beberapa baris pertama memberikan informasi tentang pekerjaan rekomendasi inferensi itu sendiri. Ini termasuk nama pekerjaan, peranARN, dan waktu pembuatan dan penghapusan.

InferenceRecommendationsKamus berisi daftar rekomendasi inferensi Inference Recommender.

Kamus EndpointConfiguration bersarang berisi rekomendasi instance type (InstanceType) bersama dengan titik akhir dan nama varian (model pembelajaran AWS mesin yang diterapkan) yang digunakan selama pekerjaan rekomendasi. Anda dapat menggunakan nama endpoint dan varian untuk pemantauan di Amazon CloudWatch Events. Untuk informasi selengkapnya, lihat Metrik untuk memantau Amazon SageMaker dengan Amazon CloudWatch.

Kamus Metrics bersarang berisi informasi tentang perkiraan biaya per jam (CostPerHour) untuk titik akhir real-time Anda dalam dolar AS, perkiraan biaya per inferensi (CostPerInference) dalam dolar AS untuk titik akhir waktu nyata Anda, jumlah maksimum yang diharapkan InvokeEndpoint permintaan per menit yang dikirim ke titik akhir (MaxInvocations), dan latensi model (ModelLatency), yang merupakan interval waktu (dalam mikrodetik) yang diambil model Anda untuk merespons. SageMaker Latensi model mencakup waktu komunikasi lokal yang diambil untuk mengirim permintaan dan untuk mengambil respons dari wadah model dan waktu yang dibutuhkan untuk menyelesaikan inferensi dalam wadah.

Contoh berikut menunjukkan InferenceRecommendations bagian dari respons untuk pekerjaan rekomendasi inferensi yang dikonfigurasi untuk mengembalikan rekomendasi inferensi tanpa server:

"InferenceRecommendations": [ { "EndpointConfiguration": { "EndpointName": "value", "InitialInstanceCount": value, "InstanceType": "value", "VariantName": "value", "ServerlessConfig": { "MaxConcurrency": value, "MemorySizeInMb": value } }, "InvocationEndTime": value, "InvocationStartTime": value, "Metrics": { "CostPerHour": value, "CostPerInference": value, "CpuUtilization": value, "MaxInvocations": value, "MemoryUtilization": value, "ModelLatency": value, "ModelSetupTime": value }, "ModelConfiguration": { "Compiled": "False", "EnvironmentParameters": [], "InferenceSpecificationName": "value" }, "RecommendationId": "value" } ]

Anda dapat menafsirkan rekomendasi untuk inferensi tanpa server mirip dengan hasil untuk inferensi waktu nyata, dengan pengecualianServerlessConfig, yang memberi tahu Anda metrik yang dikembalikan untuk titik akhir tanpa server dengan yang diberikan dan kapan. MemorySizeInMB MaxConcurrency = 1 Untuk meningkatkan throughput yang mungkin pada titik akhir, tingkatkan nilai linier. MaxConcurrency Misalnya, jika rekomendasi inferensi menunjukkan MaxInvocations sebagai1000, maka meningkat MaxConcurrency menjadi 2 akan mendukung 2000MaxInvocations. Perhatikan bahwa ini benar hanya sampai titik tertentu, yang dapat bervariasi berdasarkan model dan kode Anda. Rekomendasi tanpa server juga mengukur metrikModelSetupTime, yang mengukur (dalam mikrodetik) waktu yang diperlukan untuk meluncurkan sumber daya komputer pada titik akhir tanpa server. Untuk informasi selengkapnya tentang pengaturan titik akhir tanpa server, lihat dokumentasi Inferensi Tanpa Server.

AWS CLI

Setelah rekomendasi inferensi selesai, Anda dapat menggunakan describe-inference-recommendations-job untuk mendapatkan detail pekerjaan dan jenis instans yang direkomendasikan. Berikan nama pekerjaan yang Anda gunakan saat Anda membuat pekerjaan rekomendasi inferensi.

aws sagemaker describe-inference-recommendations-job\ --job-name <job-name>\ --region <aws-region>

JSONRespons serupa harus menyerupai contoh berikut. Perhatikan bahwa contoh ini menunjukkan jenis instance yang direkomendasikan untuk inferensi waktu nyata (untuk contoh yang menunjukkan rekomendasi inferensi tanpa server, lihat contoh setelah yang ini).

{ 'JobName': 'job-name', 'JobDescription': 'job-description', 'JobType': 'Default', 'JobArn': 'arn:aws:sagemaker:region:account-id:inference-recommendations-job/resource-id', 'Status': 'COMPLETED', 'CreationTime': datetime.datetime(2021, 10, 26, 20, 4, 57, 627000, tzinfo=tzlocal()), 'LastModifiedTime': datetime.datetime(2021, 10, 26, 20, 25, 1, 997000, tzinfo=tzlocal()), 'InputConfig': { 'ModelPackageVersionArn': 'arn:aws:sagemaker:region:account-id:model-package/resource-id', 'JobDurationInSeconds': 0 }, 'InferenceRecommendations': [{ 'Metrics': { 'CostPerHour': 0.20399999618530273, 'CostPerInference': 5.246913588052848e-06, 'MaximumInvocations': 648, 'ModelLatency': 263596 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.c5.xlarge', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }, { 'Metrics': { 'CostPerHour': 0.11500000208616257, 'CostPerInference': 2.92620870823157e-06, 'MaximumInvocations': 655, 'ModelLatency': 826019 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.c5d.large', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }, { 'Metrics': { 'CostPerHour': 0.11500000208616257, 'CostPerInference': 3.3625731248321244e-06, 'MaximumInvocations': 570, 'ModelLatency': 1085446 }, 'EndpointConfiguration': { 'EndpointName': 'endpoint-name', 'VariantName': 'variant-name', 'InstanceType': 'ml.m5.large', 'InitialInstanceCount': 1 }, 'ModelConfiguration': { 'Compiled': False, 'EnvironmentParameters': [] } }], 'ResponseMetadata': { 'RequestId': 'request-id', 'HTTPStatusCode': 200, 'HTTPHeaders': { 'x-amzn-requestid': 'x-amzn-requestid', 'content-type': 'content-type', 'content-length': '1685', 'date': 'Tue, 26 Oct 2021 20:31:10 GMT' }, 'RetryAttempts': 0 } }

Beberapa baris pertama memberikan informasi tentang pekerjaan rekomendasi inferensi itu sendiri. Ini termasuk nama pekerjaan, peranARN, pembuatan, dan waktu penghapusan.

InferenceRecommendationsKamus berisi daftar rekomendasi inferensi Inference Recommender.

Kamus EndpointConfiguration bersarang berisi rekomendasi instance type (InstanceType) bersama dengan titik akhir dan nama varian (model pembelajaran AWS mesin yang diterapkan) yang digunakan selama pekerjaan rekomendasi. Anda dapat menggunakan nama endpoint dan varian untuk pemantauan di Amazon CloudWatch Events. Untuk informasi selengkapnya, lihat Metrik untuk memantau Amazon SageMaker dengan Amazon CloudWatch.

Kamus Metrics bersarang berisi informasi tentang perkiraan biaya per jam (CostPerHour) untuk titik akhir real-time Anda dalam dolar AS, perkiraan biaya per inferensi (CostPerInference) dalam dolar AS untuk titik akhir waktu nyata Anda, jumlah maksimum yang diharapkan InvokeEndpoint permintaan per menit yang dikirim ke titik akhir (MaxInvocations), dan latensi model (ModelLatency), yang merupakan interval waktu (dalam milidetik) yang diambil model Anda untuk merespons. SageMaker Latensi model mencakup waktu komunikasi lokal yang diambil untuk mengirim permintaan dan untuk mengambil respons dari wadah model dan waktu yang dibutuhkan untuk menyelesaikan inferensi dalam wadah.

Contoh berikut menunjukkan InferenceRecommendations bagian dari respons untuk pekerjaan rekomendasi inferensi yang dikonfigurasi untuk mengembalikan rekomendasi inferensi tanpa server:

"InferenceRecommendations": [ { "EndpointConfiguration": { "EndpointName": "value", "InitialInstanceCount": value, "InstanceType": "value", "VariantName": "value", "ServerlessConfig": { "MaxConcurrency": value, "MemorySizeInMb": value } }, "InvocationEndTime": value, "InvocationStartTime": value, "Metrics": { "CostPerHour": value, "CostPerInference": value, "CpuUtilization": value, "MaxInvocations": value, "MemoryUtilization": value, "ModelLatency": value, "ModelSetupTime": value }, "ModelConfiguration": { "Compiled": "False", "EnvironmentParameters": [], "InferenceSpecificationName": "value" }, "RecommendationId": "value" } ]

Anda dapat menafsirkan rekomendasi untuk inferensi tanpa server mirip dengan hasil untuk inferensi waktu nyata, dengan pengecualianServerlessConfig, yang memberi tahu Anda metrik yang dikembalikan untuk titik akhir tanpa server dengan yang diberikan dan kapan. MemorySizeInMB MaxConcurrency = 1 Untuk meningkatkan throughput yang mungkin pada titik akhir, tingkatkan nilai linier. MaxConcurrency Misalnya, jika rekomendasi inferensi menunjukkan MaxInvocations sebagai1000, maka meningkat MaxConcurrency menjadi 2 akan mendukung 2000MaxInvocations. Perhatikan bahwa ini benar hanya sampai titik tertentu, yang dapat bervariasi berdasarkan model dan kode Anda. Rekomendasi tanpa server juga mengukur metrikModelSetupTime, yang mengukur (dalam mikrodetik) waktu yang diperlukan untuk meluncurkan sumber daya komputer pada titik akhir tanpa server. Untuk informasi selengkapnya tentang pengaturan titik akhir tanpa server, lihat dokumentasi Inferensi Tanpa Server.

Amazon SageMaker Studio Classic

Rekomendasi inferensi terisi di tab Rekomendasi Inferensi baru dalam Studio Classic. Diperlukan waktu hingga 45 menit agar hasilnya muncul. Tab ini berisi judul kolom Hasil dan Detail.

Kolom Detail memberikan informasi tentang pekerjaan rekomendasi inferensi, seperti nama rekomendasi inferensi, kapan pekerjaan dibuat (Waktu pembuatan), dan banyak lagi. Ini juga menyediakan informasi Pengaturan, seperti jumlah maksimum pemanggilan yang terjadi per menit dan informasi tentang Nama Sumber Daya Amazon yang digunakan.

Kolom Hasil menyediakan jendela sasaran dan SageMakerrekomendasi Deployment di mana Anda dapat menyesuaikan urutan hasil yang ditampilkan berdasarkan kepentingan penerapan. Ada tiga menu tarik-turun yang dapat Anda gunakan untuk memberikan tingkat kepentingan Biaya, Latensi, dan Throughput untuk kasus penggunaan Anda. Untuk setiap tujuan (biaya, latensi, dan throughput), Anda dapat menetapkan tingkat kepentingan: Kepentingan Terendah, Kepentingan Rendah, Kepentingan sedang, Kepentingan tinggi, atau Kepentingan tertinggi.

Berdasarkan pilihan penting Anda untuk setiap tujuan, Inference Recommender menampilkan rekomendasi teratasnya di bidang SageMakerrekomendasi di sebelah kanan panel, bersama dengan perkiraan biaya per jam dan permintaan inferensi. Ini juga memberikan informasi tentang latensi model yang diharapkan, jumlah maksimum pemanggilan, dan jumlah instance. Untuk rekomendasi tanpa server, Anda dapat melihat nilai ideal untuk konkurensi maksimum dan ukuran memori titik akhir.

Selain rekomendasi teratas yang ditampilkan, Anda juga dapat melihat informasi yang sama ditampilkan untuk semua instance yang diuji oleh Inference Recommender di bagian Semua berjalan.

SageMaker console

Anda dapat melihat pekerjaan rekomendasi instans di SageMaker konsol dengan melakukan hal berikut:

  1. Pergi ke SageMaker konsol di https://console.aws.amazon.com/sagemaker/.

  2. Di panel navigasi kiri, pilih Inferensi, lalu pilih Inference recommended.

  3. Pada halaman pekerjaan pemberi rekomendasi inferensi, pilih nama pekerjaan rekomendasi inferensi Anda.

Pada halaman detail untuk pekerjaan Anda, Anda dapat melihat rekomendasi Inferensi, yang merupakan jenis instance yang SageMaker direkomendasikan untuk model Anda, seperti yang ditunjukkan pada gambar berikut.

Tangkapan layar dari daftar rekomendasi inferensi di halaman detail pekerjaan di SageMaker konsol.

Di bagian ini, Anda dapat membandingkan jenis instans dengan berbagai faktor seperti latensi Model, Biaya per jam, Biaya per inferensi, dan Pemanggilan per menit.

Di halaman ini, Anda juga dapat melihat konfigurasi yang Anda tentukan untuk pekerjaan Anda. Di bagian Monitor, Anda dapat melihat CloudWatch metrik Amazon yang dicatat untuk setiap jenis instans. Untuk mempelajari lebih lanjut tentang menafsirkan metrik ini, lihat Menafsirkan hasil.

Untuk informasi lebih lanjut tentang menafsirkan hasil pekerjaan rekomendasi Anda, lihatHasil rekomendasi.