Etapa 3: formatar a saída da análise de entidades como metadados do Amazon Kendra - Amazon Kendra

Etapa 3: formatar a saída da análise de entidades como metadados do Amazon Kendra

Para converter as entidades extraídas pelo Amazon Comprehend para o formato de metadados exigido por um índice do Amazon Kendra, execute um script Python 3. Os resultados da conversão são armazenados na pasta metadata do bucket da Amazon S3.

Para obter mais informações sobre o formato e a estrutura dos metadados do Amazon Kendra, consulte Metadados do documento do S3.

Baixando e extraindo a saída do Amazon Comprehend

Para formatar a saída da análise de entidades do Amazon Comprehend, você deve primeiro baixar o arquivo de análise de entidades do Amazon Comprehend do output.tar.gz e extrair o arquivo de análise de entidades.

  1. No console do Amazon Comprehend, no painel de navegação, acesse às Tarefas de análise..

  2. Escolha sua tarefa de análise de entidades data-entities-analysis.

  3. Em Saída, escolha o link exibido ao lado do Local dos dados de saída. Isso redireciona você para o arquivo de output.tar.gz em seu bucket do S3.

  4. Na página Visão geral selecione Fazer download.

    dica

    A saída de todos os trabalhos de análise do Amazon Comprehend tem o mesmo nome. Renomear p arquivo ajudará você a rastreá-lo com mais facilidade.

  5. Descompacte e extraia o arquivo do Amazon Comprehend baixado para o seu dispositivo.

  1. Para acessar o nome da pasta gerada automaticamente pelo Amazon Comprehend no bucket do S3 que contém os resultados do trabalho de análise de entidades, use o comando describe-entities-detection-job:

    Linux
    aws comprehend describe-entities-detection-job \ --job-id entities-job-id \ --region aws-region

    Em que:

    macOS
    aws comprehend describe-entities-detection-job \ --job-id entities-job-id \ --region aws-region

    Em que:

    Windows
    aws comprehend describe-entities-detection-job ^ --job-id entities-job-id ^ --region aws-region

    Em que:

  2. Do objeto OutputDataConfig na descrição do cargo de sua entidade, copie e salve o valor S3Uri como comprehend-S3uri em um editor de texto.

    nota

    O valor de S3Uri tem um formato semelhante a s3://amzn-s3-demo-bucket/.../output/output.tar.gz.

  3. Para baixar o arquivo de saída das entidades, use o comando copiar:

    Linux
    aws s3 cp s3://amzn-s3-demo-bucket/.../output/output.tar.gz path/output.tar.gz

    Em que:

    • s3://amzn-s3-demo-bucket/.../output/output.tar.gz é o valor de S3Uri que você salvou como comprehend-S3uri;

    • path/ é o diretório local em que você deseja salvar a saída.

    macOS
    aws s3 cp s3://amzn-s3-demo-bucket/.../output/output.tar.gz path/output.tar.gz

    Em que:

    • s3://amzn-s3-demo-bucket/.../output/output.tar.gz é o valor de S3Uri que você salvou como comprehend-S3uri;

    • path/ é o diretório local em que você deseja salvar a saída.

    Windows
    aws s3 cp s3://amzn-s3-demo-bucket/.../output/output.tar.gz path/output.tar.gz

    Em que:

    • s3://amzn-s3-demo-bucket/.../output/output.tar.gz é o valor de S3Uri que você salvou como comprehend-S3uri;

    • path/ é o diretório local em que você deseja salvar a saída.

  4. Para extrair a saída das entidades, execute o seguinte comando em uma janela de terminal:

    Linux
    tar -xf path/output.tar.gz -C path/

    Em que:

    • path/ é o caminho do arquivo para o arquivo output.tar.gz baixado no dispositivo local.

    macOS
    tar -xf path/output.tar.gz -C path/

    Em que:

    • path/ é o caminho do arquivo para o arquivo output.tar.gz baixado no dispositivo local.

    Windows
    tar -xf path/output.tar.gz -C path/

    Em que:

    • path/ é o caminho do arquivo para o arquivo output.tar.gz baixado no dispositivo local.

