Crie uma base de conhecimento - Amazon Bedrock

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

nota

Você não pode criar uma base de conhecimento com um usuário root. Faça login com um usuário do IAM antes de iniciar essas etapas.

Como parte da criação de uma base de conhecimento, você configura uma fonte de dados e um armazenamento vetorial de sua escolha.

Selecione a guia correspondente ao seu método de escolha e siga as etapas.

Console
Parar criar uma base de conhecimento
  1. Faça login na função AWS Management Console usando uma função do IAM com as permissões do Amazon Bedrock e abra o console do Amazon Bedrock em https://console.aws.amazon.com/bedrock/.

  2. No painel de navegação esquerdo, selecione Bases de conhecimento.

  3. Na seção Bases de conhecimento, selecione Criar base de conhecimento.

  4. Na página Fornecer detalhes da base de conhecimento, defina as seguintes configurações:

    1. (Opcional) Na seção Detalhes da base de conhecimento, altere o nome padrão e forneça uma descrição para sua base de conhecimento.

    2. Na seção de permissões do IAM, escolha uma função AWS Identity and Access Management (IAM) que forneça permissão ao Amazon Bedrock para acessar outros AWS serviços. Você pode deixar o Amazon Bedrock criar a função de serviço ou escolher uma função personalizada que você criou.

    3. (Opcional) Adicione tags à sua base de conhecimento. Para ter mais informações, consulte Marcar recursos.

    4. Escolha Próximo.

  5. Na página Escolher fonte de dados, selecione sua fonte de dados a ser usada na base de conhecimento:

    1. Siga as etapas de configuração da conexão para a fonte de dados selecionada. Consulte Fontes de dados compatíveis para selecionar sua fonte de dados e seguir as etapas de configuração da conexão do console.

    2. (Opcional) Para definir as seguintes configurações avançadas como parte da configuração da fonte de dados, expanda a seção Configurações avançadas - opcional.

      Para KMS key configurações, você pode escolher uma chave personalizada ou usar a chave de criptografia de dados padrão fornecida.

      Ao converter seus dados em incorporações, Amazon Bedrock criptografa seus dados transitórios com uma chave que AWS possui e gerencia, por padrão. Você pode usar sua própria chave KMS. Para ter mais informações, consulte Criptografia do armazenamento de dados temporário durante a ingestão de dados.

      Para as configurações da política de exclusão de dados, você pode escolher:

      • Excluir: exclui todos os dados pertencentes à fonte de dados do armazenamento vetorial após a exclusão de uma base de conhecimento ou recurso de fonte de dados. Observe que o armazenamento vetorial subjacente em si não é excluído, apenas os dados. Esse sinalizador será ignorado se uma AWS conta for excluída.

      • Reter: retém todos os dados em seu armazenamento vetorial após a exclusão de uma base de conhecimento ou recurso de fonte de dados.

    3. Para definir as seguintes configurações de fragmentação e análise de conteúdo como parte da configuração da fonte de dados, acesse a seção Divisão e análise de conteúdo.

      Escolha uma das seguintes opções de agrupamento:

      • Fragmentação de tamanho fixo: conteúdo dividido em partes de texto com o tamanho aproximado do token definido. Você pode definir o número máximo de tokens que não devem exceder um bloco e a porcentagem de sobreposição entre blocos consecutivos.

      • Fragmentação padrão: conteúdo dividido em partes de texto de até 300 tokens. Se um único documento ou parte do conteúdo contiver menos de 300 tokens, o documento não será mais dividido.

      • Fragmentação hierárquica: conteúdo organizado em estruturas aninhadas de partes pai-filho. Você define o tamanho máximo do token do fragmento principal e o tamanho máximo do token do fragmento secundário. Você também define o número absoluto de tokens de sobreposição entre cada parte principal e o pai com cada filho.

      • Fragmentação semântica: conteúdo organizado em partes de texto semanticamente semelhantes ou grupos de frases. Você define o número máximo de frases ao redor da frase de destino/atual para agrupar (tamanho do buffer). Você também define o limite do percentil do ponto de interrupção para dividir o texto em partes significativas.

      • Sem fragmentação: cada documento é tratado como um único fragmento de texto. Talvez você queira pré-processar seus documentos dividindo-os em arquivos separados.

      nota

      Você não pode alterar a estratégia de fragmentação depois de criar a fonte de dados.

      Você pode optar por usar Amazon Bedrock o modelo básico para analisar documentos para analisar mais do que o texto padrão. Você pode analisar dados tabulares em documentos com sua estrutura intacta, por exemplo. Veja Amazon Bedrock os preços para obter informações sobre o custo dos modelos de fundação.

      Você pode optar por usar uma AWS Lambda função para personalizar sua estratégia de fragmentação e como os atributos/campos de metadados do documento são tratados e ingeridos. Forneça a localização do Amazon S3 bucket para a entrada e saída da função Lambda.

    4. Escolha Próximo.

  6. Na página Selecionar modelo de incorporação e configurar armazenamento de vetores, escolha um modelo de incorporação compatível para converter seus dados em incorporações vetoriais para a base de conhecimento.

  7. Na seção Banco de dados vetoriais, escolha uma das seguintes opções para armazenar as incorporações vetoriais para sua base de conhecimento:

    • Crie rapidamente uma nova loja de vetores — O Amazon Bedrock cria uma coleção de pesquisa vetorial Amazon OpenSearch Serverless para você. Com essa opção, uma coleção pública de pesquisa vetorial e um índice vetorial são configurados para você com os campos e configurações necessários. Depois que a coleção for criada, você poderá gerenciá-la no console Amazon OpenSearch Serverless ou por meio da AWS API. Para obter mais informações, consulte Como trabalhar com coleções de pesquisa vetorial no Amazon OpenSearch Service Developer Guide. Se você selecionar essa opção, poderá habilitar opcionalmente as seguintes configurações:

      1. Para habilitar réplicas ativas redundantes, de forma que a disponibilidade do seu armazenamento vetorial não seja comprometida em caso de falha na infraestrutura, selecione Habilitar redundância (réplicas ativas).

        nota

        Recomendamos que você deixe essa opção desativada ao testar sua base de conhecimento. Quando você estiver pronto para implantar na produção, recomendamos que você habilite réplicas ativas redundantes. Para obter informações sobre preços, consulte Preços do OpenSearch Serverless

      2. Para criptografar o armazenamento vetorial automatizado com uma chave gerenciada pelo cliente, selecione Adicionar chave KMS gerenciada pelo cliente para o vetor Amazon OpenSearch Serverless — opcional e escolha a chave. Para ter mais informações, consulte Criptografia das informações passadas para o Amazon OpenSearch Service.

    • Selecione um armazenamento de vetores que você criou — Selecione o serviço que contém um banco de dados vetoriais que você já criou. Preencha os campos para permitir que o Amazon Bedrock mapeie informações da base de conhecimento para seu banco de dados, para que ele possa armazenar, atualizar e gerenciar incorporações. Para obter mais informações sobre como esses campos são mapeados para os campos que você criou, consulteConfigure um índice vetorial para sua base de conhecimento em um repositório de vetores compatível.

      nota

      Se você usa um banco de dados no Amazon OpenSearch Serverless, Amazon Aurora ou MongoDB Atlas, você precisa ter configurado previamente os campos em Mapeamento de campos. Se você usa um banco de dados em Pinecone ouRedis Enterprise Cloud, você pode fornecer nomes para esses campos aqui e o Amazon Bedrock os criará dinamicamente no armazenamento de vetores para você.

  8. Escolha Próximo.

  9. Na página Revisar e criar, verifique a configuração e os detalhes da sua base de conhecimento. Escolha Editar em qualquer seção que você precise modificar. Quando estiver satisfeito, selecione Criar base de conhecimento.

  10. O tempo necessário para criar a base de conhecimento depende da quantidade de dados que você forneceu. Quando a base de conhecimento termina de ser criada, o status da base de conhecimento muda para Pronto.

