AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

AWS hesaplarındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın

9 Ağustos 2022'de, hesaplar arası paylaşımın genel kullanıma sunulduğunu duyurduk: Amazon SageMaker Pipelines varlıkları. Artık hesaplar arası desteği aşağıdakiler için kullanabilirsiniz: Amazon SageMaker Ardışık Düzenleri AWS hesapları arasında işlem hattı varlıklarını paylaşmak ve paylaşılan işlem hatlarına doğrudan Amazon Adaçayı Yapıcı API çağrıları.

Müşteriler giderek daha fazla benimsiyor çoklu hesap mimarileri SageMaker Pipelines ile makine öğrenimi (ML) iş akışlarını dağıtmak ve yönetmek için. Bu, geliştirme veya deneme (geliştirme) hesaplarında iş akışları oluşturmayı, bunları bir test veya üretim öncesi (test) hesabında dağıtmayı ve test etmeyi ve son olarak bunları diğer iş süreçleriyle entegre olmak üzere üretim (üretim) hesaplarına yükseltmeyi içerir. Aşağıdaki kullanım örneklerinde SageMaker işlem hatlarının hesaplar arası paylaşımından yararlanabilirsiniz:

  • Veri bilimcileri bir geliştirici hesabında makine öğrenimi iş akışları oluşturduğunda, bu iş akışları daha sonra bir makine öğrenimi mühendisi tarafından SageMaker işlem hattı olarak özel bir test hesabına dağıtılır. Bu iş akışlarını daha fazla izlemek için veri bilimcileri artık test hesabında dağıtılan işlem hattına yönelik hesaplar arası salt okunur izne ihtiyaç duyuyor.
  • Bu ML iş akışlarının dağıtımını ve operasyonlarını paylaşılan bir hizmetler hesabından yöneten ML mühendisleri, ML yöneticileri ve uyumluluk ekiplerinin de test hesabında dağıtılan işlem hattının görünürlüğüne ihtiyacı vardır. Ayrıca bu makine öğrenimi iş akışlarını başlatmak, durdurmak ve yeniden denemek için ek izinlere de ihtiyaç duyabilirler.

Bu yazıda, SageMaker Pipelines ile ML iş akışlarını geliştirmek ve dağıtmak için örnek bir çoklu hesap mimarisi sunuyoruz.

Çözüme genel bakış

Çoklu hesap stratejisi, yazılım geliştirme yaşam döngüsü adımlarını desteklerken veri, proje ve ekip yalıtımı elde etmenize yardımcı olur. Hesaplar arası işlem hattı paylaşımı, çoklu hesap stratejisini destekler, birden fazla hesapta oturum açma ve kapatma yükünü ortadan kaldırır ve kaynakları doğrudan birden fazla hesap arasında paylaşarak makine öğrenimi testi ve dağıtım iş akışlarını iyileştirir.

Bu örnekte, SageMaker işlem hattının ilk gelişimi için özel bir geliştirme hesabı kullanan bir veri bilimi ekibimiz var. Bu işlem hattı daha sonra bir makine öğrenimi mühendisine devredilir ve o da sürekli entegrasyon ve sürekli teslimat (CI/CD) hattı Bu işlem hattını bir test hesabına dağıtmak için paylaşılan hizmetler hesabında. Dağıtılan işlem hattını ilgili geliştirme ve paylaşılan hizmet hesaplarından izlemeye ve kontrol etmeye devam edebilmek için, kaynak paylaşımları ile kurulur AWS Kaynak Erişim Yöneticisi test ve geliştirici hesaplarında. Bu kurulumla, makine öğrenimi mühendisi ve veri bilimcisi artık aşağıdaki şekilde gösterildiği gibi geliştirme ve test hesaplarındaki işlem hatlarını ilgili hesaplarından izleyebilir ve kontrol edebilir.

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

