

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**  
Ab dem 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 (wenn Sie beispielsweise eine komplexere Orchestrierung CodePipeline mit mehreren Phasen 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 der 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 von Service Catalog 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 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
   ```

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 einer Vorlage aus einem Amazon S3 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 für Ihren S3-Bucket ein, um Zugriffsberechtigungen zu konfigurieren](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enabling-cors-examples.html).

1. Fügen Sie der Vorlage das folgende Schlüssel-Wert-Tag hinzu, damit sie für KI 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 Konsolen-, Python- oder [UpdateProject](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateProject.html)API-Operationen, um ein SageMaker Projekt anhand von Vorlagen im S3-Bucket zu erstellen oder zu aktualisieren. [CreateProject](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProject.html)

------
#### [ 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](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html) folgen.

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

1. 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.

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 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/](https://console.aws.amazon.com/sagemaker/).

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

1. Wählen Sie das Projekt aus, das Sie aktualisieren möchten. Wählen Sie „**Aktionen**“ und anschließend „**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']}")
```

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

------