

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.

# Etiquetado de un modelo
<a name="tm-tagging-model"></a>

Puede usar etiquetas para identificar, organizar, buscar y filtrar sus modelos de Etiquetas personalizadas de Amazon Rekognition. Cada etiqueta es una marca que consta de una clave y un valor definidos por el usuario. Por ejemplo, para determinar cómo se facturan los modelos, etiquételos con una clave de `Cost center` y agregue el número de centro de costes correspondiente como valor. Para obtener más información, consulte [Etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html).

Utilice las etiquetas para:
+ Llevar un control de la facturación de un modelo mediante etiquetas de asignación de costes. Para obtener más información, consulte [Uso de etiquetas de asignación de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html).
+ Acceso de control de un modelo mediante Identity and Access Management (IAM) Para obtener más información, consulte [Control de acceso a recursos de AWS mediante etiquetas de recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_tags.html).
+ Automatice la gestión de modelos. Por ejemplo, puede ejecutar scripts automatizados de inicio o detención que desactivan modelos de desarrollo durante las horas no laborables para reducir costes. Para obtener más información, consulte [Ejecución de un modelo de Etiquetas personalizadas de Amazon Rekognition](running-model.md). 

Puede etiquetar modelos mediante la consola Amazon Rekognition o mediante la. AWS SDKs 

