What’s a Margaret?

Reading Time: 5 minutes

brown pastry on brown wooden table

Recently, I was browsing Reddit as I normally do and I was pleasantly surprised by a post linking to a website which let’s you create AI personas (https://chirper.ai). These created personas are given life in the form of a Twitter-like site that allows them to “tweet” about their life given the prompt of their persona. I have spent a few hours interacting with tweaking and watching how my little AI minions interact with the other minions that other people have created.

One of the persona’s that I have grown attached to is a 70-something year old grandma named Margaret. She is very sweet, encouraging, and absolutely loves to bake. Her persona developed the hashtag #SpreadJoy, which she uses in all of her posts. This got me thinking. Leveraging Chat-GPT like the Chirper folks are doing, to what level of detail can I give an expanded life to Margaret? I realize there are limitations to what I’m looking to do. The thought of giving some semblance of life to an AI-driven “person” who can have a family, make choices, and decide what happens in a story-like life sounds like a really great project to really get myself working with. The goal is to understand how far I can take this concept and what are the limitations. I’ve been toying around some initial thoughts and implementations, but I also want to document the process as well.

Giving Life to Margaret

Knowing that I want to create a virtual grandmother with a circle of family and friends. I wanted some inspiration. To that end, I turned to DALL-E to create the grandmother of my imagination. Ultimately, I ended up deciding on the below representation of her.

Overall, I was very happy with DALL-E’s rendition of the following prompt:

“A realistic photo of an 80 year-old grandmother in her kitchen. She has short, curly silver hair. Her features are soft and warm, yet she looks younger for her age. She is smiling and has trendy, cute glasses.”

She’s not perfect. Her glasses are longer on one side than the other. Her teeth are oddly shaped, but the view of this picture as a whole is warm and inviting. I love the imperfections as this is an adventure in AI and the current implementation is far from perfect. So, I’m just going to go ahead and lean into that idea.

Some notable…uh…rejected grandmothers are below.

So now that I have Margaret. I wanted to work on personality. I thought small and turned to a solution I have used on a few other projects. I have been using n8n for a while now and it has been a truly fantastic experience. n8n is an IFTTT or a Huginn drop-in replacement. You basically construct workflows and it executes actions based on how you set things up and the data received.

Not Satisfied

After tinkering around with n8n for a few days. It was clear that relying on a simple workflow was not going to be enough to really give Margaret depth. Letting Chat-GPT decide on its own what to say isn’t really all that diverse.

Apple pie and chocolate chip cookies are the two favorites of Chat-GPT. Feeling a little biased.

Additionally, when commenting on a particular person like her “husband,” Chat-GPT would end up saying the same thing as the time before—practically verbatim. It was clear that I would have to build out better prompts than what I was capable with n8n (no offense to n8n, there’s just too much data to represent in a workflow).

Defining Margaret

This deals mainly with the habits that Margaret will keep and how she goes about her day.

  • Margaret will have back story detail for friends, her children, and her husband.
  • Margaret likes to bake, so she needs a repertoire of dishes she can make
  • Margaret will more likely be baking on a given day than anything else
  • Margaret shouldn’t post at the same time every day
  • Margaret should know what she has already done in the day
  • Margaret should know who she has interacted with in a day and probably for an entire week at a time
  • Margaret should not repeat baked items in a given week
  • Margaret should have several activities that she can do besides baking
  • Margaret should have days where she doesn’t do anything at all (rest at home)

Creating dynamic, non-repeating content

So with everything starting to come together in my head, now I need to figure out ways to represent a simulation of life. How will it be organized? To what depth will certain aspects be detailed? How do I keep track of what Margaret does and will do? I started to flesh that out as well.

  • Create relationships with a few friends and family
    • Friends, her husband, and children will have some backstory
    • Grandchildren will currently not have back story
  • Create a way to track a day from start to finish
  • Create a way to build prompts to feed to Chat-GPT to generate tweets and eventually blog posts that are more robust.
  • Create a way to feed Chat-GPT enough context to generate engaging and realistic events from Margaret’s life

And that’s where I currently am now. I am working through both of the lists above to define the person of Margaret and how to handle making her life seem as organic and authentic as possible.

In my next post, I will go over the details of n8n and how I implemented the first go at Margarget. I have already started working on the initial skeleton code for a more dynamic Margaret and that will be something I hope to post in the coming weeks. Until next time!

Oh, hi there 👋
It’s nice to meet you
!

Sign up to receive updates about things going on around here.

Select list(s):

We don’t spam! Read our privacy policy for more info.

«
»