

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
<a name="sagemaker-projects-templates-custom"></a>

**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-Projektvorlagen](sagemaker-projects-templates.md).

Wenn die SageMaker AI-provided Vorlagen nicht Ihren Anforderungen entsprechen (Sie beispielsweise eine komplexere Orchestrierung CodePipeline mit mehreren Stufen oder benutzerdefinierten Genehmigungsschritten wünschen), erstellen Sie Ihre eigenen Vorlagen.

Wir empfehlen, zunächst SageMaker AI-provided 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 den an [ https://console.aws.amazon.com/servicecatalog/](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](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/what-is_concepts.html) im *Service Catalog-Benutzerhandbuch*.

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

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](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-portfolio.html).

1. 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](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-product.html).

   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 Repositorys des Projekts 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
   ```

1. 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](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-launchconstraint.html).

1. Stellen Sie das Produkt bereit [ https://console.aws.amazon.com/servicecatalog/](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.

1. 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](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-deploy.html).

1. 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](sagemaker-projects-create.md) befolgen und **Organisationsvorlagen** auswählen, wenn Sie eine Vorlage auswählen.

## Verwenden Sie eine Vorlage aus einem Amazon S3-Bucket
<a name="sagemaker-projects-templates-s3"></a>

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 verwenden AWS Service Catalog, wir empfehlen jedoch, Vorlagen in einem S3-Bucket zu speichern und Projekte mit diesen Vorlagen zu erstellen.

### Admin-Setup
<a name="sagemaker-projects-templates-s3-setup"></a>

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 ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/create-bucket-overview.html) und laden Sie Ihre Vorlagen in den Bucket hoch.

1. [Richten Sie eine CORS-Richtlinie in Ihrem S3-Bucket ein, um Zugriffsberechtigungen ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html) zu konfigurieren.

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

   ```
   sagemaker:studio-visibility : true
   ```

1. [Erstellen Sie eine Domain. ](https://docs.aws.amazon.com/sagemaker/latest/dg/onboard-quick-start.html)

1. 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 Konsole, Python oder die [ UpdateProject ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateProject.html) API-Operationen [ CreateProject ](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProject.html) und, um ein SageMaker Projekt anhand von Vorlagen im S3-Bucket zu erstellen oder zu aktualisieren.

------
#### [ Studio ]

**Erstellen eines Projekts**

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

1. Öffnen Sie die SageMaker Studio-Konsole, indem Sie den Anweisungen unter Amazon SageMaker Studio [ starten folgen](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html).

1. Wählen Sie im linken Navigationsbereich ** Deployments, ** Projects ****, ** Create project ** aus.

1. Wählen Sie ** Organisationsvorlagen ** und dann ** S3-Vorlagen**, um die Vorlagen anzuzeigen, die Ihnen zur Verfügung stehen. Wenn Sie eine Vorlage nicht sehen, die Sie erwarten, benachrichtigen Sie Ihren Administrator.

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

1. Geben Sie einen Namen für Ihr Projekt, eine optionale Beschreibung und die anderen Pflichtfelder 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/](https://console.aws.amazon.com/sagemaker/).

1. Öffnen Sie die SageMaker Studio-Konsole, indem Sie den Anweisungen unter Amazon SageMaker Studio [ starten folgen](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html).

1. Wählen Sie das Projekt aus, das Sie aktualisieren möchten. Wählen Sie „**Aktionen**“ und dann „Projekt ** aktualisieren“**.

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

1. **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']}")
```

Um ein SageMaker Projekt zu aktualisieren, sehen Sie sich das folgende Beispiel an.

```
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']}")
```

------