

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á.

# Criar uma base de conhecimento do Amazon Bedrock com grafos do Amazon Neptune Analytics
<a name="knowledge-base-build-graphs-build"></a>

O GraphRAG está totalmente integrado às Bases de Conhecimento do Amazon Bedrock e usa o Amazon Neptune Analytics para armazenamento de grafos e vetores. Você pode começar a usar o GraphRag em suas bases de conhecimento com o Console de gerenciamento da AWS AWS CLI, o ou o AWS SDK.

Você não precisa ter nenhuma infraestrutura gráfica para começar a usar o GraphRAG. As Bases de Conhecimento do Amazon Bedrock gerenciam automaticamente a criação e a manutenção dos grafos do Amazon Neptune. O sistema criará e atualizará automaticamente um grafo extraindo entidades, fatos e relacionamento dos documentos que você carrega no bucket do Amazon S3, para que possa fornecer respostas relevantes aos usuários finais, sem nenhum conhecimento prévio em modelagem de grafos. O grafo será armazenado no Amazon Neptune Analytics.

Ao criar uma base de conhecimento, configure ou especifique o seguinte:
+ Informações gerais que definam e identifiquem a base de conhecimento.
+ O perfil de serviço com permissões para a base de conhecimento.
+ Configurações da base de conhecimento, como 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.

**nota**  
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.

Veja a seguir como criar uma base de conhecimento para usar o GraphRAG do Neptune por meio do console e usando a CLI.

------
#### [ Console ]

**Como criar uma base de conhecimento para o Neptune Analytics por meio do console**

