

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Ejemplos de configuración del constructo por etapas
<a name="model-registry-staging-construct-set-up"></a>

Para configurar las construcciones de etapas para su Amazon SageMaker Model Registry, el administrador tendrá que conceder los permisos pertinentes a las funciones previstas. A continuación, se proporcionan ejemplos de cómo configurar constructos por etapas para varios roles.

**nota**  
Los usuarios de un dominio de Amazon SageMaker AI podrán ver todas las etapas definidas en el dominio, pero solo podrán usar aquellas para las que tengan permisos.

Las etapas se definen con el parámetro `ModelLifeCycle` y tienen la siguiente estructura. El administrador configura los permisos para que los roles puedan acceder a `stage` y `stageStatus`. Los usuarios que asuman un rol pueden usar los `stage` y `stageStatus` correspondientes e incluir su propia `stageDescription`.

```
ModelLifeCycle {
    stage: String # Required (e.g., Development/QA/Production)
    stageStatus: String # Required (e.g., PendingApproval/Approved/Rejected)  
    stageDescription: String # Optional
}
```

La siguiente tabla contiene las plantillas de constructo por etapas predefinidas del registro de modelos. Puede definir sus propios constructos por etapas en función de sus casos de uso. Deberá configurar los permisos necesarios antes de que los usuarios puedan usarlos.


| Etapa | Estado de la etapa | 
| --- | --- | 
|  Propuesta  |  PendingApproval  | 
|  Desarrollo  |  InProgress  | 
|  QA  |  OnHold  | 
|  PreProduction  |  Approved  | 
|  Producción  |  Rechazada  | 
|  Archived  |  Retired  | 

El `ModelLifeCycle` parámetro se puede invocar de la siguiente manera APIs:
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html)

------
#### [ Policy for a data scientist role ]

El siguiente es un ejemplo de política de IAM que utiliza claves de condición del ciclo de vida del modelo. Puede modificarlos en función de sus propios requisitos. En este ejemplo, los permisos del rol se limitan a establecer o definir la etapa del ciclo de vida del modelo para:
+ Crear o actualizar un modelo con la etapa `"Development"` y el estado `"Approved"`.
+ Actualizar un paquete de modelos con el control de calidad de las etapas,`"QA"`, y el estado `"PendingApproval"`.

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage",
        "sagemaker:CreateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"       
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Staging"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"       
        }
    }
}
```

------
#### [ Policy for a quality assurance specialist ]

El siguiente es un ejemplo de política de IAM que utiliza claves de condición del ciclo de vida del modelo. Puede modificarlos en función de sus propios requisitos. En este ejemplo, los permisos del rol se limitan a establecer o definir la etapa del ciclo de vida del modelo para:
+ Actualizar un paquete de modelos con:
  + La etapa `"QA"` y el estado `"Approved"` o `"Rejected"`.
  + La etapa `"Production"` y el estado `"PendingApproval"`.

```
{
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Approved"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Rejected"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Production",
            "sagemaker:ModelLifeCycle:stageStatus": "PendingApproval"
        }
    }
}
```

------
#### [ Policy for lead engineer role ]

El siguiente es un ejemplo de política de IAM que utiliza claves de condición del ciclo de vida del modelo. Puede modificarlos en función de sus propios requisitos. En este ejemplo, los permisos del rol se limitan a establecer o definir la etapa del ciclo de vida del modelo para:
+ Actualizar un paquete de modelos con:
  + La etapa `"Production"` y el estado `"Approved"` o `"Rejected"`.
  + La etapa `"Development"` y el estado `"PendingApproval"`.

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "ForAnyvalue:StringEquals" : {
            "sagemaker:ModelLifeCycle:stage" : "Production",
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals:" {
            "sagemaker:ModelLifeCycle:stage" : "Production"
            "sagemaker:ModelLifeCycle:stageStatus" : "Rejected"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"
        }
    }
}
```

------

Para recibir EventBridge notificaciones de Amazon sobre cualquier actualización del estado de un modelo, consulta el ejemplo de[Reciba notificaciones de eventos para ModelLifeCycle](model-registry-staging-construct-event-bridge.md). Para ver un ejemplo de la EventBridge carga útil que podrías recibir, consulta[SageMaker cambio de estado del paquete modelo](automating-sagemaker-with-eventbridge.md#eventbridge-model-package).