Amazon Bedrock의 에이전트는 개발자가 FMS (Foundation Models)를 통해 자연어를 이해하는 대화 에이전트를 만들 수 있습니다. 이 블로그 게시물에서는 사용자가 Amazon DynamoDB 테이블과 상호 작용할 수있는 Amazon Bedrock 에이전트 및 자연 언어를 사용하여 Amazon Bedrock의 지식 기반을 만들 수 있습니다.
리소스 설정, 에이전트의 행동 그룹 정의, AWS Lambda 기능을 연결하여 DynamODB 운영을 실행하고, 대화 경험을 위해 지식 기반을 통합하여 사용자 쿼리에보다 개인화되고 상황을 인식하는 응답을 제공합니다. AWS Cloud Development Kit (CDK)를 사용하여 'CDK 배포'명령을 사용 하여이 모든 것.
결국, 데이터베이스 상호 작용을 단순화하고, 개인화 된 응답을 전달하며, 사용자 친화적 인 경험을 제공하는 지능적인 대화 에이전트를 구축하는 방법을 이해하게됩니다.

이 에이전트는 사용자가 정보를 입력하고 요청하는 인터페이스 역할을합니다.
사용자의 조치는 액션 그룹 정의를 기반으로 AWS Lambda 기능을 유발합니다. 대리인이 스패닝, GetAppointment 및 AskTodAyDate의 세 가지 주요 작업을 수행하는 데 도움이 될 수있는 조치.
? 액션 그룹 정의는 ag_data.json에 있고 Amazon Bedrock 정의는 Agent_data.json에 있습니다.
SpanAppointment 및 getAppointment 기능은 Amazon DynamoDB 테이블과 상호 작용합니다. 필요에 따라 약속 데이터를 저장하고 검색합니다.
AskTodayDate 함수는 현재 날짜 정보를 검색 한 다음 Amazon Bedrock의 에이전트를 통해 사용자에게 다시 전달됩니다. 이를 통해 사용자는 약속 일정 조치와 관련하여 실시간 업데이트 및 확인을받을 수 있습니다.
지식 기반에 저장된 정보를 활용하여 에이전트는 고객의 고유 한 요구에 맞는 개인화 된 마사지 권장 사항을 제공 할 수 있습니다. 스파 경험을 향상시키고 특정 문제를 해결할 수있는 가장 적합한 마사지 유형, 지속 시간 및 추가 서비스를 제안 할 수 있습니다.
예를 들어, 고객이 목 통증과 강성을 언급하는 경우, 에이전트는 지식 기반에서 끌어 당기고 목과 어깨 부위에 중점을 둔 깊은 조직 마사지를 권장 할 수 있으며, 이완 및 근육 완화를 추가하기 위해 뜨거운 석재 요법과 결합합니다.
✅ AWS 레벨 : 중간 - 200
전제 조건 :
? 완료 비용 :
REPO를 복제하십시오
git clone https://github.com/build-on-aws/bedrock-agent-appointment-manager-dynamodb
✅ 로 이동 :
cd agent-appointment-manage
이 단계를 수행 하고이 데이터를 사용하여 Amzon Knowledge Base를 작성 한 다음 KB_DATA.JSON에서 "Knowledge_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 Bedrock Console에서 에이전트를 사용해보고 최상의 결과를 찾을 때까지 에이전트의 지침을 개선하십시오.


이 코드는 세 가지 유형의 에이전트를 구축하도록 설계되었습니다.
건설중인 에이전트 유형은 Agent_Appointment_Manager_stack.py의 130 행에 정의됩니다. 각 유형의 에이전트의 구성은 지식 기반 및 행동 그룹에 대한 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 DynamoDB 테이블과 상호 작용할 수있는 Amazon Bedrock Conversational Agent를 만드는 방법을 배웠습니다.
기반암, DynamoDB 및 자연어 처리 Hrough Foundation 모델 (FMS)의 에이전트의 조합은 사용자 친화적 인 응용 프로그램을 구축 할 수있는 흥미로운 가능성을 열어줍니다. 사용자는 일반 언어를 사용하여 데이터베이스와 상호 작용할 수 있으므로 기술이 아닌 사용자가 데이터에 쉽게 액세스하고 조작 할 수 있습니다.
특정 요구 사항에 따라 대화 상담원의 기능을 더 탐색하고 확장하는 것이 좋습니다. 올바른 설계 및 구현을 통해 사용자가 데이터와 상호 작용하는 방식에 혁명을 일으키는 지능형 에이전트를 만들 수 있습니다.
이 여행에 참여해 주셔서 감사합니다.이 게시물이 Amazon Bedrock의 에이전트를 사용하여 자신만의 혁신적인 솔루션을 만들도록 영감을 주셨기를 바랍니다.
자세한 내용은 기여를 참조하십시오.
이 라이브러리는 MIT-0 라이센스에 따라 라이센스가 부여됩니다. 라이센스 파일을 참조하십시오.