Ao final desta etapa, você deve ter um arquivo no dispositivo chamado output com uma lista de entidades identificadas pelo Amazon Comprehend.

Carregando a saída no bucket do S3

Depois de baixar e extrair o arquivo de análise de entidades do Amazon Comprehend, carregue o arquivo extraído output no bucket do Amazon S3.

  1. Abra o console do Amazon S3, em https://console.aws.amazon.com/s3/.

  2. Em Buckets, escolha o nome do bucket e, em seguida, escolha Carregar.

  3. Em Arquivos e pastas, escolha Adicionar arquivos.

  4. Na caixa de diálogo, navegue até o arquivo output extraído no dispositivo, selecione-o e escolha Abrir.

  5. Mantenha as configurações padrão para Destino, Permissões e Propriedades.

  6. Escolha Carregar.

  1. Para fazer o upload do arquivo extraído output para o bucket, use o comando copiar:

    Linux
    aws s3 cp path/output s3://amzn-s3-demo-bucket/output

    Em que:

    • path/ é o caminho do arquivo local para o arquivo extraído output,

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    macOS
    aws s3 cp path/output s3://amzn-s3-demo-bucket/output

    Em que:

    • path/ é o caminho do arquivo local para o arquivo extraído output,

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    Windows
    aws s3 cp path/output s3://amzn-s3-demo-bucket/output

    Em que:

    • path/ é o caminho do arquivo local para o arquivo extraído output,

    • amzn-s3-demo-bucket é o nome do bucket do S3.

  2. Para garantir que o arquivo output tenha sido carregado com sucesso no bucket do S3, verifique o conteúdo usando o comando list:

    Linux
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    macOS
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    Windows
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

Conversão da saída para o formato de metadados do Amazon Kendra

Para converter a saída do Amazon Comprehend em metadados do Amazon Kendra, execute um script Python 3. Se estiver usando o console, use AWS CloudShell para esta etapa.

  1. Baixe o arquivo compactado converter.py.zip em seu dispositivo.

  2. Extraia o arquivo Python 3 converter.py.

  3. Faça login no Management Console do AWS e certifique-se de que a região AWS esteja configurada para a mesma região do bucket do S3 e do trabalho de análise do Amazon Comprehend.

  4. Escolha o Ícone do AWS CloudShell ou digite AWS CloudShell na caixa Pesquisar na barra de navegação superior para iniciar um ambiente.

    nota

    Quando o AWS CloudShell for iniciado em uma nova janela do navegador pela primeira vez, um painel de boas-vindas vai exibir e listar os principais recursos. O shell estará pronto para interação após você fechar esse painel e o prompt de comando for exibido.

  5. Depois que o terminal estiver preparado, escolha Ações no painel de navegação e escolha Carregar arquivo no menu.

  6. Na caixa de diálogo que se abre, escolha Selecionar arquivo e, em seguida, escolha o arquivo Python 3 baixado converter.py do dispositivo. Escolha Carregar.

  7. No ambiente AWS CloudShell, insira o seguinte comando:

    python3 converter.py
  8. Quando a interface do shell solicitar que você Insira o nome do bucket do S3, insira o nome do bucket do S3 e pressione enter.

  9. Quando a interface do shell solicitar que você Insira o caminho completo do arquivo de saída do Comprehend, digite e pressione enter output.

  10. Quando a interface do shell solicitar que você Insira o caminho completo do arquivo de metadados, digite e pressione enter metadata/.

Importante