İş akışında veri bilimcisi ve makine öğrenimi mühendisi aşağıdaki adımları gerçekleştirir:

  1. Veri bilimcisi (DS), geliştirici hesabında bir model hattı oluşturur.
  2. ML mühendisi (MLE) model hattını üretir ve bir boru hattı oluşturur (bu yazı için buna diyoruz) sagemaker-pipeline).
  3. sagemaker-pipeline kod bir taahhütte bulunulmuştur AWS CodeCommit paylaşılan hizmetler hesabındaki depo.
  4. Veri bilimci, aşağıdakiler için bir AWS RAM kaynak paylaşımı oluşturur: sagemaker-pipeline ve kaynak paylaşımını kabul eden paylaşılan hizmetler hesabıyla paylaşır.
  5. ML mühendisleri artık paylaşılan hizmetler hesabından geliştirici hesabındaki ardışık düzen çalıştırmalarını aşağıdakileri kullanarak tanımlayabilir, izleyebilir ve yönetebilir: SageMaker API çağrıları.
  6. Paylaşılan hizmet hesabında tetiklenen bir CI/CD işlem hattı, aşağıdakileri kullanarak kodu oluşturur ve test hesabına dağıtır: AWS Kod Ardışık Düzeni.
  7. CI/CD ardışık düzeni oluşturur ve çalıştırır sagemaker-pipeline deneme hesabında.
  8. Koşu sonrası sagemaker-pipeline test hesabında CI/CD işlem hattı aşağıdakiler için bir kaynak paylaşımı oluşturur: sagemaker-pipeline deneme hesabında.
  9. Testten bir kaynak paylaşımı sagemaker-pipeline kaynak paylaşımını kabul eden geliştirici hesabıyla salt okunur izinlere sahip bir dosya oluşturulur.
  10. Veri bilimci artık geliştirici hesabından SageMaker API çağrılarını kullanarak test hattı çalıştırma durumunu tanımlayabiliyor ve izleyebiliyor.
  11. Testten bir kaynak paylaşımı sagemaker-pipeline Kaynak paylaşımını kabul eden paylaşılan hizmetler hesabıyla genişletilmiş izinlere sahip bir hesap oluşturulur.
  12. ML mühendisi artık paylaşılan hizmetler hesabından SageMaker API çağrılarını kullanarak test hattı çalıştırmasını tanımlayabilir, izleyebilir ve yönetebilir.

Aşağıdaki bölümlerde daha fazla ayrıntıya gireceğiz ve SageMaker işlem hatları için hesaplar arası paylaşımın nasıl kurulacağına ilişkin bir gösteri sunacağız.

Hesaplar arasında SageMaker işlem hatları nasıl oluşturulur ve paylaşılır

Bu bölümde, AWS RAM ve SageMaker API'yi kullanarak hesaplar arasında işlem hatları oluşturmak ve paylaşmak için gerekli adımları açıklıyoruz.

ortamı kurun

İlk olarak, SageMaker işlem hatlarının hesaplar arası paylaşımını göstermek için çok hesaplı bir ortam kurmamız gerekiyor:

  1. İki AWS hesabı oluşturun (geliştirme ve test). Bunu bir kuruluşun üye hesapları veya bağımsız hesaplar olarak ayarlayabilirsiniz.
  2. Hesaplarınızı bir kuruluşun üyesi olarak kuruyorsanız şunları etkinleştirebilirsiniz: kuruluşunuzla kaynak paylaşımı. Bu ayarla, kuruluşunuzda kaynakları paylaştığınızda AWS RAM sorumlulara davet göndermez. Kuruluşunuzdaki müdürler, davet alışverişinde bulunmadan paylaşılan kaynaklara erişim kazanır.
  3. Test hesabında başlatın Amazon SageMaker Stüdyosu ve not defterini çalıştır eğitme-kayıt-dağıtma-boru hattı modeli. Bu, test hesabınızda örnek bir işlem hattı oluşturur. Gösterimi basitleştirmek amacıyla işlem hattını başlatmak için test hesabında SageMaker Studio'yu kullanıyoruz. Gerçek hayattaki projeler için Studio'yu yalnızca geliştirici hesabında kullanmalı ve CI/CD araçlarınızı kullanarak test hesabında SageMaker Pipeline'ı başlatmalısınız.

Bu işlem hattını geliştirici hesabıyla paylaşmak için sonraki bölümdeki talimatları izleyin.

İşlem hattı kaynak paylaşımı ayarlama