API

Para criar uma base de conhecimento, envie uma CreateKnowledgeBasesolicitação com um endpoint de tempo de construção do Agents for Amazon Bedrock e forneça o nome, a descrição, as instruções sobre o que ele deve fazer e o modelo básico com o qual orquestrar.

nota

Se você preferir permitir que o Amazon Bedrock crie e gerencie um armazenamento de vetores para você no Amazon OpenSearch Service, use o console. Para ter mais informações, consulte Crie uma base de conhecimento.

  • Forneça o ARN com permissões para criar uma base de conhecimento no campo roleArn.

  • Forneça o modelo de incorporação a ser usado no campo embeddingModelArn do objeto knowledgeBaseConfiguration.

  • Forneça a configuração para o armazenamento de vetores no objeto storageConfiguration. Para ter mais informações, consulte Configure um índice vetorial para sua base de conhecimento em um repositório de vetores compatível.

    • Para um banco OpenSearch de dados do Amazon Service, use o opensearchServerlessConfiguration objeto.

    • Para um Pinecone banco de dados, use o pineconeConfiguration objeto.

    • Para um Redis Enterprise Cloud banco de dados, use o redisEnterpriseCloudConfiguration objeto.

    • Para um banco de dados Amazon Aurora, use o rdsConfiguration objeto.

    • Para um banco de dados MongoDB Atlas, use o objeto. mongodbConfiguration

