Como excluir um projeto do Amazon Rekognition Custom Labels - Rekognition

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Como excluir um projeto do Amazon Rekognition Custom Labels

Você pode excluir um projeto usando o console do Amazon Rekognition ou chamando a API. DeleteProject Para excluir um projeto, exclua primeiro cada modelo associado. Um projeto ou modelo excluído não pode ser recuperado.

Como excluir um projeto do Amazon Rekognition Custom Labels (console)

É possível excluir um projeto da página de projetos ou excluir um projeto da página de detalhes de um projeto. O procedimento a seguir mostra como excluir um projeto usando a página de projetos.

O console do Amazon Rekognition Custom Labels exclui modelos e conjuntos de dados associados para você durante a exclusão do projeto. Não é possível excluir um projeto se algum de seus modelos estiver em execução ou em treinamento. Para interromper um modelo em execução, consulte Como interromper um modelo do Amazon Rekognition Custom Labels (SDK). Se um modelo estiver sendo treinado, espere até que ele termine antes de excluir o projeto.

Para excluir um projeto de (console)
  1. Abra o console do Amazon Rekognition em https://console.aws.amazon.com/rekognition/.

  2. Escolha Usar rótulos personalizados.

  3. Escolha Comece a usar.

  4. No painel de navegação esquerdo, selecione Projetos.

  5. Na página Projetos, selecione o botão ao lado do projeto que deseja excluir. A lista de projetos é exibida echo-devices-project, com 1 versão criada em 25/03/2020 e opções para excluir, treinar novo modelo ou criar projeto.

    Lista de projetos mostrando o echo-devices-project projeto e os detalhes do projeto.
  6. Escolha Excluir, no alto da página. A caixa de diálogo Excluir projeto é exibida.

  7. Se o projeto não tiver modelos associados:

    1. insira Excluir para excluir o projeto.

    2. Escolha Excluir para excluir o projeto.

  8. Se o projeto tiver modelos ou conjuntos de dados associados:

    1. Insira excluir para confirmar que deseja excluir os modelos e os conjuntos de dados.

    2. Escolha Excluir modelos associados, Excluir conjuntos de dados associados ou Excluir conjuntos de dados e modelos associados, dependendo se o modelo tem conjuntos de dados, modelos ou ambos. A exclusão do modelo pode demorar um pouco para ser concluída.

      nota

      O console não pode excluir modelos que estejam em treinamento ou em execução. Tente novamente depois de interromper qualquer modelo em execução listado e espere até que os modelos listados como treinamento terminem.

      Se Fechar a caixa de diálogo durante a exclusão do modelo, os modelos ainda serão excluídos. Posteriormente, é possível excluir o projeto repetindo esse procedimento.

      O painel para excluir um modelo fornece instruções explícitas para excluir modelos associados.

      Interface para excluir um projeto.
    3. Insira excluir para confirmar que você deseja excluir o projeto.

    4. Escolha Excluir para excluir o projeto.

Como excluir um projeto do Amazon Rekognition Custom Labels (SDK)

Você exclui um projeto Amazon Rekognition Custom Labels DeleteProjectchamando e fornecendo o Amazon Resource Name (ARN) do projeto que você deseja excluir. Para obter os ARNs dos projetos em sua AWS conta, ligue DescribeProjects. A resposta inclui uma matriz de ProjectDescriptionobjetos. O ARN do projeto é o campo ProjectArn. É possível usar o nome do projeto para identificar o ARN do projeto. Por exemplo, arn:aws:rekognition:us-east-1:123456789010:project/project name/1234567890123.

Antes de excluir um projeto, exclua primeiro todos os modelos e conjuntos de dados no projeto. Para obter mais informações, consulte Como excluir um modelo do Amazon Rekognition Custom Labels (SDK) e Como excluir um conjunto de dados.

O projeto pode demorar alguns instantes para ser excluído. Durante esse período, o status do projeto é DELETING. O projeto será excluído se uma chamada subsequente DescribeProjectsnão incluir o projeto que você excluiu.