İşlem hattınızı geliştirici hesabıyla paylaşmak için aşağıdaki adımları tamamlayın:

  1. AWS RAM konsolunda seçin Kaynak paylaşımı oluştur.
  2. İçin Kaynak türünü seçin, seçmek SageMaker Boru Hatları.
  3. Önceki adımda oluşturduğunuz ardışık düzeni seçin.
  4. Klinik Sonraki.
  5. İçin İzinler, ilişkili izinlerinizi seçin.
  6. Klinik Sonraki.
    AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.Daha sonra, sorumlulara nasıl erişim izni vermek istediğinize karar verirsiniz.
  7. İşlem hattını yalnızca kuruluş hesaplarınız içinde paylaşmanız gerekiyorsa Yalnızca kuruluşunuz içinde Paylaşıma izin verin; aksi halde seçin Herkesle paylaşıma izin ver.
  8. İçin müdürler, ana türünüzü seçin (paylaşım gereksiniminize bağlı olarak bir AWS hesabı, kuruluşu veya kuruluş birimi kullanabilirsiniz). Bu gönderiyi AWS hesap düzeyindeki herkesle paylaşıyoruz.
  9. Asıl kimliğinizi seçin.
  10. Klinik Sonraki.
    AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.
  11. Üzerinde İnceleyin ve oluşturun sayfasında bilgilerinizin doğru olduğunu doğrulayın ve Kaynak paylaşımı oluştur.
    AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.
  12. Hedef hesabınıza gidin (bu gönderi için geliştirici hesabınız).
  13. AWS RAM konsolunda, altında Benimle paylaştı gezinme bölmesinde öğesini seçin. Kaynak paylaşımları.
  14. Kaynak paylaşımınızı seçin ve Kaynak paylaşımını kabul edin.
    AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

Kaynak paylaşım izinleri

Kaynak paylaşımınızı oluştururken SageMaker ardışık düzen kaynak türüyle ilişkilendirmek için desteklenen iki izin ilkesinden birini seçebilirsiniz. Her iki politika da seçilen herhangi bir ardışık düzene ve onun tüm çalıştırmalarına erişim sağlar.

The AWSRAMDefaultPermissionSageMakerPipeline politika aşağıdaki salt okunur eylemlere izin verir:

"sagemaker:DescribePipeline"
"sagemaker:DescribePipelineDefinitionForExecution"
"sagemaker:DescribePipelineExecution"
"sagemaker:ListPipelineExecutions"
"sagemaker:ListPipelineExecutionSteps"
"sagemaker:ListPipelineParametersForExecution"
"sagemaker:Search"

The AWSRAMPermissionSageMakerPipelineAllowExecution İlke, varsayılan ilkedeki tüm salt okunur izinleri içerir ve ayrıca paylaşılan hesapların işlem hattı çalıştırmalarını başlatmasına, durdurmasına ve yeniden denemesine olanak tanır.

Genişletilmiş ardışık düzen çalıştırma izni ilkesi aşağıdaki eylemlere izin verir:

"sagemaker:DescribePipeline"
"sagemaker:DescribePipelineDefinitionForExecution"
"sagemaker:DescribePipelineExecution"
"sagemaker:ListPipelineExecutions"
"sagemaker:ListPipelineExecutionSteps"
"sagemaker:ListPipelineParametersForExecution"
"sagemaker:StartPipelineExecution"
"sagemaker:StopPipelineExecution"
"sagemaker:RetryPipelineExecution"
"sagemaker:Search"

Doğrudan API çağrıları aracılığıyla paylaşılan işlem hattı varlıklarına erişme

Bu bölümde, sizinle paylaşılan uzak hesaplarda çalışan işlem hatlarını görünür kılmak için çeşitli SageMaker Pipeline API çağrılarını nasıl kullanabileceğinizi açıklıyoruz. API'leri geliştirici hesabından test hesabında çalışan işlem hattına göre test etmek için geliştirici hesabında oturum açın ve şunu kullanın: AWS BulutKabuğu.

Hesaplar arası SageMaker Pipeline API çağrıları için, ardışık düzen kimliği olarak her zaman ardışık düzen ARN'nizi kullanmanız gerekir. Bu aynı zamanda işlem hattı adı olarak işlem hattı ARN'nizi kullanmanız gereken işlem hattı adını gerektiren komutları da içerir.

Ardışık düzen ARN'nizi almak için test hesabınızda Studio'daki ardışık düzen ayrıntılarınıza şu adresten gidin: SageMaker Kaynakları.

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

Klinik Boru Hatları kaynaklar listenizde.

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

Boru hattınızı seçin ve boru hattınıza gidin Ayarlar sekmesi. ARN boru hattını şu adreste bulabilirsiniz: Metadata bilgi. Bu örnekte ARN'niz şu şekilde tanımlanır: "arn:aws:sagemaker:us-east-1:<account-id>:pipeline/serial-inference-pipeline".

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.

PipelineExecutions'ı Listele

