Агенты для Amazon Bedrock позволяют разработчикам создавать разговорные агенты, которые понимают естественный язык с помощью моделей фундамента (FMS). В этом посте я создам агента Amazon Bendrock, который позволяет пользователям взаимодействовать с таблицей Dynamodb Amazon и базами знаний для Bedrock Amazon с использованием естественного языка.
Я направляю вас через настройку ресурсов, определяя группы действий агента, связывание функций AWS Lambda для выполнения операций DynamoDB и интеграции базы знаний для расширенного опыта разговора для предоставления более индивидуальных и контекстных ответов на запросы пользователей. Все это с командой «CDK Deploy» с использованием комплекта разработки AWS Cloud (CDK).
В конце концов вы поймете, как создать интеллектуального разговора, который упрощает взаимодействие с базой данных, предоставляет персонализированные ответы и предоставляет удобный опыт.

Этот агент действует как интерфейс для пользователя для ввода информации и выполнения запросов.
Действия пользователя запускают функции AWS Lambda на основе определения группы действий, действий, которые агент может помочь пользователю выполнить три ключевых действиях: SpanAppointment, GetAppointment и Asktodaydate.
? Определение группы действий в Ag_Data.json и Amazon Bedrock Определение в Agent_data.json
Функции SpanAppointment и GetAppointment взаимодействуют с таблицей DynamoDB Amazon. Он хранит и получает данные о назначении по мере необходимости.
Функция AskTodayDate извлекает информацию о текущей дате, которая затем передается обратно пользователю через агента для Amazon Bedrock. Это позволяет пользователю получать обновления и подтверждения в режиме реального времени, касающиеся их действий планирования назначений.
Используя информацию, хранящуюся в базе знаний, агент может предоставить персонализированные рекомендации по массаже, адаптированные к уникальным потребностям клиента. Это может предложить наиболее подходящие типы массажа, продолжительность и любые дополнительные услуги, которые могут улучшить их опыт спа и решить их конкретные проблемы.
Например, если клиент упоминает боль и жесткость в шее, агент может извлечь из основания знаний и рекомендовать глубокий массаж ткани, сфокусированный на области шеи и плеча в сочетании с терапией горячим камнем для дополнительного расслабления и облегчения мышц.
✅ Уровень AWS : промежуточный - 200
Предварительные условия:
? Стоимость завершения :
✅ Клонировать репо
git clone https://github.com/build-on-aws/bedrock-agent-appointment-manager-dynamodb
✅ Идите к :
cd agent-appointment-manage
Создайте базу знаний Amzon, выполнив эти шаги и используя эти данные, затем в kb_data.json Измените значение "ancomed_base_id":
{
"description_kb": "Recommend the best massage. Recommend the best massage according to the user's preferences",
"knowledge_base_id": "XXXXXXXXXX"
}
✅ Создать виртуальную среду : выполнив шаги в Readme
python3 -m venv .venv
source .venv/bin/activate
Для Windows:
.venvScriptsactivate.bat
✅ Установите требования :
pip install -r requirements.txt
✅ Синтезируйте шаблон CloudFormation со следующей командой :
cdk synth --all
✅ Развертывание :
cdk deploy --all
Попробуйте агента в консоли Amazon Bendrock и улучшите инструкции агента, пока не найдете наилучший результат.


Этот код предназначен для создания трех типов агентов:
Тип строительного агента определяется в строке 130 atagement_appointment_manager_stack.py. Конструкция каждого типа агента зависит от существования файлов определения JSON для базы знаний и групп действий.
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 )В этом сообщении вы узнали, как создать разговорной агент Amazon Bedrock, который позволяет пользователям взаимодействовать с таблицей DynamoDB Amazon, используя естественный язык.
Комбинация агентов из моделей Bedrock, DynamoDB и обработки естественного языка Hrough Foundation (FMS) открывает захватывающие возможности для создания удобных приложений. Пользователи могут взаимодействовать с базами данных, используя простой язык, облегчая для нетехнических пользователей доступ и манипулировать данными.
Я призываю вас дальше изучить и расширить функциональность вашего разговорного агента на основе ваших конкретных требований. С правильным дизайном и реализацией вы можете создавать интеллектуальные агенты, которые революционизируют способ взаимодействия пользователей с данными.
Спасибо, что присоединились ко мне в этом путешествии, и я надеюсь, что этот пост вдохновил вас создать свои собственные инновационные решения с использованием агентов для Amazon Bedrock.
Смотрите Anploying для получения дополнительной информации.
Эта библиотека лицензирована по лицензии MIT-0. Смотрите файл лицензии.