Inspiration

ChatGPT is amazing but when we used it, we found that it cannot remember our preferences long term so we often found ourselves repeating ourselves when telling ChatGPT our preferences. For instance, one of us has a severe dietary restriction (both lactose and gluten intolerance) so every time we ask ChatGPT for recipe/restaurant recommendations we had to repeat ourselves. We then realized that this problem isn't just about food preferences but many other attributes that we expect other humans (e.g. friends and family) to remember but ChatGPT cannot at the moment.

What it does

We build a ChatGPT plugin that does 3 things:

  1. Extracts personal attributes from utterances (such as food preferences, events, hobbies etc).

  2. Store it persistently across various chat sessions

  3. Utilize these personal attributes to personalize recommendations of restaurants, grocery shopping, travel and more.

How we built it

The backend API is built using Quart, an async-compatible version of Flask.

The ML is build using GPT-4

The frontend is integrated into ChatGPT UI using ChatGPT plugin

Challenges we ran into

We initially couldn't get the ChatGPT plugin integration to work, as we didn't know how much details to put into the OpenAPI schema that the plugin requires (not just to format the input correctly, but also for input validation).

Accomplishments that we're proud of

We managed to solve a problem we have ourselves, which we think also troubles existing ChatGPT plugins (Kayak, Instacart and OpenTable) since they are only able to provide highly generalized recommendations currently. With our plugin, we enable all those plugins (and more) to provide personalized recommendations that can enable them to be more competitive to their search-based competitors.

What we learned

We learned how powerful ChatGPT plugins can be, which can be the next App Store in the new era for generative AI.

What's next for Personal Attributes Store

We want to work with the ChatGPT team and existing plugins to see how our plugin can improve user experience for them.

Built With

Share this project:

Updates