Bu API çağrısı koşuları listeler boru hattınızın. Değiştirerek aşağıdaki komutu çalıştırın $SHARED_PIPELINE_ARN CloudShell'den ardışık düzen ARN'nizle veya AWS Komut Satırı Arayüzü (AWS CLI) uygun şekilde yapılandırıldı AWS Kimlik ve Erişim Yönetimi (BEN) rol:

aws sagemaker list-pipeline-executions --pipeline-name $SHARED_PIPELINE_ARN

Yanıt, işlem hattınızın tüm çalıştırmalarını kendileriyle birlikte listeler. PipelineExecutionArn, StartTime, PipelineExecutionStatus, ve PipelineExecutionDisplayName:

{
  "PipelineExecutionSummaries": [
    {
      "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>",
      "StartTime": "2022-08-10T11:32:05.543000+00:00",
      "PipelineExecutionStatus": "Executing",
      "PipelineExecutionDisplayName": "execution-321"
    },
    {
      "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>",
      "StartTime": "2022-08-10T11:28:03.680000+00:00",
      "PipelineExecutionStatus": "Stopped",
      "PipelineExecutionDisplayName": "test"
    },
    {
      "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>",
      "StartTime": "2022-08-10T11:03:47.406000+00:00",
      "PipelineExecutionStatus": "Succeeded",
      "PipelineExecutionDisplayName": "execution-123"
    }
  ]
}

AçıklamaBoru Hattı

Bu API çağrısı detayı anlatıyor boru hattınızın. Değiştirerek aşağıdaki komutu çalıştırın $SHARED_PIPELINE_ARN boru hattınız ARN ile:

aws sagemaker describe-pipeline --pipeline-name $SHARED_PIPELINE_ARN

Yanıt, işlem hattınızın meta verilerinin yanı sıra bunun oluşturulması ve değiştirilmesiyle ilgili bilgileri sağlar:

Output(truncated): 
{
"PipelineArn": "arn:aws:sagemaker:<region>:<account-id>:pipeline/<pipeline_name>",
"PipelineName": "serial-inference-pipeline",
"PipelineDisplayName": "serial-inference-pipeline",
"PipelineDefinition": "{"Version": "2020-12-01", "Metadata": {}, "Parameters": [{"Name": "TrainingInstanceType", "Type": "String", "DefaultValue": "ml.m5.xlarge"}, {"Name": "ProcessingInstanceType", "Type": "String", "DefaultValue": "ml.m5.xlarge"}, {"Name": "ProcessingInstanceCount", "Type": "Integer", "DefaultValue": 1}, {"Name": "InputData", "Type":

..

"PipelineStatus": "Active",
"CreationTime": "2022-08-08T21:33:39.159000+00:00",
"LastModifiedTime": "2022-08-08T21:48:14.274000+00:00",
"CreatedBy": {},
"LastModifiedBy": {}
}

PipelineExecution'ı Tanımlayın

Bu API çağrısı detayı anlatıyor boru hattı çalıştırmanızın. Değiştirerek aşağıdaki komutu çalıştırın $SHARED_PIPELINE_ARN boru hattınız ARN ile:

aws sagemaker describe-pipeline-execution 
--pipeline-execution-arn $PIPELINE_EXECUTION_ARN

Yanıt, satış hattı çalıştırmanız hakkında aşağıdakiler de dahil olmak üzere ayrıntılar sağlar: PipelineExecutionStatus, ExperimentName, ve TrialName:

{
  "PipelineArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>",
  "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>",
  "PipelineExecutionDisplayName": "execution-123",
  "PipelineExecutionStatus": "Succeeded",
  "PipelineExperimentConfig": {
  "ExperimentName": "<pipeline_name>",
  "TrialName": "<execution_id>"
},
  "CreationTime": "2022-08-10T11:03:47.406000+00:00",
  "LastModifiedTime": "2022-08-10T11:15:01.102000+00:00",
  "CreatedBy": {},
  "LastModifiedBy": {}
}

StartPipelineExecution

Bu API çağrısı başlar bir boru hattı çalışması. Değiştirerek aşağıdaki komutu çalıştırın $SHARED_PIPELINE_ARN boru hattınız ARN ile ve $CLIENT_REQUEST_TOKEN bu çalıştırma için oluşturduğunuz benzersiz, büyük/küçük harfe duyarlı bir tanımlayıcıyla. Tanımlayıcının 32-128 karakter arasında olması gerekir. Örneğin, kullanarak bir dize oluşturabilirsiniz. AWS CLI kms rastgele oluşturma komutu.

