Inspiration
Adults, especially students in college lead a very busy and tight schedule that includes attending lectures, clubs, leading activities, paying rent and utility bills, apart from their part-time jobs. Thus 'Student Planning aid' is an attempt to help them by creating alert logs as a reminder.
What it does
Student Planning aid gets the details of all the events, transactions, and activities from a JSON file stored in the local computer and uses the Strands agent SDK to analyze the contents by date and retrieve important activities which are due with in 3 days. A log file is generated that stores the activities in the local computer system.
How we built it
"Student Planning aid" is is built with Strands SDK in Type Script. The agent code utilizes a model from a huge list of active foundation models in Amazon bedrock. The agent is built to retrieve content from a local JSON file, analyze the contents sequentially first with a custom tool and then using a vended tool [FileEditor] to execute tasks, guardrails as messages in the agent for contextualization, session management capability to store the agent responses in a local directory, and a docker cron job to automatically run the application and generate logs. The information in the buckets are secure with right IAM policies restricting the availability of buckets to only selected services and resources associated with the model that is configured in Bedrock. The first custom tool analyzes the file and checks for file existence, confirming it's not a directory but an absolute path. The second is a vended tool that analyses the file and stores the content in a local directory. The agent is deployed in docker and a cron job runs the agent everyday, except weekends at a specific time to get information and store responses in a log file which shows important activities that are scheduled with in 3 days.
Challenges we ran into
The first challenge was to get the right path of the JSON file stored in the local computer system as the code was unable to retrieve relative path and required absolute path. The second challenge was tool invoking as the agent would not check the tool without the right configuration in the z object inside the tool. The configuration with right fields are important to get the input path details and store the agent responses in the right local file. The third challenge was to design the tool calling for just using one vended [FileEditor] tool or a second custom tool for input file check. Model would run successfully locally but required right authorization to run, once deployed in docker which resembled production like deployment.
What's next for Student Planning aid for humans
The docker logs can be integrated with third party tools for better visual presentation.
Built With
- amazon-web-services
- bedrock
- s3-bucket
- strands-sdk
- tools
- typescript
- vended
