Este repositório fornece código de amostra para implementar um aplicativo de resposta a perguntas usando a técnica de geração aumentada de recuperação (RAG) com a Amazon Bedrock. Uma implementação de pano consiste em duas partes:
Um pipeline de dados que ingere os documentos (normalmente armazenados na Amazon S3) em uma base de conhecimento, ou seja, um banco de dados vetorial, como a Amazon OpenSearch Service Serversless (AOSS), para que esteja disponível para pesquisa quando uma pergunta é recebida.
Um aplicativo que recebe uma pergunta do usuário, procura a base de conhecimento para obter informações relevantes (contexto) e, em seguida, cria um prompt que inclui a pergunta e o contexto e o fornece a um LLM para gerar uma resposta.
O Data Pipeline representa um levantamento pesado indiferenciado e pode ser implementado usando agentes da Amazon Bedrock para base de conhecimento. Agora, podemos conectar um balde S3 a um banco de dados vetorial, como AOSS, e fazer com que um agente de rock leia os objetos (html, pdf, text etc.), compensá -los e depois converter esses pedaços em incorporados usando o modelo de incorporação do Amazon Titan e armazenar essas incorporações em aoss. Tudo isso sem precisar criar, implantar e gerenciar o pipeline de dados.
Depois que os dados estiverem disponíveis na base de conhecimento do Bedrock, um aplicativo de resposta a perguntas pode ser construído usando o seguinte padrão arquitetônico.

Siga as etapas listadas abaixo para criar e executar a solução RAG. O blog_post.md descreve esta solução em detalhes.
Inicie o modelo do AWS CloudFormation incluído neste repositório usando um dos botões da tabela abaixo. O modelo de formação de nuvem cria os seguintes recursos na sua conta AWS: Amazon OpenEarch Service Serverless (AOSS), Amazon S3 Bucket, IAM Funções para o agente e notebook da Amazon Bedrock Base e um notebook da Amazon Sagemaker com este repositório clonado para executar as próximas etapas.
| Região da AWS | Link |
|---|---|
| US-EAST-1 (N. Virginia) | ![]() |
| US-West-2 (Oregon) | ![]() |
Siga as instruções em Build uma solução de resposta à pergunta baseada em RAG usando a base de conhecimento da Amazon Bedrock e Amazon OpenEnsearch Service Sem servidor sem servidor
Consulte contribuindo para mais informações.
Esta biblioteca está licenciada sob a licença MIT-0. Veja o arquivo de licença.