Erstellen Sie benutzerdefinierte Projektvorlagen - Amazon SageMaker KI

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Erstellen Sie benutzerdefinierte Projektvorlagen

Wichtig

Am 28. Oktober 2024 wurden die AWS CodeCommit Vorlagen entfernt. Wählen Sie für neue Projekte aus den verfügbaren Projektvorlagen aus, die Git-Repositorys von Drittanbietern verwenden. Weitere Informationen finden Sie unter MLOps Vorlagen für Projekte.

Wenn die von der SageMaker KI bereitgestellten Vorlagen nicht Ihren Anforderungen entsprechen (wenn Sie beispielsweise eine komplexere Orchestrierung CodePipeline mit mehreren Phasen oder benutzerdefinierten Genehmigungsschritten wünschen), erstellen Sie Ihre eigenen Vorlagen.

Wir empfehlen, zunächst von SageMaker KI bereitgestellte Vorlagen zu verwenden, um zu verstehen, wie Sie Ihren Code und Ihre Ressourcen organisieren und darauf aufbauen können. Melden Sie sich dazu, nachdem Sie den Administratorzugriff auf die SageMaker AI-Vorlagen aktiviert haben, bei der an https://console.aws.amazon.com/servicecatalog/, wählen Sie Portfolios und dann Importiert aus. Informationen zu Service Catalog finden Sie unter Service Catalog Übersicht des Service Catalog im Service Catalog-Benutzerhandbuch.

Erstellen Sie Ihre eigenen Projektvorlagen, um Ihr MLOps Projekt anzupassen. SageMaker KI-Projektvorlagen sind von Service Catalog bereitgestellte Produkte zur Bereitstellung der Ressourcen für Ihr Projekt. MLOps

Um eine benutzerdefinierte Projektvorlage zu erstellen, führen Sie die folgenden Schritte aus.

  1. Erstellen Sie ein Portfolio. Weitere Informationen finden Sie unter Schritt 3: Erstellen eines Service Catalog Portfolios.

  2. Erstellen Sie ein neues Produkt. Ein Produkt ist eine Vorlage. CloudFormation Sie können mehrere Versionen des Produkts erstellen. Weitere Informationen finden Sie unter Schritt 4: Ein Service Catalog-Produkt erstellen.

    Damit das Produkt mit SageMaker Projekten funktioniert, fügen Sie Ihrer Produktvorlage die folgenden Parameter hinzu.

    SageMakerProjectName: Type: String Description: Name of the project SageMakerProjectId: Type: String Description: Service generated Id of the project.
    Wichtig

    Wir empfehlen, das Repository in das CodeCommit SageMaker AI-Code-Repository einzubinden, damit die Projekt-Repositorys im VPC-Modus sichtbar sind. Die Beispielvorlage und der erforderliche Zusatz werden in den folgenden Codebeispielen gezeigt.

    Originalvorlage (Beispiel):

    ModelBuildCodeCommitRepository: Type: AWS::CodeCommit::Repository Properties: # Max allowed length: 100 chars RepositoryName: !Sub sagemaker-${SageMakerProjectName}-${SageMakerProjectId}-modelbuild # max: 10+33+15+10=68 RepositoryDescription: !Sub SageMaker Model building workflow infrastructure as code for the Project ${SageMakerProjectName} Code: S3: Bucket: SEEDCODE_BUCKETNAME Key: toolchain/model-building-workflow-v1.0.zip BranchName: main

    Zusätzliche Inhalte, die im VPC-Modus hinzugefügt werden können:

    SageMakerRepository: Type: AWS::SageMaker::CodeRepository Properties: GitConfig: RepositoryUrl: !GetAtt ModelBuildCodeCommitRepository.CloneUrlHttp Branch: main
  3. Fügen Sie eine Starteinschränkung hinzu. Eine Starteinschränkung legt eine IAM-Rolle fest, die der Service Catalog annimmt, wenn ein Endbenutzer ein Produkt startet. Weitere Informationen finden Sie unter Schritt 6: Hinzufügen einer Startbeschränkung, um eine IAM-Rolle zuzuweisen.

  4. Stellen Sie das Produkt bereit https://console.aws.amazon.com/servicecatalog/, um die Vorlage zu testen. Wenn Sie mit Ihrer Vorlage zufrieden sind, fahren Sie mit dem nächsten Schritt fort, um die Vorlage in Studio (oder Studio Classic) verfügbar zu machen.

  5. Gewähren Sie Ihrer Ausführungsrolle von Studio (oder Studio Classic) Zugriff auf das Service-Catalog-Portfolio, das Sie in Schritt 1 erstellt haben. Verwenden Sie entweder die Domainausführungsrolle oder eine Benutzerrolle mit Studio-Zugriff (oder Studio-Classic-Zugriff). Informationen zum Hinzufügen einer Rolle zum Portfolio finden Sie unter Schritt 7: Endbenutzern Zugriff auf das Portfolio gewähren.

  6. Um Ihre Projektvorlage in Ihrer Organisationsvorlagen-Liste in Studio (oder Studio Classic) verfügbar zu machen, erstellen Sie ein Tag mit dem folgenden Schlüssel und Wert für das Service-Catalog-Produkt, das Sie in Schritt 2 erstellt haben.

    • Schlüssel: sagemaker:studio-visibility

    • Wert: true

