Os agentes da Amazon Bedrock permitem que os desenvolvedores criem agentes de conversação que entendam a linguagem natural através de modelos de fundação (FMS). Nesta postagem do blog, criarei um agente da Amazon Bedrock que permita que os usuários interajam com uma tabela do Amazon DynamoDB e uma base de conhecimento para a Amazon Bedrock usando a linguagem natural.
Vou orientá-lo na configuração dos recursos, definindo os grupos de ação do agente, associando as funções da AWS Lambda para executar operações do DynamoDB e integrar a base de conhecimento para obter experiências de conversação aprimoradas para fornecer respostas mais personalizadas e com consciência de contexto às consultas do usuário. Tudo isso com um comando 'CDK implantar' usando o kit de desenvolvimento de nuvem da AWS (CDK).
No final, você entenderá como criar um agente de conversação inteligente que simplifica as interações do banco de dados, oferece respostas personalizadas e fornece uma experiência fácil de usar.

Esse agente atua como interface para o usuário inserir informações e fazer solicitações.
As ações do usuário acionam as funções da AWS Lambda com base na definição do grupo de ação, ações que o agente pode ajudar o usuário a executar três ações principais: SpanAppointment, GetAppointment e AskTodayDate.
? A definição do grupo de ação está em ag_data.json e a definição da Amazon Bedrock está em agente_data.json
As funções de SpanAppointment e GetAppointment interagem com uma tabela Amazon DynamoDB. Ele armazena e recupera os dados de nomeação, conforme necessário.
A função AskTodayDate recupera as informações de data atual, que são transmitidas de volta ao usuário através do agente para a Amazon Bedrock. Isso permite que o usuário receba atualizações e confirmações em tempo real sobre suas ações de agendamento de consultas.
Aproveitando as informações armazenadas na base de conhecimento, o agente pode oferecer recomendações de massagem personalizadas adaptadas às necessidades exclusivas do cliente. Pode sugerir os tipos de massagem mais adequados, durações e quaisquer serviços adicionais que possam aprimorar sua experiência no spa e abordar suas preocupações específicas.
Por exemplo, se um cliente mencionar dor e rigidez no pescoço, o agente pode extrair da base de conhecimento e recomendar uma massagem profunda de tecidos focada na área do pescoço e ombro, combinada com terapia de pedra quente para relaxamento adicional e alívio muscular.
✅ AWS Nível : Intermediário - 200
Pré -requisitos:
? Custo para concluir :
✅ Clone o repo
git clone https://github.com/build-on-aws/bedrock-agent-appointment-manager-dynamodb
✅ Vá para :
cd agent-appointment-manage
Crie a base de conhecimento da AMZON seguindo estas etapas e usando esses dados, em seguida, em kb_data.json edite o valor "Knowledge_Base_ID":
{
"description_kb": "Recommend the best massage. Recommend the best massage according to the user's preferences",
"knowledge_base_id": "XXXXXXXXXX"
}
✅ Crie o ambiente virtual : seguindo as etapas no ReadMe
python3 -m venv .venv
source .venv/bin/activate
para Windows:
.venvScriptsactivate.bat
✅ Instale os requisitos :
pip install -r requirements.txt
✅ SyntheSize o modelo de formação de nuvem com o seguinte comando :
cdk synth --all
✅ A implantação :
cdk deploy --all
Experimente o agente no console da Amazon Bedrock e melhore as instruções do agente até encontrar o melhor resultado.


Este código foi projetado para construir três tipos de agentes:
O tipo de agente que está sendo construído é definido na linha 130 de agent_appointment_manager_stack.py. A construção de cada tipo de agente depende da existência dos arquivos de definição JSON para a base de conhecimento e grupos de ação.
if kb_data and not ag_data :
agent_name = "spa_agent_withKB"
print ( "KB data" )
agent_knowledge_base_property = create_kb_property ( kb_data )
ag = CreateAgentWithKB ( self , "agentwithkb" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_knowledge_base_property , agent_resource_role . arn )
elif ag_data and not kb_data :
agent_name = "spa_agent_withag"
print ( "AG data" )
agent_action_group_properties = agent_action_group_property ( ag_data )
ag = CreateAgentWithAG ( self , "agentwithag" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_action_group_properties , agent_resource_role . arn )
elif ag_data and kb_data :
agent_name = "spa_agent_with_ag_kb"
print ( "AG and KB data" )
agent_action_group_properties = agent_action_group_property ( ag_data )
agent_knowledge_base_property = create_kb_property ( kb_data )
ag = CreateAgentWithKA ( self , "agentwithbooth" , agent_name , agent_data [ "foundation_model" ], agent_data [ "agent_instruction" ], agent_data [ "description" ], agent_knowledge_base_property , agent_action_group_properties , agent_resource_role . arn )
else :
agent_name = "spa_agent"
print ( "No data" )
ag = CreateAgent ( self , "agent" , agent_name , agent_data [ "description" ], agent_resource_role . arn )Nesta postagem do blog, você aprendeu a criar um agente de conversação da Amazon Bedrock que permite aos usuários interagir com uma tabela do Amazon DynamoDB usando a linguagem natural.
A combinação de agentes dos modelos Bedrock, DynamoDB e Processamento de Linguagem Natural Hrough (FMS) abre possibilidades emocionantes de criar aplicativos fáceis de usar. Os usuários podem interagir com os bancos de dados usando linguagem simples, facilitando os usuários não técnicos para acessar e manipular dados.
Convido você a explorar ainda mais e estender a funcionalidade do seu agente de conversação com base em seus requisitos específicos. Com o design e a implementação certos, você pode criar agentes inteligentes que revolucionam a maneira como os usuários interagem com os dados.
Obrigado por se juntar a mim nesta jornada, e espero que este post tenha inspirado você a criar suas próprias soluções inovadoras usando agentes para a Amazon Bedrock.
Consulte contribuindo para mais informações.
Esta biblioteca está licenciada sob a licença MIT-0. Veja o arquivo de licença.