**Topics**
+ [Etiquetado de modelos (consola)](#tm-tagging-model-console)
+ [Visualización de etiquetas de modelos](#tm-tagging-model-viewing-console)
+ [Etiquetado de modelos (SDK)](#tm-tagging-model-sdk)

## Etiquetado de modelos (consola)
<a name="tm-tagging-model-console"></a>

Puede usar la consola de Rekognition para agregar etiquetas a los modelos, ver las etiquetas asociadas a un modelo y eliminar etiquetas. 

### Cómo agregar y eliminar etiquetas
<a name="tm-tagging-model-add-remove-console"></a>

Este procedimiento explica cómo agregar o eliminar etiquetas en un modelo existente. También puede añadir etiquetas a un nuevo modelo cuando esté entrenado. Para obtener más información, consulte [Entrenamiento de un modelo de Etiquetas personalizadas de Amazon Rekognition](training-model.md). 

**Cómo agregar o eliminar etiquetas en un modelo existente mediante la consola**

1. Abra la consola Amazon Rekognition en. [ https://console.aws.amazon.com/rekognition/]( https://console.aws.amazon.com/rekognition/)

1. Elija **Comenzar**. 

1. En el panel de navegación, elija **Proyectos**.

1. En la página **Proyectos**, elija el proyecto que contiene el modelo que quiera etiquetar.

1. En el panel de navegación, en el proyecto seleccionado anteriormente, elija **Modelos**.

1. En la sección **Modelos**, elija el modelo al que desee añadir una etiqueta. 

1. En la página de detalles del modelo, elija la pestaña **Etiquetas**. 

1. En la sección **Etiquetas**, elija **Administrar etiquetas**.

1. En la página **Agregar etiquetas**, elija **Siguiente**.

1. Introduzca una clave y un valor.

   1. En **Clave**, escriba el nombre de la clave.

   1. En **Valor**, introduzca un valor.

1. Para añadir más etiquetas, repita los pasos 9 y 10.

1. (Opcional) Para eliminar una etiqueta, elija **Eliminar** junto a la etiqueta correspondiente. Si va a eliminar una etiqueta guardada anteriormente, se eliminará al guardar los cambios. 

1. Elija **Guardar cambios** para guardar los cambios.

## Visualización de etiquetas de modelos
<a name="tm-tagging-model-viewing-console"></a>

Puede utilizar la consola de Amazon Rekognition para ver las etiquetas asociadas a un modelo.

Para ver las etiquetas asociadas a *todos los modelos de un proyecto*, debe usar el AWS SDK. Para obtener más información, consulte [Listado de etiquetas de modelos](#listing-model-tags-sdk).

**Para ver las etiquetas asociadas a un modelo**

1. Abra la consola Amazon Rekognition en. [ https://console.aws.amazon.com/rekognition/]( https://console.aws.amazon.com/rekognition/)

1. Elija **Comenzar**. 

1. En el panel de navegación, elija **Proyectos**.

1. En la página **Proyectos**, elija el proyecto que contiene el modelo cuya etiqueta quiera ver.

1. En el panel de navegación, en el proyecto seleccionado anteriormente, elija **Modelos**.

1. En la sección **Modelos**, elija el modelo cuya etiqueta quiera ver. 

1. En la página de detalles del modelo, elija la pestaña **Etiquetas**. Las etiquetas aparecerán en la sección **Etiquetas**.

## Etiquetado de modelos (SDK)
<a name="tm-tagging-model-sdk"></a>

Puede usar el SDK para: AWS 
+ Añadir etiquetas a un nuevo modelo
+ Añadir etiquetas a un modelo existente
+ Ver las etiquetas asociadas a un modelo 
+ Eliminar etiquetas de un modelo 

Las etiquetas de los siguientes AWS CLI ejemplos tienen el siguiente formato.

```
--tags '{"{{key1}}":"{{value1}}","{{key2}}":"{{value2}}"}' 
```

También puede utilizar este formato.

```
--tags {{key1}}={{value1}},{{key2}}={{value2}}
```

Si no ha instalado el AWS CLI, consulte[Paso 4: Configure el AWS CLI and AWS SDK](su-awscli-sdk.md).

### Cómo agregar etiquetas a un nuevo modelo
<a name="tagging-new-model-sdk"></a>

Puede añadir etiquetas a un modelo al crearlo mediante la [CreateProjectVersion](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProjectVersion.html)operación. Indique una o varias etiquetas en el parámetro de entrada `Tags` de la matriz. 

```
aws rekognition create-project-version --project-arn {{project arn}} \
  --version-name {{version_name}} \
  --output-config '{ "S3Location": { "Bucket": "{{output bucket}}", "Prefix":  "{{output folder}}" } }' \
  --tags '{"{{key1}}":"{{value1}}","{{key2}}":"{{value2}}"}' \
  --profile custom-labels-access
```

Para obtener información sobre cómo crear y entrenar un modelo, consulte [Entrenamiento de un modelo (SDK)](training-model.md#tm-sdk).

### Cómo agregar etiquetas a un modelo existente
<a name="tagging-new-model-sdk"></a>

Para añadir una o más etiquetas a un modelo existente, utilice la [TagResource](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_TagResource)operación. Indique el nombre de recurso de Amazon (ARN) del modelo (`ResourceArn`) y las etiquetas (`Tags`) que desea agregar. En el siguiente ejemplo se ve cómo agregar dos etiquetas.

```
aws rekognition tag-resource --resource-arn {{resource-arn}} \
  --tags '{"{{key1}}":"{{value1}}","{{key2}}":"{{value2}}"}' \
  --profile custom-labels-access
```

Puede obtener el ARN de un modelo llamando. [CreateProjectVersion](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_CreateProjectVersion)

### Listado de etiquetas de modelos
<a name="listing-model-tags-sdk"></a>

Para enumerar las etiquetas adjuntas a un modelo, utilice la [ListTagsForResource](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_ListTagsForResource)operación y especifique el ARN del modelo ()`ResourceArn`. El resultado será la asignación de las claves y los valores de las etiquetas que se asocian al modelo concreto.

```
aws rekognition list-tags-for-resource --resource-arn {{resource-arn}} \
  --profile custom-labels-access
```

Este resultado se verá en forma de lista de las etiquetas asociadas al modelo.

```
{
    "Tags": {
        "Dept": "Engineering",
        "Name": "Ana Silva Carolina",
        "Role": "Developer"
    }
}
```

Para ver qué modelos de un proyecto tienen una etiqueta específica, llame a `DescribeProjectVersions` para obtener una lista de modelos. A continuación, llame a `ListTagsForResource` para cada modelo en la respuesta a través de `DescribeProjectVersions`. Revise la respuesta de `ListTagsForResource` para ver si está la etiqueta necesaria. 

En el siguiente ejemplo de Python 3, se indica cómo buscar en todos sus proyectos una clave y un valor de etiqueta específicos. El resultado incluye el ARN del proyecto y el ARN del modelo, donde hay una clave coincidente.

**Cómo buscar un valor de etiqueta**

1. Guarde el siguiente código en un archivo denominado `find_tag.py`.

   ```
   # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
   # SPDX-License-Identifier: Apache-2.0
   """
   Purpose
   Shows how to find a tag value that's associated with models within
   your Amazon Rekognition Custom Labels projects.
   """
   import logging
   import argparse
   import boto3
   
   from botocore.exceptions import ClientError
   
   
   logger = logging.getLogger(__name__)
   
   
   def find_tag_in_projects(rekognition_client, key, value):
       """
       Finds Amazon Rekognition Custom Label models tagged with the supplied key and key value.
       :param rekognition_client: An Amazon Rekognition boto3 client.
       :param key: The tag key to find.
       :param value: The value of the tag that you want to find.
       return: A list of matching model versions (and model projects) that were found.
       """
       try:
   
           found_tags = []
           found = False
   
           projects = rekognition_client.describe_projects()
           # Iterate through each project and models within a project.
           for project in projects["ProjectDescriptions"]:
               logger.info("Searching project: %s ...", project["ProjectArn"])
   
               models = rekognition_client.describe_project_versions(
                   ProjectArn=(project["ProjectArn"])
               )
   
               for model in models["ProjectVersionDescriptions"]:
                   logger.info("Searching model %s", model["ProjectVersionArn"])
   
                   tags = rekognition_client.list_tags_for_resource(
                       ResourceArn=model["ProjectVersionArn"]
                   )
   
                   logger.info(
                       "\tSearching model: %s for tag: %s value: %s.",
                       model["ProjectVersionArn"],
                       key,
                       value,
                   )
                   # Check if tag exists.
   
                   if key in tags["Tags"]:
                       if tags["Tags"][key] == value:
                           found = True
                           logger.info(
                               "\t\tMATCH: Project: %s: model version %s",
                               project["ProjectArn"],
                               model["ProjectVersionArn"],
                           )
                           found_tags.append(
                               {
                                   "Project": project["ProjectArn"],
                                   "ModelVersion": model["ProjectVersionArn"],
                               }
                           )
   
           if found is False:
               logger.info("No match for Tag %s with value %s.", key, value)
           return found_tags
       except ClientError as err:
           logger.info("Problem finding tags: %s. ", format(err))
           raise
   
   
   def main():
       """
       Entry point for example.
       """
       logging.basicConfig(level=logging.INFO,
                           format="%(levelname)s: %(message)s")
   
       # Set up command line arguments.
       parser = argparse.ArgumentParser(usage=argparse.SUPPRESS)
   
       parser.add_argument("tag", help="The tag that you want to find.")
       parser.add_argument("value", help="The tag value that you want to find.")
   
       args = parser.parse_args()
       key = args.tag
       value = args.value
   
       print(f"Searching your models for tag: {key} with value: {value}.")
   
   
       session = boto3.Session(profile_name='custom-labels-access')
       rekognition_client = session.client("rekognition")
   
       # Get tagged models for all projects.
       tagged_models = find_tag_in_projects(rekognition_client, key, value)
   
       print("Matched models\n--------------")
       if len(tagged_models) > 0:
           for model in tagged_models:
               print(
                   "Project: {project}\nModel version: {version}\n".format(
                       project=model["Project"], version=model["ModelVersion"]
                   )
               )
   
       else:
           print("No matches found.")
   
       print("Done.")
   
   
   if __name__ == "__main__":
       main()
   ```

1. En el símbolo del sistema, escriba lo siguiente. Sustituya {{key}} y {{value}} por el nombre de la clave y el valor de la clave que desee buscar.

   ```
   python find_tag.py {{key}} {{value}}
   ```

### Eliminación de etiquetas de un modelo
<a name="tm-removing-a-tag-sdk"></a>

Para eliminar una o más etiquetas de un modelo, utilice la [UntagResource](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_UntagResource)operación. Indique el ARN del modelo (`ResourceArn`) y las claves de etiqueta (`Tag-Keys`) que desee eliminar. 

```
aws rekognition untag-resource --resource-arn {{resource-arn}} \
  --tag-keys '["{{key1}}","{{key2}}"]' \
  --profile custom-labels-access
```

Si lo prefiere, también puede indicar `tag-keys` en este formato.

```
--tag-keys {{key1}},{{key2}} 
```