Nachdem Sie diese Schritte abgeschlossen haben, können Studio-Benutzer (oder Studio-Classic-Benutzer) in Ihrer Organisation ein Projekt mit der von Ihnen erstellten Vorlage erstellen, indem Sie die Schritte unter Erstellen Sie ein MLOps Projekt mit Amazon SageMaker Studio oder Studio Classic befolgen und Organisationsvorlagen auswählen, wenn Sie eine Vorlage auswählen.

Verwenden einer Vorlage aus einem Amazon S3 S3-Bucket

Sie können SageMaker Projekte auch mithilfe von Vorlagen erstellen, die in Amazon S3 gespeichert sind.

Anmerkung

Sie können zwar die Vorlagen in der verwendenAWS Service Catalog, wir empfehlen jedoch, Vorlagen in einem S3-Bucket zu speichern und Projekte mit diesen Vorlagen zu erstellen.

Admin-Setup

Bevor Sie Projekte mithilfe von Vorlagen in einem S3-Bucket erstellen können, führen Sie die folgenden Schritte aus.

  1. Erstellen Sie einen S3-Bucket und laden Sie Ihre Vorlagen in den Bucket hoch.

  2. Richten Sie eine CORS-Richtlinie für Ihren S3-Bucket ein, um Zugriffsberechtigungen zu konfigurieren.

  3. Fügen Sie der Vorlage das folgende Schlüssel-Wert-Tag hinzu, damit sie für KI sichtbar werden. SageMaker

    sagemaker:studio-visibility : true
  4. Erstellen Sie eine Domain.

  5. Nachdem SageMaker AI die Erstellung Ihrer Domain abgeschlossen hat, fügen Sie der Domain das folgende Key-Value-Tag hinzu:

    sagemaker:projectS3TemplatesLocation : s3://<amzn-s3-demo-bucket>

Verwenden Sie dann die AWS Konsolen-, Python- oder UpdateProjectAPI-Operationen, um ein SageMaker Projekt anhand von Vorlagen im S3-Bucket zu erstellen oder zu aktualisieren. CreateProject

Studio

Erstellen eines Projekts

  1. Öffnen Sie die Amazon SageMaker AI-Konsole unter https://console.aws.amazon.com/sagemaker/.

  2. Öffnen Sie die SageMaker Studio-Konsole, indem Sie den Anweisungen unter Amazon SageMaker Studio starten folgen.

  3. Wählen Sie im linken Navigationsbereich Bereitstellungen, Projekte, Projekt erstellen aus.

  4. Wählen Sie Organisationsvorlagen und dann S3-Vorlagen aus, um die Vorlagen zu sehen, die Ihnen zur Verfügung stehen. Wenn Sie keine Vorlage sehen, die Sie erwarten, benachrichtigen Sie Ihren Administrator.

  5. Wählen Sie die Vorlage aus, die Sie verwenden möchten, und klicken Sie dann auf Weiter.

  6. Geben Sie einen Namen für Ihr Projekt, eine optionale Beschreibung und die anderen erforderlichen Felder ein. Wählen Sie anschließend Erstellen aus.

Aktualisieren Sie ein Projekt

  1. Öffnen Sie die Amazon SageMaker AI-Konsole unter https://console.aws.amazon.com/sagemaker/.

  2. Öffnen Sie die SageMaker Studio-Konsole, indem Sie den Anweisungen unter Amazon SageMaker Studio starten folgen.

  3. Wählen Sie das Projekt aus, das Sie aktualisieren möchten. Wählen Sie „Aktionen“ und anschließend „Projekt aktualisieren“.

  4. Wenn Sie ein Projekt aktualisieren, können Sie die Vorlagenparameter oder die Vorlagen-URL aktualisieren. Wählen Sie abschließend Weiter.

  5. Sehen Sie sich die Projektaktualisierungen in der Übersichtstabelle an und wählen Sie Aktualisieren aus.

Python Boto3

Nachdem Sie den S3-Bucket erstellt und Ihre Vorlagen hochgeladen haben, können Sie das folgende Beispiel verwenden, um ein SageMaker Projekt zu erstellen.

sagemaker_client = boto3.client('sagemaker', region_name='us-west-2') response = sagemaker_client.create_project( ProjectName='my-custom-project', ProjectDescription='SageMaker project with custom CFN template stored in S3', TemplateProviders=[{ 'CfnTemplateProvider': { 'TemplateName': 'CustomProjectTemplate', 'TemplateURL': f'https://<bucket_name>.s3.us-west-2.amazonaws.com/custom-project-template.yml', 'Parameters': [ {'Key': 'ParameterKey', 'Value': 'ParameterValue'} ] } }] ) print(f"Project ARN: {response['ProjectArn']}")

Informationen zum Aktualisieren eines SageMaker Projekts finden Sie im folgenden Beispiel.

sagemaker_client = boto3.client('sagemaker', region_name='us-west-2') response = sagemaker_client.update_project( ProjectName='my-custom-project', ProjectDescription='SageMaker project with custom CFN template stored in S3', TemplateProvidersToUpdate=[{ 'CfnTemplateProvider': { 'TemplateName': 'CustomProjectTemplate', 'TemplateURL': f'https://<bucket_name>.s3.us-west-2.amazonaws.com/custom-project-template.yml', 'Parameters': [ {'Key': 'ParameterKey', 'Value': 'ParameterValue'} ] } }] ) print(f"Project ARN: {response['ProjectArn']}")