Depois de criar uma base de conhecimento, crie uma fonte de dados contendo os documentos ou o conteúdo da sua base de conhecimento. Para criar a fonte de dados, envie uma CreateDataSourcesolicitação. Consulte Fontes de dados compatíveis para selecionar sua fonte de dados e siga o exemplo de configuração de conexão da API.

  • Forneça as informações de conexão para os arquivos da fonte de dados no dataSourceConfiguration campo.

  • Especifique como dividir as fontes de dados no vectorIngestionConfiguration campo.

    nota

    Você não pode alterar a configuração de fragmentação depois de criar a fonte de dados.

  • Forneça o dataDeletionPolicy para sua fonte de dados. Você pode extrair DELETE todos os dados pertencentes à fonte de dados do armazenamento vetorial após a exclusão de uma base de conhecimento ou recurso de fonte de dados. Observe que o armazenamento vetorial subjacente em si não é excluído, apenas os dados. Esse sinalizador será ignorado se uma AWS conta for excluída. Você pode verificar RETAIN todos os dados em seu armazenamento vetorial após a exclusão de uma base de conhecimento ou recurso de fonte de dados.

  • (Opcional) Ao converter seus dados em incorporações, o Amazon Bedrock criptografa seus dados com uma chave que AWS possui e gerencia, por padrão. Para usar sua própria chave KMS, inclua-a no serverSideEncryptionConfiguration objeto. Para ter mais informações, consulte Criptografia de recursos da base de conhecimento.

Defina configurações de segurança para sua base de conhecimento

Depois de criar uma base de conhecimento, talvez seja necessário definir as seguintes configurações de segurança:

Configure políticas de acesso a dados para sua base de conhecimento

Se você estiver usando uma função personalizada, defina as configurações de segurança para sua base de conhecimento recém-criada. Se você permitir que o Amazon Bedrock crie uma função de serviço para você, você pode pular esta etapa. Siga as etapas na guia correspondente ao banco de dados que você configurou.

Amazon OpenSearch Serverless

Para restringir o acesso à coleção Amazon OpenSearch Serverless à função de serviço da base de conhecimento, crie uma política de acesso a dados. Você pode fazer isso das seguintes formas:

Use a seguinte política de acesso a dados, especificando a coleção Amazon OpenSearch Serverless e sua função de serviço:

[ { "Description": "${data access policy description}", "Rules": [ { "Resource": [ "index/${collection_name}/*" ], "Permission": [ "aoss:DescribeIndex", "aoss:ReadDocument", "aoss:WriteDocument" ], "ResourceType": "index" } ], "Principal": [ "arn:aws:iam::${account-id}:role/${kb-service-role}" ] } ]
Pinecone, Redis Enterprise Cloud or MongoDB Atlas

Para integrar um índice vetorial MongoDB Atlas PineconeRedis Enterprise Cloud, anexe a seguinte política baseada em identidade à sua função de serviço da base de conhecimento para permitir que ela acesse AWS Secrets Manager o segredo do índice vetorial.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase" ], "Resource": "*", "Condition": { "StringEquals": { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:iam::${region}:${account-id}:secret:${secret-id}" } } }] }

