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á.
Etapa 4: criar um índice de pesquisa do Amazon Kendra e ingerir os metadados.
Para implementar a solução de pesquisa inteligente, você cria um índice do Amazon Kendra e ingere seus dados e metadados do S3 nele.
Antes de adicionar metadados ao índice do Amazon Kendra, você cria campos de índice personalizados correspondentes aos atributos personalizados do documento, que, por sua vez, correspondem aos tipos de entidade do Amazon Comprehend. O Amazon Kendra usa os campos de índice e os atributos personalizados do documento que você cria para pesquisar e filtrar os documentos.
Para obter mais informações, consulte Índice e criação de atributos de documentos personalizados.
Tópicos
Criar um índice do Amazon Kendra
Para consultar os documentos de origem, crie um índice do Amazon Kendra.
Se você estiver usando o AWS CLI nesta etapa, você cria e anexa uma função e uma política AWS do IAM que permitem que a Amazon Kendra acesse CloudWatch seus registros antes de criar um índice. Para obter mais informações, consulte Pré-requisitos.
-
Abra o console Amazon Kendra em. https://console.aws.amazon.com/kendra/
Importante
Certifique-se de estar na mesma região em que você criou o trabalho de análise de entidades do Amazon Comprehend e o bucket do Amazon S3. Se você estiver em outra região, escolha a AWS região em que você criou seu bucket do Amazon S3 no seletor de regiões na barra de navegação superior.
-
Escolha Criar índice.
-
Para Detalhes do índice na página Especificar detalhes do índice, faça o seguinte:
-
Em Nome do índice, insira
kendra-index
. -
Mantenha o campo Descrição em branco.
-
Em Perfil do IAM, selecione Criar uma função. Esse perfil fornece acesso ao bucket do Amazon S3.
-
Em Nome do perfil, insira
kendra-role
. O perfil do IAM terá o prefixoAmazonKendra-
. -
Mantenha as configurações padrão para Criptografia e Tags e escolha Avançar.
-
-
Para Configurações de controle de acesso na página Configurar controle de acesso do usuário, escolha Não e, em seguida, escolha Avançar.
-
Para Edições de aprovisionamento na página de Detalhes de aprovisionamento, escolha Developer Edition e escolha Criar.
-
Para criar e anexar um perfil do IAM para a Amazon Kendra que a reconheça como uma entidade confiável, faça o seguinte:
-
Salve a política de confiança a seguir como um arquivo JSON chamado
kendra-trust-policy.json
em um editor ou texto em seu computador.{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "kendra.amazonaws.com" }, "Action": "sts:AssumeRole" } }
-
Para criar um perfil do IAM chamado
kendra-role
e anexar o arquivokendra-trust-policy.json
salvo para ele, use o comando create-role: -
Copie o nome do recurso da Amazon (ARN) no editor de texto e salve-o localmente como
kendra-role-arn
.nota
O ARN tem um formato semelhante a
arn:aws:iam::123456789012:role/kendra-role
. Você precisa do ARN no qual você salvoukendra-role-arn
para executar os trabalhos do Amazon Kendra.
-
-
Antes de criar um índice, você deve fornecer permissão para gravar
kendra-role
no CloudWatch Logs. Para fazer isso, conclua as seguintes etapas:-
Salve a política de confiança a seguir como um arquivo JSON chamado
kendra-cloudwatch-policy.json
em um editor ou texto em seu computador.{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":"cloudwatch:PutMetricData", "Resource":"*", "Condition":{ "StringEquals":{ "cloudwatch:namespace":"Kendra" } } }, { "Effect":"Allow", "Action":"logs:DescribeLogGroups", "Resource":"*" }, { "Effect":"Allow", "Action":"logs:CreateLogGroup", "Resource":"arn:aws:logs:
aws-region
:aws-account-id
:log-group:/aws/kendra/*" }, { "Effect":"Allow", "Action":[ "logs:DescribeLogStreams", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource":"arn:aws:logs:aws-region
:aws-account-id
:log-group:/aws/kendra/*:log-stream:*" } ] }aws-region
Substitua pela sua AWS região eaws-account-id
pelo ID da sua AWS conta de 12 dígitos. -
Para criar uma política do IAM para acessar CloudWatch os registros, use o comando create-policy
: -
Copie o nome do recurso da Amazon (ARN) no editor de texto e salve-o localmente como
kendra-cloudwatch-arn
.nota
O ARN tem um formato semelhante a
arn:aws:iam::123456789012:role/kendra-cloudwatch-policy
. Você precisa do ARN em que salvoukendra-cloudwatch-arn
para anexarkendra-cloudwatch-policy
ao perfil do IAM. -
Para anexar o
kendra-cloudwatch-policy
à sua função do IAM, use o attach-role-policycomando:
-
-
Para criar um índice, use o comando create-index
: -
Copie o índice
Id
e salve-o em um editor de texto comokendra-index-id
.Id
ajuda a rastrear o status da criação do índice. -
Para acompanhar o progresso do trabalho de criação de índice, use o comando describe-index
:
O processo de criação do índice leva, em média, 15 minutos, mas pode levar mais tempo. Quando o status do índice é ativo, o índice está pronto para uso. Enquanto o índice está sendo criado, você pode começar a próxima etapa.
Se você estiver usando o AWS CLI nesta etapa, você cria e anexa uma política do IAM à sua função do Amazon Kendra IAM que concede ao seu índice permissões para acessar seu bucket do S3.
Atualizar o perfil do IAM para acessar o Amazon S3
Enquanto o índice está sendo criado, você atualiza o perfil do Amazon Kendra IAM para permitir que o índice que você criou leia dados do bucket do Amazon S3. Para obter mais informações, consulte Perfis do IAM para o Amazon Kendra.
Abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação esquerdo, escolha Funções e insira
kendra-role
na caixa Pesquisar acima do Nome da função. -
Nas opções sugeridas, clique em
kendra-role
. -
Em Resumo, escolha Anexar políticas.
-
Em Anexar permissões, na caixa Pesquisar, insira
S3
e selecione a caixa de seleção ao lado da ReadOnlyAccess política do AmazonS3 nas opções sugeridas. -
Escolha Anexar política. Na página de Resumo, agora você verá duas políticas anexadas ao perfil do IAM.
-
Retorne ao console do Amazon Kendra https://console.aws.amazon.com/kendra/
em e espere que o status do seu índice mude de Criando para Ativo antes de continuar com a próxima etapa.
-
Salve a política de confiança a seguir como um arquivo JSON chamado
kendra-S3-access-policy.json
em um editor ou texto em seu computador.{ "Version":"2012-10-17", "Statement":[ { "Action":[ "s3:GetObject" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-bucket/*" ], "Effect":"Allow" }, { "Action":[ "s3:ListBucket" ], "Resource":[ "arn:aws:s3:::amzn-s3-demo-bucket" ], "Effect":"Allow" }, { "Effect":"Allow", "Action":[ "kendra:BatchPutDocument", "kendra:BatchDeleteDocument", "kendra:ListDataSourceSyncJobs" ], "Resource":[ "arn:aws:kendra:
aws-region
:aws-account-id
:index/kendra-index-id
" ] } ] }Substitua amzn-s3-demo-bucket pelo nome do bucket do S3, pela sua AWS região,
aws-region
pelo ID da conta de 12 AWS dígitos e pelo que você salvou.aws-account-id
kendra-index-id
kendra-index-id
-
Para criar uma política do IAM chamada para acessar o bucket do S3, use o comando create-policy
: -
Copie o nome do recurso da Amazon (ARN) no editor de texto e salve-o localmente como
kendra-S3-access-arn
.nota
O ARN tem um formato semelhante a
arn:aws:iam::123456789012:role/kendra-S3-access-policy
. Você precisa do ARN em que salvoukendra-S3-access-arn
para anexarkendra-S3-access-policy
ao perfil do IAM. -
Para anexar o
kendra-S3-access-policy
à sua função do Amazon Kendra IAM, use o comando: attach-role-policy
Criação de campos de índice de pesquisa personalizados do Amazon Kendra
Para preparar o Amazon Kendra para reconhecer os metadados como atributos personalizados do documento, crie campos personalizados correspondentes aos tipos de entidade do Amazon Comprehend. Insira os nove tipos de entidade do Amazon Comprehend a seguir como campos personalizados:
-
COMMERCIAL_ITEM
-
DATE
-
EVENTO
-
LOCALIZAÇÃO
-
ORGANIZATION
-
OUTRO
-
PERSON
-
QUANTITY
-
TÍTULO
Importante
Tipos de entidade com erros ortográficos não serão reconhecidos pelo índice.
-
Abra o console Amazon Kendra em. https://console.aws.amazon.com/kendra/
-
Na lista de Índices, clique em
kendra-index
. -
No painel de navegação esquerdo, em Gerenciamento de dados, escolha Definição de faceta.
-
No menu Campos do índice, escolha Adicionar campo.
-
Na caixa de diálogo Adicionar campo de índice, faça o seguinte:
-
No campo Nome, insira
COMMERCIAL_ITEM
. -
Em Tipo de dados, escolha Lista de cadeias de caracteres.
-
Em Tipos de uso, selecione Facetável, Pesquisável e Exibível e, em seguida, escolha Adicionar.
-
Repita as etapas de a a c para cada tipo de entidade do Amazon Comprehend: COMMERCIAL_ITEM, DATE, EVENT, LOCATION, ORGANIZATION, OTHER, PERSON, QUANTITY, TITLE.
-
O console exibe mensagens de adição de campo bem-sucedida. Você pode optar por fechá-los antes de prosseguir para a próxima etapa.
-
Salve a política de confiança a seguir como um arquivo JSON chamado
custom-attributes.json
em um editor ou texto em seu computador.[ { "Name": "COMMERCIAL_ITEM", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "DATE", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "EVENT", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "LOCATION", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "ORGANIZATION", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "OTHER", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "PERSON", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "QUANTITY", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } }, { "Name": "TITLE", "Type": "STRING_LIST_VALUE", "Search": { "Facetable": true, "Searchable": true, "Displayable": true } } ]
-
Para criar campos personalizados no índice, use o comando update-index
: -
Para verificar se os atributos personalizados foram adicionados ao índice, use o comando describe-index
:
Adicionar um bucket do Amazon S3 como fonte de dados para o índice
Antes de sincronizar o índice, conecte a fonte de dados do S3 a ele.
-
Abra o console Amazon Kendra em. https://console.aws.amazon.com/kendra/
-
Na lista de Índices, clique em
kendra-index
. -
No menu de navegação à esquerda, em Gerenciamento de dados, escolha Fontes de dados.
-
Na seção Selecionar tipo de conector da fonte de dados, navegue até Amazon S3 e escolha Adicionar conector.
-
Na página Especificar detalhes da fonte de dados, faça o seguinte:
-
Em Nome e descrição, para Nome da fonte de dados, insira um
S3-data-source
. -
Mantenha a seção Descrição em branco.
-
Mantenha a configuração padrão para Tags.
-
Escolha Próximo.
-
-
Na página Definir configurações, na seção Escopo de sincronização, faça o seguinte:
-
Em Inserir o local da fonte de dados, escolha Procurar no S3.
-
Em Escolher recursos, selecione so bucket do S3 e escolha Escolher.
-
Em Localização da pasta de prefixo de arquivos de metadados, escolha Procurar S3.
-
Em Escolher recursos, clique no nome do bucket na lista de buckets.
-
Em Objetos, selecione o botão de opção para
metadata
e escolha Escolher. O campo de localização agora deve dizermetadata/
. -
Mantenha as configurações padrão para a Localização do arquivo de configuração da lista de controle de acesso, Selecionar chave de descriptografia e Configuração adicional.
-
-
Para o perfil do IAM, na página Definir configurações de sincronização, escolha
kendra-role
. -
Na página Definir configurações de sincronização, em Agenda de execução da sincronização, em Frequência, escolha Executar sob demanda e, em seguida, escolha Avançar.
-
Na página Revisar e criar, analise os detalhes da fonte de dados e escolha Criar fonte de dados.
-
Salve a política de confiança a seguir como um arquivo JSON chamado
S3-data-connector.json
em um editor ou texto em seu computador.{ "S3Configuration":{ "BucketName":"amzn-s3-demo-bucket", "DocumentsMetadataConfiguration":{ "S3Prefix":"metadata" } } }
Substitua amzn-s3-demo-bucket pelo nome do seu bucket S3.
-
Para conectar seu bucket do S3 ao seu índice, use o create-data-source
comando: -
Copie o índice
Id
e salve-o em um editor de texto comoS3-connector-id
.Id
ajuda você a rastrear o status do processo de conexão de dados. -
Para garantir que sua fonte de dados do S3 tenha sido conectada com êxito, use o describe-data-source
comando:
Ao final dessa etapa, a fonte de dados do Amazon S3 é conectada ao índice.
Sincronizar o índice do Amazon Kendra
Com a fonte de dados do Amazon S3 adicionada, agora você sincroniza o índice Amazon Kendra com ela.
-
Abra o console Amazon Kendra em. https://console.aws.amazon.com/kendra/
-
Na lista de Índices, clique em
kendra-index
. -
No menu de navegação à esquerda, escolha Fontes de dados.
-
Em Fontes de dados, selecione
S3-data-source
. -
Na barra de navegação superior, escolha Sincronizar agora.
-
Para sincronizar seu índice, use o comando start-data-source-sync-job
: -
Para verificar o status da sincronização do índice, use o comando list-data-source-sync-jobs
:
Ao final desta etapa, você criou um índice Amazon Kendra pesquisável e filtrável para o conjunto de dados.