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á.
Crie uma base de conhecimento do Amazon Bedrock com gráficos do Amazon Neptune Analytics
O GraphRag está totalmente integrado às bases de conhecimento do Amazon Bedrock e usa o Amazon Neptune Analytics para armazenamento de gráficos e vetores. Você pode começar a usar o GraphRag em suas bases de conhecimento com o AWS Management Console AWS CLI, o ou o AWS SDK.
Você não precisa de nenhuma infraestrutura gráfica existente para começar a usar o GraphRag. O Amazon Bedrock Knowledge Bases gerencia automaticamente a criação e a manutenção dos gráficos do Amazon Neptune. O sistema criará e atualizará automaticamente um gráfico extraindo entidades, fatos e relacionamentos dos documentos que você carrega no seu bucket do Amazon S3, para que você possa fornecer respostas relevantes aos seus usuários finais, sem nenhum conhecimento prévio em modelagem gráfica. O gráfico será armazenado no Amazon Neptune Analytics.
Ao criar uma base de conhecimento, você configura ou especifica o seguinte:
-
Informações gerais que definem e identificam a base de conhecimento.
-
A função de serviço com permissões para a base de conhecimento.
-
Configurações para a base de conhecimento, incluindo o modelo de incorporação a ser usado ao converter dados da fonte de dados e configurações de armazenamento para o serviço no qual armazenar as incorporações.
Você não pode criar uma base de conhecimento com um usuário-raiz. Faça login com um usuário do IAM antes de iniciar essas etapas.
A seguir, mostramos como criar uma base de conhecimento para usar o Neptune GraphRag a partir do console e usar a CLI.
- Console
-
Para criar uma base de conhecimento para o Neptune Analytics a partir do console
-
Faça login no AWS Management Console com um diretor do IAM que tenha permissões para usar o console Amazon Bedrock. Em seguida, abra o console Amazon Bedrock em https://console.aws.amazon.com/bedrock/.
-
No painel de navegação esquerdo, escolha Bases de conhecimento.
-
Na seção Bases de conhecimento, escolha Criar e, em seguida, escolha Base de conhecimento com armazenamento vetorial.
-
(Opcional) Em Detalhes da base de conhecimento, altere o nome padrão e forneça uma descrição para sua base de conhecimento.
-
Em Permissões do IAM, escolha uma função do IAM que forneça permissões ao Amazon Bedrock para acessar outras funções necessárias Serviços da AWS. Você pode fazer com que o Amazon Bedrock crie a função de serviço para você ou pode optar por usar sua própria função personalizada que você criou para o Neptune Analytics. Para obter um exemplo, consulte Permissões para acessar seu banco de dados vetoriais no Amazon Neptune Analytics.
-
Certifique-se de escolher o Amazon S3 como sua fonte de dados e escolha Avançar para configurar sua fonte de dados.
-
Forneça o URI do S3 do arquivo que será usado como fonte de dados para conectar sua base de conhecimento ao Amazon Neptune Analytics e integrá-lo. Para obter etapas adicionais e informações opcionais que você pode fornecer, consulteConecte uma fonte de dados à sua base de conhecimento.
-
Na seção Modelo de incorporação, escolha um modelo de incorporação para converter seus dados em incorporações vetoriais. Opcionalmente, você pode usar a seção Configurações adicionais para especificar as dimensões vetoriais. Para o tipo de incorporação, recomendamos que você use incorporações vetoriais de ponto flutuante.
As dimensões vetoriais do modelo de incorporação devem corresponder às dimensões vetoriais que você especificou ao criar o gráfico do Neptune Analytics.
-
Na seção Banco de dados vetoriais, escolha o método para criar o armazenamento vetorial e, em seguida, escolha Amazon Neptune Analytics (GraphRag) como seu armazenamento vetorial para armazenar as incorporações que serão usadas para a consulta. Para criar seu armazenamento de vetores, você pode usar um dos seguintes métodos:
-
Recomendamos que você use o método de criação rápida de um novo armazenamento vetorial para começar rapidamente a criar seu armazenamento vetorial. Escolha o Amazon Neptune Analytics (GraphRag) como sua loja de vetores. Essa opção não exige que você tenha nenhum recurso existente do Neptune Analytics. A base de conhecimento gera e armazena automaticamente incorporações de documentos no Amazon Neptune, junto com uma representação gráfica das entidades e suas relações derivadas do corpus do documento.
-
Como alternativa, se você já criou seu gráfico e índice vetorial do Neptune Analytics, você pode usar a opção Escolha um repositório de vetores que você criou. Escolha o Amazon Neptune Analytics (GraphRag) como seu armazenamento vetorial e identifique o ARN do gráfico, os nomes dos campos vetoriais e os nomes dos campos de metadados no índice vetorial. Para obter mais informações, consulte Pré-requisitos para usar um repositório de vetores que você criou para uma base de conhecimento.
-
Escolha Avançar e revise os detalhes da sua base de conhecimento. É possível editar qualquer seção antes de começar a criar a base de conhecimento.
O tempo necessário para criar a base de conhecimento depende de suas configurações específicas. Quando a criação da base de conhecimento é concluída, o status da base de conhecimento muda para o estado pronto ou disponível.
Quando a base de conhecimento estiver pronta e disponível, sincronize a fonte de dados pela primeira vez e sempre que quiser manter o conteúdo atualizado. Selecione a base de conhecimento no console e escolha Sincronizar na seção de visão geral da fonte de dados.
-
Escolha Criar base de conhecimento. Enquanto o Amazon Bedrock está criando a base de conhecimento, você deve ver o status Em andamento. Você deve aguardar a conclusão da criação antes de poder sincronizar uma fonte de dados.
-
Depois que o Amazon Bedrock terminar de criar a base de conhecimento, para configurar uma fonte de dados, siga as instruções em. Conecte uma fonte de dados à sua base de conhecimento
- API
-
Para criar uma base de conhecimento para o Neptune Analytics usando o AWS CLI
-
Primeiro, crie uma fonte de dados usando a configuração de enriquecimento de contexto. Para realizar essa operação, envie uma CreateDataSource
solicitação com um endpoint de tempo de construção do Agents for Amazon Bedrock. Um exemplo de um comando da CLI é mostrado a seguir.
aws bedrock-agent create-data-source \
--name graph_rag_source \
--description data_source_for_graph_rag \
--knowledge-base-id LDBBY2K5AG \
--cli-input-json "file://input.json"
O código a seguir mostra o conteúdo do input.json
arquivo.
{
"dataSourceConfiguration": {
"s3Configuration": {
"bucketArn": "arn:aws:s3:::<example-graphrag-datasets>
",
"bucketOwnerAccountId": "<ABCDEFGHIJ>"
,
"inclusionPrefixes": [ <"example-dataset">
]
},
"type": "S3",
},
"VectorIngestionConfiguration": {
"contextEnrichmentConfiguration":
"type": "BEDROCK_FOUNDATION_MODEL",
"bedrockFoundationModelConfiguration": {
"modelArn": "arn:aws:bedrock:<region>
::foundation-model/anthropic.claude-3-haiku-20240307-v1:0",
"enrichmentStrategyConfiguration": {
"method": "CHUNK_ENTITY_EXTRACTION"
}
}
}
}
-
Para criar uma base de conhecimento, envie uma CreateKnowledgeBase
solicitação com um endpoint de tempo de construção do Agents for Amazon Bedrock. Um exemplo de um comando da CLI é mostrado a seguir.
aws bi create-knowledge-base \
--name <"knowledge-base-graphrag">
\
--role-arn arn:aws:iam::<accountId>
:role/<BedrockExecutionRoleForKnowledgeBase>
\
--cli-input-json "file://input.json"
O exemplo a seguir mostra o conteúdo do arquivo input.json
.
{
"storageConfiguration": {
"type": "NEPTUNE_ANALYTICS"
"neptuneAnalyticsConfiguration": {
"graphArn": "arn:aws:neptune-graph:<region>
:<>
:graph/<graphID>
",
"fieldMapping": {
"metadataField": "metadata",
"textField": "text"
},
}
},
"knowledgeBaseConfiguration": {
"type": "VECTOR",
"vectorKnowledgeBaseConfiguration": {
"embeddingModelArn": "arn:aws:bedrock:<region>
::foundation-model/cohere.embed-english-v3"
}
}
}
-
Quando seu aplicativo baseado em Graphrag está em execução, você pode continuar usando as operações da API da Knowledge Bases para fornecer aos usuários finais respostas mais abrangentes, relevantes e explicáveis. As seções a seguir mostram como iniciar a ingestão e realizar consultas de recuperação usando comandos da CLI.
Sincronize sua fonte de dados
Depois de criar a base de conhecimento, ingira ou sincronize os dados para que eles possam ser consultados. A ingestão extrai a estrutura gráfica e converte os dados brutos em sua fonte de dados em incorporações vetoriais, com base no modelo de incorporação vetorial e nas configurações que você especificou.
O comando a seguir mostra um exemplo de como iniciar um trabalho de ingestão usando a CLI.
aws bedrock-agent start-ingestion-job \
--data-source-id <"ABCDEFGHIJ">
\
--knowledge-base-id <"EFGHIJKLMN">
Para obter mais informações e como sincronizar sua fonte de dados usando o console e a API, consulteSincronizar os dados com a base de conhecimento do Amazon Bedrock.
Ingira mudanças em sua base de conhecimento
Ao usar o Amazon S3 como sua fonte de dados, você pode modificar sua fonte de dados e sincronizar as alterações em uma única etapa. Com a ingestão direta, você pode adicionar, atualizar ou excluir arquivos diretamente em uma base de conhecimento em uma única ação, e sua base de conhecimento pode ter acesso aos documentos sem a necessidade de sincronização. A ingestão direta usa as operações da KnowledgeBaseDocuments
API para indexar os documentos que você envia diretamente no armazenamento vetorial configurado para a base de conhecimento. Você também pode visualizar os documentos em sua base de conhecimento diretamente com essas operações, em vez de precisar navegar até a fonte de dados conectada para visualizá-los. Para obter mais informações, consulte Ingira mudanças diretamente em uma base de conhecimento.
Testar a base de conhecimento
Agora que você configurou sua base de conhecimento, pode testá-la enviando consultas e gerando respostas.
O código a seguir mostra um exemplo de comando da CLI.
aws bedrock-agent-runtime retrieve \
--knowledge-base-id <"ABCDEFGHIJ">
\
--retrieval-query="{\"text\": \"What are the top three video games available now?\"}"
Para obter mais informações, consulte Consulte uma base de conhecimento conectada a um gráfico do Amazon Neptune Analytics.