1. Faça login no Console de gerenciamento da AWS com uma identidade 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.](https://console.aws.amazon.com/bedrock)

1. No painel de navegação à esquerda, selecione **Bases de conhecimento**.

1. Na seção **Bases de conhecimento**, escolha **Criar** e selecione **Base de conhecimento com armazenamento vetorial**.

1. (Opcional) Em **Detalhes da base de conhecimento**, altere o nome padrão e dê uma descrição para a base de conhecimento.

1. Em **Permissões do IAM** escolha um perfil do IAM que forneça permissão ao Amazon Bedrock para acessar outros Serviços da AWS necessários. Você pode permitir que o Amazon Bedrock crie o perfil de serviço ou optar por usar um perfil personalizado criado por você para o Neptune Analytics. Para ver um exemplo, consulte [Permissões para acessar o banco de dados de vetores no Amazon Neptune Analytics](kb-permissions.md#kb-permissions-neptune).

1. Escolha o **Amazon S3** como fonte de dados e selecione **Próximo** para configurar a fonte de dados.

1. Forneça o **URI do S3** do arquivo que será usado como fonte de dados para conectar a base de conhecimento e integrar ao Amazon Neptune Analytics. Para ver etapas adicionais e informações opcionais que você pode fornecer, consulte [Conectar uma fonte de dados à base de conhecimento](data-source-connectors.md).

1. Em **Modelo de incorporação**, escolha um modelo de incorporação para converter a base de conhecimento dos seus dados em uma incorporação. 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 de vetores de ponto flutuante.
**nota**  
As dimensões vetoriais do modelo de incorporação devem corresponder às dimensões vetoriais que você especificou ao criar o grafo do Neptune Analytics.

1. Na seção **Banco de dados de vetores**, escolha o método para criar o armazenamento de vetores e selecione **Amazon Neptune Analytics (GraphRAG)** como seu armazenamento de vetores para armazenar as incorporações que serão usadas na consulta. Para criar um armazenamento de vetores, você pode usar um dos seguintes métodos:
   + Recomendamos que você use o método de **Crie rapidamente um novo armazenamento de vetores** para começar rapidamente a criar um armazenamento de vetores. Escolha **Amazon Neptune Analytics (GraphRAG**) como armazenamento de vetores. Com essa opção, não é necessário ter nenhum recurso existente do Neptune Analytics. A base de conhecimento gera e armazena automaticamente incorporações de documentos no Amazon Neptune, com uma representação em grafo das entidades e das respectivas relações derivadas do corpo do documento.
   + Como alternativa, se você já criou o grafo e o índice de vetores do Neptune Analytics, poderá usar a opção **Escolha uma armazenamento de vetores que você criou**. Escolha **Amazon Neptune Analytics (GraphRAG**) como armazenamento de vetores e identifique o ARN do grafo, o nome dos campos de vetor e o nome dos campos de metadados no índice de vetores. Para obter mais informações, consulte [Pré-requisitos para usar o armazenamento de vetores que você criou para uma base de conhecimento](knowledge-base-setup.md).

1. Escolha **Próximo** e analise os detalhes da base de conhecimento. É possível editar qualquer seção antes de começar a criar a base de conhecimento.
**nota**  
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.

1. Escolha **Criar base de conhecimento**. Enquanto o Amazon Bedrock estiver criando a base de conhecimento, você deve ver o status **Em andamento**. É necessário aguardar a conclusão da criação para poder sincronizar uma fonte de dados.

1. Depois que o Amazon Bedrock terminar de criar a base de conhecimento, para configurar uma fonte de dados, siga as instruções em [Conectar uma fonte de dados à base de conhecimento](data-source-connectors.md).

------
#### [ API ]

**Para criar uma base de conhecimento para o Neptune Analytics usando o AWS CLI**

1. Primeiro, crie uma fonte de dados usando a configuração de enriquecimento de contexto. Para realizar essa operação, envie uma solicitação [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html) com um [endpoint de tempo de compilação do recurso Agentes para Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). 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 arquivo `input.json`.

   ```
   {
       "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 o `modelArn` gráfico a partir de seus documentos, você pode usar Claude 3 Haiku (conforme mostrado no exemplo anterior), Claude Haiku 4.5 e a família Amazon Nova (incluindo modelos Nova 2 e Nova com modalidade de entrada de texto). Para ver os modelos de fundação disponíveis em sua região, consulte [Modelos de fundação suportados no Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/models-supported.html).
**nota**  
Alguns modelos são suportados somente por meio de perfis de inferência entre regiões. Quando você invoca um perfil de inferência entre regiões no Amazon Bedrock, sua solicitação e os dados a serem ingeridos se originam de uma região de origem e são automaticamente roteados para uma das regiões de destino definidas nesse perfil, otimizando o desempenho. As regiões de destino para perfis de inferência globais entre regiões incluem todas as regiões comerciais. Por exemplo, você pode especificar o `modelArn` para uma chamada entre regiões com base nos EUA da região us-west-2 usando o formato. `arn:aws:bedrock:us-west-2:account-id:inference-profile/us.anthropic.claude-haiku-4-5-20251001-v1:0`

   Para ver os requisitos de política para que sua função use perfis de inferência, consulte [Pré-requisitos para](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-prereq.html) perfis de inferência entre regiões. Para obter orientação sobre como usar perfis de inferência para selecionar regiões de origem e destino, consulte [Regiões e modelos compatíveis para perfis de inferência](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-profiles-support.html). Seus dados são armazenados somente na sua região de origem correspondente à base de conhecimento do Amazon Bedrock e à instância do Amazon Neptune Analytics. A região de destino é usada somente para inferência.

1. Para criar uma base de conhecimento, envie uma solicitação [https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateKnowledgeBase.html) com um [endpoint de tempo de compilação do recurso Agentes para Amazon Bedrock](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#bra-bt). 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"
           }
       }
   }
   ```

1. Enquanto a aplicação baseada em GraphRAG está em execução, você pode continuar usando as operações de API de bases conhecimento 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.

------

## Sincronizar as fontes de dados
<a name="knowledge-base-build-graphs-sync"></a>

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 na fonte de dados em incorporações de vetores, com base no modelo de incorporação de vetores e nas configurações especificadas.

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 ter mais informações e saber como sincronizar sua fonte de dados usando o console e a API, consulte [Sincronizar os dados com a base de conhecimento do Amazon Bedrock](kb-data-source-sync-ingest.md).

## Ingerir alterações na base de conhecimento
<a name="knowledge-base-build-graphs-ingest"></a>

Ao usar o Amazon S3 como fonte de dados, você pode modificar a 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 usando 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 de API `KnowledgeBaseDocuments` para indexar os documentos que você envia diretamente no armazenamento de vetores configurado para a base de conhecimento. Também é possível 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 [Ingerir alterações diretamente em uma base de conhecimento](kb-direct-ingestion.md).

## Testar a base de conhecimento
<a name="knowledge-base-build-graphs-test"></a>

Agora que você configurou a base de conhecimento, pode testá-la enviando consultas e gerando respostas.

O código a seguir mostra um comando de exemplo 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 [Consultar uma base de conhecimento conectada a um grafo do Amazon Neptune Analytics](kb-test-neptune.md).