Para excluir um projeto (SDK)
  1. Se você ainda não tiver feito isso, instale e configure o AWS CLI e os AWS SDKs. Para ter mais informações, consulte Etapa 4: configurar os AWS SDKs AWS CLI e.

  2. Use o código a seguir para excluir um projeto.

    AWS CLI

    Altere o valor de project-arn para o nome do projeto que você deseja excluir.

    aws rekognition delete-project --project-arn project_arn \ --profile custom-labels-access
    Python

    Use o seguinte código: Forneça os seguintes parâmetros de linha de comando:

    • project_arn: o ARN do projeto que você deseja excluir.

    # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. # SPDX-License-Identifier: Apache-2.0 """ Purpose Amazon Rekognition Custom Labels project example used in the service documentation: https://docs.aws.amazon.com/rekognition/latest/customlabels-dg/mp-delete-project.html Shows how to delete an existing Amazon Rekognition Custom Labels project. You must first delete any models and datasets that belong to the project. """ import argparse import logging import time import boto3 from botocore.exceptions import ClientError logger = logging.getLogger(__name__) def find_forward_slash(input_string, n): """ Returns the location of '/' after n number of occurences. :param input_string: The string you want to search : n: the occurence that you want to find. """ position = input_string.find('/') while position >= 0 and n > 1: position = input_string.find('/', position + 1) n -= 1 return position def delete_project(rek_client, project_arn): """ Deletes an Amazon Rekognition Custom Labels project. :param rek_client: The Amazon Rekognition Custom Labels Boto3 client. :param project_arn: The ARN of the project that you want to delete. """ try: # Delete the project logger.info("Deleting project: %s", project_arn) response = rek_client.delete_project(ProjectArn=project_arn) logger.info("project status: %s",response['Status']) deleted = False logger.info("waiting for project deletion: %s", project_arn) # Get the project name start = find_forward_slash(project_arn, 1) + 1 end = find_forward_slash(project_arn, 2) project_name = project_arn[start:end] project_names = [project_name] while deleted is False: project_descriptions = rek_client.describe_projects( ProjectNames=project_names)['ProjectDescriptions'] if len(project_descriptions) == 0: deleted = True else: time.sleep(5) logger.info("project deleted: %s",project_arn) return True except ClientError as err: logger.exception( "Couldn't delete project - %s: %s", project_arn, 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_arn", help="The ARN of the project that you want to delete." ) 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"Deleting project: {args.project_arn}") # Delete the project. session = boto3.Session(profile_name='custom-labels-access') rekognition_client = session.client("rekognition") delete_project(rekognition_client, args.project_arn) print(f"Finished deleting project: {args.project_arn}") except ClientError as err: error_message = f"Problem deleting project: {err}" logger.exception(error_message) print(error_message) if __name__ == "__main__": main()
    Java V2

    Use o seguinte código: Forneça os seguintes parâmetros de linha de comando:

    • project_arn: o ARN do projeto que você deseja excluir.

    /* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ package com.example.rekognition; import java.util.List; import java.util.Objects; import java.util.logging.Level; import java.util.logging.Logger; import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.rekognition.RekognitionClient; import software.amazon.awssdk.services.rekognition.model.DeleteProjectRequest; import software.amazon.awssdk.services.rekognition.model.DeleteProjectResponse; 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 DeleteProject { public static final Logger logger = Logger.getLogger(DeleteProject.class.getName()); public static void deleteMyProject(RekognitionClient rekClient, String projectArn) throws InterruptedException { try { logger.log(Level.INFO, "Deleting project: {0}", projectArn); // Delete the project DeleteProjectRequest deleteProjectRequest = DeleteProjectRequest.builder().projectArn(projectArn).build(); DeleteProjectResponse response = rekClient.deleteProject(deleteProjectRequest); logger.log(Level.INFO, "Status: {0}", response.status()); // Wait until deletion finishes Boolean deleted = false; do { DescribeProjectsRequest describeProjectsRequest = DescribeProjectsRequest.builder().build(); DescribeProjectsResponse describeResponse = rekClient.describeProjects(describeProjectsRequest); List<ProjectDescription> projectDescriptions = describeResponse.projectDescriptions(); deleted = true; for (ProjectDescription projectDescription : projectDescriptions) { if (Objects.equals(projectDescription.projectArn(), projectArn)) { deleted = false; logger.log(Level.INFO, "Not deleted: {0}", projectDescription.projectArn()); Thread.sleep(5000); break; } } } while (Boolean.FALSE.equals(deleted)); logger.log(Level.INFO, "Project deleted: {0} ", projectArn); } catch ( RekognitionException e) { logger.log(Level.SEVERE, "Client error occurred: {0}", e.getMessage()); throw e; } } public static void main(String[] args) { final String USAGE = "\n" + "Usage: " + "<project_arn>\n\n" + "Where:\n" + " project_arn - The ARN of the project that you want to delete.\n\n"; if (args.length != 1) { System.out.println(USAGE); System.exit(1); } String projectArn = args[0]; try { RekognitionClient rekClient = RekognitionClient.builder() .region(Region.US_WEST_2) .credentialsProvider(ProfileCredentialsProvider.create("custom-labels-access")) .build(); // Delete the project. deleteMyProject(rekClient, projectArn); System.out.println(String.format("Project deleted: %s", projectArn)); rekClient.close(); } catch (RekognitionException rekError) { logger.log(Level.SEVERE, "Rekognition client error: {0}", rekError.getMessage()); System.exit(1); } catch (InterruptedException intError) { logger.log(Level.SEVERE, "Exception while sleeping: {0}", intError.getMessage()); System.exit(1); } } }