L.A.S.E.R. - Large Language Model Activity Scheduler & Event Recommender 📅

Project Description

L.A.S.E.R. is an application that enables users to input an activity that is desired to be added to a schedule. The project uses a generative pre-trained transformer to fetch the current calendar data from the desired endpoints (currently Google Calendar API, but can be changed easily to other calendars) and finds a suitable time slot to place the new desired activity based on real-world requirements. After user approval, it adds the new event to the calendar.

Inspiration

The inspiration behind L.A.S.E.R. came from the idea of making the process of scheduling events and activities more efficient and user-friendly. We realized that planners need to quickly adapt to changing requirements. Quick reschedules and extremely detailed data standards require lots of manual work to apply to a fully booked schedule. By leveraging the OpenAIs GPT 3.5, L.A.S.E.R. aims to streamline this process and make it more intuitive for planners.

What it does

  1. User inputs the activity details in either direct values or sentence format.
  2. The input is parsed and converted into a JSON object representing the desired activity.
  3. The LLM analyzes the generated JSON object and the existing schedule and identifies the most suitable time slot for the new activity.
  4. A complete JSON representing the updated calendar is generated and checked for validity.
  5. The user validates the desired scheduled time.
  6. The new task is added to the calendar via the API.

How we built it

We built L.A.S.E.R. using Python as the primary programming language. For natural language processing, we utilized the OpenAI GPT-based models for parsing the user's input and generating the JSON objects. We integrated the Google Calendar API for fetching and updating the user's calendar data. The entire system is designed to be modular, scalable, and easily maintainable.

Challenges we ran into

One of the challenges we faced was accurately parsing the user's input when provided in sentence format. It required fine-tuning the LLM prompts to ensure that the extracted data was accurate and relevant. Another challenge was finding the optimal time slots for the activities, as we had to consider various factors such as time, duration, and user preferences.

Accomplishments that we're proud of

We are proud of the seamless integration of NLP and calendar management, providing users with an intuitive and efficient scheduling experience. We are also proud of the robust and scalable architecture, which allows for easy updates and improvements in the future.

What we learned

Throughout the development of L.A.S.E.R., we gained valuable experience in working with LLM models and APIs, particularly in the context of calendar management. We also learned about the importance of creating a user-friendly interface and designing a system that is easily adaptable to future enhancements.

What's next for L.A.S.E.R.

Ideally NASA would have their own Large Language Model that could be used with multiple different applications. NASA could securely manage their own data instead of relying on the OpenAI API. Additionally L.A.S.E.R would be integrated into existing NASA software.

Built With

  • davinci
  • googlecalendar-api
  • openai-api
  • python
Share this project:

Updates