Configure políticas de acesso à rede para sua base de conhecimento Amazon OpenSearch Serverless

Se você usar uma coleção privada Amazon OpenSearch Serverless para sua base de conhecimento, ela só poderá ser acessada por meio de um VPC endpoint AWS PrivateLink . Você pode criar uma coleção privada Amazon OpenSearch Serverless ao configurar sua coleção vetorial Amazon OpenSearch Serverless ou pode tornar privada uma coleção Amazon OpenSearch Serverless existente (incluindo uma que o console Amazon Bedrock criou para você) ao configurar sua política de acesso à rede.

Os seguintes recursos no Amazon OpenSearch Service Developer Guide ajudarão você a entender a configuração necessária para coleções privadas do Amazon OpenSearch Serverless:

  • Para obter mais informações sobre como configurar um VPC endpoint para uma coleção privada do Amazon OpenSearch Serverless, consulte Acessar o Amazon Serverless usando um endpoint de OpenSearch interface ().AWS PrivateLink

  • Para obter mais informações sobre políticas de acesso à rede no Amazon OpenSearch Serverless, consulte Acesso à rede para Amazon OpenSearch Serverless.

Para permitir que uma base de conhecimento do Amazon Bedrock acesse uma coleção privada do Amazon OpenSearch Serverless, você deve editar a política de acesso à rede da OpenSearch coleção Amazon Serverless para permitir que o Amazon Bedrock seja um serviço de origem. Selecione a guia correspondente ao seu método de escolha e siga as etapas.

Console
  1. Abra o console do Amazon OpenSearch Service em https://console.aws.amazon.com/aos/.

  2. No painel de navegação esquerdo, selecione Coleções. Em seguida, escolha sua coleção.

  3. Na seção Rede, selecione a Política associada.

  4. Selecione a opção Editar.

  5. Em Selecionar método de definição de política, faça o seguinte:

    • Deixe Selecionar método de definição de política como editor visual e defina as seguintes configurações na seção Regra 1:

      1. (Opcional) No campo Nome da regra, insira um nome para a regra de acesso à rede.

      2. Em Acessar coleções de, selecione Privado (recomendado).

      3. Selecione o acesso privado do AWS serviço. Na caixa de texto, insirabedrock.amazonaws.com.

      4. Desmarque a opção Habilitar acesso aos OpenSearch painéis.

    • Escolha JSON e cole a política a seguir no editor JSON.

      [ { "AllowFromPublic": false, "Description":"${network access policy description}", "Rules":[ { "ResourceType": "collection", "Resource":[ "collection/${collection-id}" ] }, ], "SourceServices":[ "bedrock.amazonaws.com" ] } ]
  6. Selecione Atualizar.

API

Para editar a política de acesso à rede para sua coleção Amazon OpenSearch Serverless, faça o seguinte:

  1. Envie uma GetSecurityPolicysolicitação com um OpenSearch endpoint sem servidor. Especifique o name da política e especifique o type comonetwork. Observe o policyVersion na resposta.

  2. Envie uma UpdateSecurityPolicysolicitação com um OpenSearch endpoint sem servidor. No mínimo, especifique os seguintes campos:

    Campo Descrição
    name O nome da política
    Versão da política Eles policyVersion retornaram para você a partir da GetSecurityPolicy resposta.
    tipo O tipo de política de segurança. Especifique network.
    política A política a ser usada. Especifique o seguinte objeto JSON
    [ { "AllowFromPublic": false, "Description":"${network access policy description}", "Rules":[ { "ResourceType": "collection", "Resource":[ "collection/${collection-id}" ] }, ], "SourceServices":[ "bedrock.amazonaws.com" ] } ]

Para ver um AWS CLI exemplo, consulte Criação de políticas de acesso a dados (AWS CLI).

  • Use o console do Amazon OpenSearch Service seguindo as etapas em Criação de políticas de rede (console). Em vez de criar uma política de rede, observe a Política associada na subseção Rede dos detalhes da coleção.