Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Lacak rekomendasi inferensi dan hasil benchmark dengan MLFlow
Anda dapat melacak hasil rekomendasi dan benchmark pekerjaan Anda dengan MLFlow yang dikelola sepenuhnya di Amazon SageMaker AI. Saat Anda menyediakan konfigurasi MLFlow, SageMaker AI mencatat metrik kinerja dan artefak yang dihasilkan pekerjaan ke Aplikasi MLFlow. Anda kemudian dapat menggunakan UI MLFlow untuk melihat proses individual, membandingkan konfigurasi di seluruh pekerjaan, dan berbagi hasil dengan tim Anda. Untuk informasi selengkapnya tentang MLFlow di SageMaker AI, lihatMempercepat pengembangan AI generatif menggunakan MLFlow terkelola di Amazon AI SageMaker.
Pelacakan MLFlow bersifat opsional. Untuk mengaktifkannya, berikan konfigurasi MLFlow yang mereferensikan Aplikasi MLFlow saat Anda membuat pekerjaan.
Prasyarat
Sebelum Anda melacak hasil dengan MLFlow, Anda memerlukan yang berikut ini selain Prasyarat untuk pekerjaan rekomendasi atau benchmark:
-
Aplikasi MLFlow dalam keadaan operasional, Wilayah AWS sama dengan pekerjaan Anda. Untuk informasi tentang membuat Aplikasi MLFlow, lihatPengaturan Aplikasi MLFlow.
-
Peran eksekusi IAM (
RoleArnyang Anda berikan ke pekerjaan) dengan izin untuk mendeskripsikan Aplikasi MLFlow dan memanggil MLFlow REST API. Tambahkansagemaker:DescribeMlflowApptindakan dansagemaker-mlflowtindakan yang digunakan pekerjaan untuk log berjalan. Untuk informasi selengkapnya tentang izin MLFlow, lihat. Pengaturan Aplikasi MLFlow
Parameter konfigurasi MLFlow
Untuk melacak hasil, tambahkan MlflowConfig objek ke OutputConfig CreateAIBenchmarkJob permintaan CreateAIRecommendationJob atau permintaan Anda. MlflowConfigberisi bidang-bidang berikut:
MlflowResourceArn-
Wajib. Nama Sumber Daya Amazon (ARN) dari Aplikasi MLFlow untuk mencatat hasil, dalam format.
arn:aws:sagemaker:region:account-id:mlflow-app/app-id MlflowExperimentName-
Tidak wajib. Nama eksperimen MLFlow untuk mencatat proses di bawah. Jika eksperimen tidak ada, SageMaker AI membuatnya; jika sudah ada, SageMaker AI menggunakannya kembali, sehingga Anda dapat mengelompokkan lari dari beberapa pekerjaan di bawah satu percobaan dengan melewatkan nama yang sama.
MlflowRunName-
Tidak wajib. Nama proses MLFlow tingkat atas tempat hasil pekerjaan bersarang di bawahnya. Untuk mengelompokkan hasil beberapa pekerjaan di bawah satu putaran tingkat atas, berikan yang sama
MlflowRunNameke setiap pekerjaan.
Setiap job membuat run MLFlow tingkat atas, dengan turunan berjalan bersarang yang memecah hasil berdasarkan dimensi seperti target benchmark atau tipe instans, konfigurasi penerapan, dan tingkat konkurensi. Struktur ini memungkinkan Anda menelusuri pengukuran individual dan membandingkan konfigurasi di UI MLFlow.
MlflowConfigYang Anda berikan pada permintaan buat digaungkan kembali di Describe respons OutputConfig yang sesuai.
Lacak pekerjaan rekomendasi
Tambahkan MlflowConfig objek OutputConfig saat Anda membuat pekerjaan rekomendasi.
Python (boto3)
response = client.create_ai_recommendation_job( AIRecommendationJobName="my-recommendation-job", ModelSource={ "S3": { "S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/", } }, OutputConfig={ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-recommendation-experiment", "MlflowRunName": "my-recommendation-job-run", }, }, PerformanceTarget={ "Constraints": [ {"Metric": "ttft-ms"} ] }, AIWorkloadConfigIdentifier="my-recommendation-workload", RoleArn="arn:aws:iam::111122223333:role/ExampleRole", ) print(response["AIRecommendationJobArn"])
AWS CLI
aws sagemaker create-ai-recommendation-job \ --ai-recommendation-job-name "my-recommendation-job" \ --model-source '{"S3": {"S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/"}}' \ --output-config '{ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-recommendation-experiment", "MlflowRunName": "my-recommendation-job-run" } }' \ --performance-target '{"Constraints": [{"Metric": "ttft-ms"}]}' \ --ai-workload-config-identifier "my-recommendation-workload" \ --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \ --region us-west-2
Lacak pekerjaan benchmark
Tambahkan MlflowConfig objek OutputConfig saat Anda membuat pekerjaan benchmark.
Python (boto3)
response = client.create_ai_benchmark_job( AIBenchmarkJobName="my-benchmark-job", BenchmarkTarget={ "Endpoint": { "Identifier": "my-sagemaker-endpoint" } }, OutputConfig={ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-benchmark-experiment", "MlflowRunName": "my-benchmark-job-run", }, }, AIWorkloadConfigIdentifier="my-benchmark-config", RoleArn="arn:aws:iam::111122223333:role/ExampleRole", ) print(response["AIBenchmarkJobArn"])
AWS CLI
aws sagemaker create-ai-benchmark-job \ --ai-benchmark-job-name "my-benchmark-job" \ --benchmark-target '{"Endpoint": {"Identifier": "my-sagemaker-endpoint"}}' \ --output-config '{ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-benchmark-experiment", "MlflowRunName": "my-benchmark-job-run" } }' \ --ai-workload-config-identifier "my-benchmark-config" \ --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \ --region us-west-2
Lihat hasil dalam MLFlow
Setelah pekerjaan mencapai Completed status, buka UI MLFlow dari Aplikasi MLFlow untuk memeriksa proses yang dicatat. Untuk informasi selengkapnya tentang meluncurkan UI MLFlow, lihatLuncurkan UI MLFlow menggunakan URL yang telah ditetapkan sebelumnya.
Pada halaman Eksperimen, pilih eksperimen yang Anda tentukanMlflowExperimentName.
Tampilan Runs eksperimen menunjukkan proses tingkat atas yang berisi run per pekerjaan, yang diperluas menjadi run turunan untuk setiap jenis instance, konfigurasi penerapan, dan tingkat konkurensi. Pilih run untuk melihat parameter, metrik, dan artefaknya.