aws sagemaker start-pipeline-execution 
  --pipeline-name $SHARED_PIPELINE_ARN 
  --client-request-token $CLIENT_REQUEST_TOKEN

Yanıt olarak bu API çağrısı şunu döndürür: PipelineExecutionArn başlatılan çalıştırmanın sayısı:

{
  "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>"
}

PipelineExecution'ı Durdur

Bu API çağrısı durur bir boru hattı çalışması. Değiştirerek aşağıdaki komutu çalıştırın $PIPELINE_EXECUTION_ARN çalışan boru hattınızın boru hattı çalıştırması ARN'si ile ve $CLIENT_REQUEST_TOKEN Bu çalıştırma için oluşturduğunuz benzersiz, büyük/küçük harfe duyarlı bir tanımlayıcıyla. Tanımlayıcının 32-128 karakter arasında olması gerekir. Örneğin, kullanarak bir dize oluşturabilirsiniz. AWS CLI kms rastgele oluşturma komutu.

aws sagemaker stop-pipeline-execution 
  --pipeline-execution-arn $PIPELINE_EXECUTION_ARN 
  --client-request-token $CLIENT_REQUEST_TOKEN

Yanıt olarak bu API çağrısı şunu döndürür: PipelineExecutionArn durdurulan boru hattının:

{
  "PipelineExecutionArn": "arn:aws:sagemaker:<region>:<account_id>:pipeline/<pipeline_name>/execution/<execution_id>"
}

Sonuç

SageMaker işlem hatlarının hesaplar arası paylaşımı, işlem hattı varlıklarını AWS hesapları arasında güvenli bir şekilde paylaşmanıza ve birden fazla hesapta oturum açıp kapatmanıza gerek kalmadan doğrudan API çağrıları aracılığıyla paylaşılan işlem hatlarına erişmenize olanak tanır.

Bu yazıda, işlem hatlarını hesaplar arasında nasıl paylaşabileceğinizi ve bunlara SageMaker API çağrıları aracılığıyla nasıl erişebileceğinizi gösteren işlevselliğe ayrıntılı olarak değindik.

Bir sonraki adım olarak bu özelliği bir sonraki ML projeniz için kullanabilirsiniz.

Kaynaklar

SageMaker İşlem Hatlarını kullanmaya başlamak ve işlem hatlarını hesaplar arasında paylaşmak için aşağıdaki kaynaklara bakın:


yazarlar hakkında

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.Ram Hayati AWS'de ML Uzman Çözüm Mimarıdır. Dağıtılmış, hibrit ve bulut uygulamaları tasarlama ve oluşturma konusunda 20 yılı aşkın deneyime sahiptir. Kurumsal müşterilere iş sonuçlarını iyileştirmek için bulut benimseme ve optimizasyon yolculuklarında yardımcı olmak için güvenli ve ölçeklenebilir AI/ML ve büyük veri çözümleri oluşturma konusunda tutkulu. Boş zamanlarında tenis, fotoğrafçılık ve aksiyon filmleriyle ilgileniyor.

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.Maira Ladeira Tankı AWS'de ML Uzman Çözüm Mimarıdır. Veri biliminde bir geçmişe sahip olarak, farklı sektörlerdeki müşterilerle ML uygulamaları tasarlama ve oluşturma konusunda 9 yıllık deneyime sahiptir. Teknik bir lider olarak, müşterilerin gelişen teknolojiler ve yenilikçi çözümler aracılığıyla iş değerine ulaşmalarını hızlandırmalarına yardımcı olur. Maira boş zamanlarında seyahat etmekten ve ailesiyle sıcak bir yerde vakit geçirmekten hoşlanır.

AWS hesapları arasındaki işlem hatlarını görüntülemek veya yönetmek için Amazon SageMaker işlem hattı paylaşımını kullanın PlatoBlockchain Data Intelligence. Dikey Arama. Ai.Gabriel Zylka AWS'de Profesyonel Hizmetler Danışmanıdır. Bulutu benimseme yolculuklarını hızlandırmak için müşterilerle yakın işbirliği içinde çalışıyor. MLOps alanında uzmanlaşmış olup, uçtan uca makine öğrenimi yaşam döngülerini otomatikleştirerek ve istenen iş sonuçlarının elde edilmesine yardımcı olarak makine öğrenimi iş yüklerini üretmeye odaklanmaktadır. Boş zamanlarında Bavyera Alpleri'nde seyahat etmekten ve yürüyüş yapmaktan hoşlanıyor.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi