11. 학습의 단계_AWS Bedrock_ 두번째 강의 -7일차 -

 2025년 4월 29일

- Bedrock 두번째 강의 수강 시작.


-------

1단계. 학습의 단계

1. AWS Bedrock


첫번째 강의) Building Multi-Agentic AI Workflows on AWS Bedrock: 수강완료 (2025/4/13~04/16)
두번째 강의) Learn Agentic AI Basics, Amazon Bedrock Multi-Agent Framework, Build 2 Use Cases- Hotel Booking & Multi-Agent Travel App: 수강시작 (2025/4/29~)

I. 수강 전 기대
첫번째 강의에서 아쉬웠던 Hands-on을 조금 더 해볼 수 있을 것으로 기대함. 커리큘럼을 보니 간단하지만 Bedrock에서 만든 multi agent를 프론트로 배포하는 것도 배울 수 있는 것으로 보임.

II. 수업내용

1일차(4/29): 앞으로 배울 내용 개괄 + AI Agent 5가지 요소 (Planning, Tools & Actions, Memory, Guardrails, Agent Communication)
2일차(4/30): 어제 배운 AI Agent의 기능 중 첫번째 Planning에 관한 Demo ~ Agent Communication
3일차(5/1): Deep dive - Amazon Bedrock Agents (Agent creation 및 setting)
4일차(5/6): How do Agents work? ~ Use Case 1 - Hotel Booking Agent
5일차(5/7): Use Case 1 - Hotel Booking Agent ~ Agent Creation
6일차(5/14): Agent Integration with Knowledge Bases for Room Information ~ Hotel Room Availability
7일차(5/19): Hotel Room Booking - DynamoDB ~ Hotel Room Booking - Agent & Lambda & Action Group Integration

Use Case 1을 통해서 Agent를 생성하고, KB를 연동하고, 호텔 방의 예약 가능 여부를 확인하는 부분까지 진행했다. 마지막으로 Agent가 호텔 방을 예약하도록 하는 파트다.

Hotel Room Booking 구현을 위해 다음 4가지를 진행한다.
- DynameDB 테이블 구성 (hotelRoomBookingTable)
- Action Group 2 - AWS Lambda, OpenAPI Schema (roomBooking_AG)
- Guardrails - Bedrock Guardrails (HotelBookingGuardrails)
- Memory - Long Term & Short Term Memory

*AWS 서비스 생성 시에 어떤 region에 있는지 반드시 재확인 후 진행하기.
강의내용대로 DynamoDB 만들고 Lambda 생성하였는데 계속 해결되지 않는 문제가 있어서, 찾다보니 Region을 기존에 사용하던 Oregon이 아닌 다른 곳에서 진행 중이었음.

이번 강의를 통해서는 Lambda Function을 통해, 사용자의 인풋에 맞는 호텔 방이 DB에 존재하는지 체크하는 기능과, 만약 존재하지 않는다면 Error 메시지를 출력하고, 존재한다면 Booking ID를 생성하여 별도 DB에 저장하는 기능의 Lambda를 작성하였다.

그 결과 캡쳐와 같이 새로운 Booking Table의 레코드가 생성되었다.


위와 같이 새롭게 생성한 Lambda Function을 Bedrock Agent에서 Invoke하여 사용하도록 하기 위해서는, 해당 Lambda에서 Add permission을 아래와 같이 설정하여 Bedrock Agent가 Lambda를 call하는데 있어 제약이 없도록 해야한다.


P.S. AWS Cost explore를 보다가 $30이 찍혀있길래 깜짝 놀라서 원인을 찾아보니 'Knowledge bases" 때문이었다. Knowledge base에 PDF를 등록하게 되면 AWS에서는 모든 단어들을 추출하고 Titan Embeddings라는 임베딩 모델을 통해 벡터 데이터로 변경하게 된다. 이렇게 변경된 벡터 데이터는 S3에 저장되고 또한 Opensearch 내 인덱스로 저장된다. 이 과정에서 Knowledge base 과금과 Opensearch 과금이 이중으로 발생된 것이다.

AI Agent가 더 정확한 정보를 참조할 수 있도록 PDF 파일 1개를 추가하였는데, 이로 인해 1주일도 안되는 기간에 30불의 비용이 부과된 것은 다소 놀랍다. 그렇다면 AI Agent의 학습 원천 신뢰도를 높이기 위해 PDF를 고려하는 것은 비용적으로 좋은 선택지가 되지 못할 수 있다는 의미다. 비용적으로 더 나은 대안을 우선 찾고, 그럼에도 꼭 필요한 내용에 대해서면 PDF를 Knowledge Base로 추가해야겠다는 생각이 든다.


결과적으로 예상치 못한 비용 부과에 대해서는 AWS 측에 양해를 구했고, 담당자가 본인의 사정을 듣더니 의도치 않은 비용 지불에 대해 exceptional waiver를 해주기로 하였다. 결과적으로 위 비용은 지불하지 않게 될 듯하다. 그러나 AWS 과금에 대해서는 늘 경각심을 가지고 주의해야겠다는 생각을 하였다.

아래 이메일은 요청에 따라 waive 해주겠다는 확인 이메일. 매번 느끼는 것이지만 AWS, Amazon 모두 매우 높은 수준으로 CS 응대를 해준다.



2. N8N
3. Claude MCP
(4. LangChain?)
(5. A2A?)


댓글

이 블로그의 인기 게시물

20. 학습의 단계_n8n -1일차 (시작) -

01. 1억~10억 비즈니스 매매의 시대: 실력이 승부를 가른다

31. 서비스 구축단계_세컨브레인 -2,3일차: 구현 (2. 채널연결 완료) -