Para que os metadados sejam formatados corretamente, os valores de entrada nas etapas 8 a 10 devem ser exatos.

  1. Faça o download do arquivo Python converter.py, execute o seguinte comando na janela do terminal:

    Linux
    curl -o path/converter.py.zip https://docs.aws.amazon.com/kendra/latest/dg/samples/converter.py.zip

    Em que:

    • path/ é o caminho do arquivo para o local em que você deseja salvar a pasta zip.

    macOS
    curl -o path/converter.py.zip https://docs.aws.amazon.com/kendra/latest/dg/samples/converter.py.zip

    Em que:

    • path/ é o caminho do arquivo para o local em que você deseja salvar a pasta zip.

    Windows
    curl -o path/converter.py.zip https://docs.aws.amazon.com/kendra/latest/dg/samples/converter.py.zip

    Em que:

    • path/ é o caminho do arquivo para o local em que você deseja salvar a pasta zip.

  2. Para extrair o arquivo Python 3, execute o seguinte comando na janela do terminal:

    Linux
    unzip path/converter.py.zip -d path/

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

    macOS
    unzip path/converter.py.zip -d path/

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

    Windows
    tar -xf path/converter.py.zip -C path/

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

  3. Certifique-se de que o Boto3 esteja instalado no dispositivo executando o seguinte comando:

    Linux
    pip3 show boto3
    macOS
    pip3 show boto3
    Windows
    pip3 show boto3
    nota

    Se você não tiver o Boto3 instalado, execute pip3 install boto3 para instalá-lo.

  4. Para executar o script Python 3 para converter o output arquivo, execute o comando a seguir.

    Linux
    python path/converter.py

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

    macOS
    python path/converter.py

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

    Windows
    python path/converter.py

    Em que:

    • path/ é o caminho do arquivo salvo converter.py.zip.

  5. Quando AWS CLI solicitar Enter the name of your S3 bucket, insira o nome do bucket do S3 e pressione enter.

  6. Quando AWS CLI solicitar Enter the full filepath to your Comprehend output file, insira output e pressione enter.

  7. Quando AWS CLI solicitar Enter the full filepath to your metadata folder, insira metadata/ e pressione enter.

Importante

Para que os metadados sejam formatados corretamente, os valores de entrada nas etapas 5 a 7 devem ser exatos.

No final dessa etapa, os metadados formatados são depositados dentro da pasta metadata no bucket do S3.

Como limpar o bucket do Amazon S3

Como o índice do Amazon Kendra sincroniza todos os arquivos armazenados em um bucket, recomendamos que você limpe o bucket do Amazon S3 para evitar resultados de pesquisa redundantes.

  1. Abra o console do Amazon S3, em https://console.aws.amazon.com/s3/.

  2. Em Buckets, escolha o bucket e, em seguida, selecione a pasta de saída da análise de entidades do Amazon Comprehend, o arquivo de análise de entidades .temp do Amazon Comprehend e o arquivo output extraído do Amazon Comprehend.

  3. Na guia Visão geral, escolha Excluir.

  4. Em Excluir objetos, escolha Excluir objetos permanentemente? e insira permanently delete no campo de entrada de texto.

  5. Escolha Delete objects (Excluir objetos).

  1. Para excluir todos os arquivos e as pastas no bucket do S3, exceto as pastas data e metadata use o comando remover no AWS CLI:

    Linux
    aws s3 rm s3://amzn-s3-demo-bucket/ --recursive --exclude "data/*" --exclude "metadata/*"

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    macOS
    aws s3 rm s3://amzn-s3-demo-bucket/ --recursive --exclude "data/*" --exclude "metadata/*"

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    Windows
    aws s3 rm s3://amzn-s3-demo-bucket/ --recursive --exclude "data/*" --exclude "metadata/*"

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

  2. Para garantir que os objetos tenham sido carregados com sucesso no bucket do S3, verifique o conteúdo usando o comando list:

    Linux
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    macOS
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

    Windows
    aws s3 ls s3://amzn-s3-demo-bucket/

    Em que:

    • amzn-s3-demo-bucket é o nome do bucket do S3.

Ao final desta etapa, você converteu a saída da análise de entidades do Amazon Comprehend em metadados do Amazon Kendra. Agora, você está pronto para criar um índice do Amazon Kendra.