Descripción de un proyecto (SDK) - Rekognition

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.

Descripción de un proyecto (SDK)

Puede utilizar la API de DescribeProjects para obtener información sobre sus proyectos.

Cómo describir un proyecto (SDK)
  1. Si aún no lo ha hecho, instale y configure los AWS CLI y los AWS SDK. Para obtener más información, consulte Paso 4: Configure los SDK y AWS CLIAWS.

  2. Utilice el siguiente código de ejemplo para describir un proyecto. Cambie project_name por el nombre del proyecto que desee describir. Si no indica --project-names, se devolverán las descripciones de todos los proyectos.

    AWS CLI
    aws rekognition describe-projects --project-names project_name \ --profile custom-labels-access
    Python

    Utilice el siguiente código. Indique los siguientes parámetros de línea de comandos:

    • project_name: el nombre del proyecto que desee describir. Si no indica un nombre, se devolverán las descripciones de todos los proyectos.

    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 """ Purpose Shows how to describe an Amazon Rekognition Custom Labels project. """ import argparse import logging import json import boto3 from botocore.exceptions import ClientError logger = logging.getLogger(__name__) def display_project_info(project): """ Displays information about a Custom Labels project. :param project: The project that you want to display information about. """ print(f"Arn: {project['ProjectArn']}") print(f"Status: {project['Status']}") if len(project['Datasets']) == 0: print("Datasets: None") else: print("Datasets:") for dataset in project['Datasets']: print(f"\tCreated: {str(dataset['CreationTimestamp'])}") print(f"\tType: {dataset['DatasetType']}") print(f"\tARN: {dataset['DatasetArn']}") print(f"\tStatus: {dataset['Status']}") print(f"\tStatus message: {dataset['StatusMessage']}") print(f"\tStatus code: {dataset['StatusMessageCode']}") print() print() def describe_projects(rek_client, project_name): """ Describes an Amazon Rekognition Custom Labels project, or all projects. :param rek_client: The Amazon Rekognition Custom Labels Boto3 client. :param project_name: The project you want to describe. Pass None to describe all projects. """ try: # Describe the project if project_name is None: logger.info("Describing all projects.") else: logger.info("Describing project: %s.",project_name) if project_name is None: response = rek_client.describe_projects() else: project_names = json.loads('["' + project_name + '"]') response = rek_client.describe_projects(ProjectNames=project_names) print('Projects\n--------') if len(response['ProjectDescriptions']) == 0: print("Project(s) not found.") else: for project in response['ProjectDescriptions']: display_project_info(project) logger.info("Finished project description.") except ClientError as err: logger.exception( "Couldn't describe project - %s: %s", project_name,err.response['Error']['Message'] ) raise def add_arguments(parser): """ Adds command line arguments to the parser. :param parser: The command line parser. """ parser.add_argument( "--project_name", help="The name of the project that you want to describe.", required=False ) def main(): logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") try: # Get command line arguments. parser = argparse.ArgumentParser(usage=argparse.SUPPRESS) add_arguments(parser) args = parser.parse_args() print(f"Describing projects: {args.project_name}") # Describe the project. session = boto3.Session(profile_name='custom-labels-access') rekognition_client = session.client("rekognition") describe_projects(rekognition_client, args.project_name) if args.project_name is None: print("Finished describing all projects.") else: print("Finished describing project %s.", args.project_name) except ClientError as err: error_message = f"Problem describing project: {err}" logger.exception(error_message) print(error_message) if __name__ == "__main__": main()
    Java V2

    Utilice el siguiente código. Indique los siguientes parámetros de línea de comandos:

    • project_name: el ARN del proyecto que desea describir. Si no indica un nombre, se devolverán las descripciones de todos los proyectos.

    /* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ package com.example.rekognition; import java.util.ArrayList; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.services.rekognition.RekognitionClient; import software.amazon.awssdk.services.rekognition.model.DatasetMetadata; import software.amazon.awssdk.services.rekognition.model.DescribeProjectsRequest; import software.amazon.awssdk.services.rekognition.model.DescribeProjectsResponse; import software.amazon.awssdk.services.rekognition.model.ProjectDescription; import software.amazon.awssdk.services.rekognition.model.RekognitionException; public class DescribeProjects { public static final Logger logger = Logger.getLogger(DescribeProjects.class.getName()); public static void describeMyProjects(RekognitionClient rekClient, String projectName) { DescribeProjectsRequest descProjects = null; // If a single project name is supplied, build projectNames argument List<String> projectNames = new ArrayList<String>(); if (projectName == null) { descProjects = DescribeProjectsRequest.builder().build(); } else { projectNames.add(projectName); descProjects = DescribeProjectsRequest.builder().projectNames(projectNames).build(); } // Display useful information for each project. DescribeProjectsResponse resp = rekClient.describeProjects(descProjects); for (ProjectDescription projectDescription : resp.projectDescriptions()) { System.out.println("ARN: " + projectDescription.projectArn()); System.out.println("Status: " + projectDescription.statusAsString()); if (projectDescription.hasDatasets()) { for (DatasetMetadata datasetDescription : projectDescription.datasets()) { System.out.println("\tdataset Type: " + datasetDescription.datasetTypeAsString()); System.out.println("\tdataset ARN: " + datasetDescription.datasetArn()); System.out.println("\tdataset Status: " + datasetDescription.statusAsString()); } } System.out.println(); } } public static void main(String[] args) { String projectArn = null; // Get command line arguments final String USAGE = "\n" + "Usage: " + "<project_name>\n\n" + "Where:\n" + " project_name - (Optional) The name of the project that you want to describe. If not specified, all projects " + "are described.\n\n"; if (args.length > 1) { System.out.println(USAGE); System.exit(1); } if (args.length == 1) { projectArn = args[0]; } try { // Get the Rekognition client RekognitionClient rekClient = RekognitionClient.builder() .credentialsProvider(ProfileCredentialsProvider.create("custom-labels-access")) .region(Region.US_WEST_2) .build(); // Describe projects describeMyProjects(rekClient, projectArn); rekClient.close(); } catch (RekognitionException rekError) { logger.log(Level.SEVERE, "Rekognition client error: {0}", rekError.getMessage()); System.exit(1); } } }