Winner of the Soul Machines' 2022 Halloween contest

Cleo, "The Cleaner"

Project type
Virtual Assistant (Digital Person) built for a contest
involvement
Conversation design, development
year
2022
tools used
Dialogflow logoMiro logoSoul machines Digital DNA Studio logo
Excel logo
links to my work
VIDEO SHOWCASE

Background

On October 19th, AI company Soul Machines announced a Halloween competition. The task was to build a conversational assistant for people living in a fictional zombie apocalypse. Having undertaken Soul Machines' excellent Writers' Room conversation design course, I decided to participate as a fun way to learn a new tool (Digital DNA studio). It was also a great opportunity to further develop my conversation design skills and test myself.

With twelve days to Halloween, the race was on.

Contest details from Soul Machines

Initial approach

I believe each conversation design project should begin with gathering requirements: I often start by researching/establishing user needs, which naturally leads to determining a bot persona. The user needs in this case could be divided into two broad categories:

  • People living in the fictional world, who need a virtual assistant to help them survive the zombie onslaught (multiple sub-categories).
  • The team at Soul Machines in the real world, who are judging the contest. The contest details specifically stated "the more engaging the better" and "be appropriate - think family-friendly. Disney movies are still fun for adults, right?"

I believe that having both of these in mind gave me an edge over the competition, as I was able to draw upon my background in writing collateral for Marketing Communications—a piece of professional writing should always consider not only the person reading it but also the client you are writing it for.

Brainstorming and bot persona

I came up with some key user intents: 

  • Get to know the assistant
  • Zombies 101
  • Survival tips
  • Reports and assistance

With this in mind, my first idea for a fun conversational assistant was that of an 80’s action hero: someone with an over-the-top, confident personality. This DNA still exists in Cleo, but I merged it with a different idea I had while brainstorming—what if the assistant was an A.I. hive-mind type character, but benevolent and altruistic? Like Skynet, or the supercomputer in Resident Evil, but good. It makes sense that humanity would make such a thing in a doomsday scenario!

I started world-building and, user requirements in mind, created the following core concept:

Cleo, also known to survivors as “The Cleaner,” is an A.I. network that humans made to combat the zombie hordes. Cleo has a Digital Person as a friendly ‘face’ to interact with humans, but she also operates 105 killer robots that slay zombies and rescue survivors all across Earth. In this version of Earth circa 2028, zombies are attracted to fear, so part of Cleo’s role is to reassure survivors and instill confidence. Because of this, she has a confident, easy-going attitude.  

Crafting the conversation

I used miro to create my corpus flowchart. Even though the task called for a three minute video, I decided to create a full corpus because I felt that would lead to a more authentic and believable end product.

One thing I wanted to do was create a distinctive and consistent voice for Cleo. Keeping her core personality of confident and easy-going in mind, I decided on a casual and friendly tone of voice. I achieved this voice with several key elements:

  • Dropping g's at the end of ing verbs or gerunds. Eg. runnin', zombie slayin', survivin'.
  • Dropping starting syllables from certain words. Eg. what can I tell you 'bout?, see you 'round.
  • Using slang/colloquialisms. Eg. copy that, gotcha, Z's.
Example of Cleo's mannerisms in a flowchart

Since this was a voice project, I paid particular attention to sentence structure. The voice you read in your head is quite different from the voice that comes through when speaking aloud (in general, I believe you can get away with more complex sentence structuring in chat-only applications). Because of this, I tried to keep sentences concise. To avoid awkward sentences I read each conversation node out loud multiple times and tweaked my sentences when necessary.

Miro to Excel: a transitionary phase

I created an Excel spreadsheet and converted my flowchart to individual intents, each with its own input and output contexts. When creating intents on Dialogflow it is far easier for me to work off a spreadsheet. This is because I need to keep track of contexts and make sure that they link across the conversation properly; it is more convenient to do this in a spreadsheet as opposed to a flowchart.

For example, consider this opening intent for the About Cleo flow:

Flowchart screenshot of an introductory node

In a flowchart, this appears as a single node. However, in my spreadsheet this node requires three separate intents:

  • The base intent, for if a user says "tell me more about yourself."
  • A redirected intent, if the user is prompted with "would you like to know more about me?" and replies with "yes."
  • A second redirected intent, if the user is elsewhere in the About Cleo flow and clicks a button labeled Back to get to know Cleo. This needs to have a different prompt because the user has already seen the initial node.
Excel screenshot of three different rows covering the same intent

Being cognizant of edge cases like this leads to a smoother conversation design, and a spreadsheet helps me orient my thoughts, especially when each intent may require unique input contexts and/or output contexts.

Creating the conversation on Dialogflow and DDNA studio

By referencing the Excel spreadsheet, I added each line as an intent to Dialogflow over the course of several days.

Soul Machines' Digital DNA Studio has its own methods of integration and displaying content cards (such as buttons or on-screen images). This was different to what I was used to with Facebook messenger, but their guides were easy to follow.

I added multi-media content cards (images, videos, gifs) to many areas of the conversation because I wanted the end result to be as engaging as possible for the user (and the judges!)

Screenshot of Cleo giving the user a link for purifying water

Halloween is here, and so are the results

Creating a full assistant in the span of about ten days was a tall order; although I could have used more time for reviewing and updating I was happy with what I had when the deadline came. I did some quick AI training throughout most of my intents, and fleshed out some areas that seemed like they needed improving.

One thing I noticed a lot when testing was that the text-to-speech program would mispronounce some words, particularly slang. For example, survivin' was pronounced as sur-vee-vin instead of sur-vie-vin. Thankfully, I discovered a function that would let me manipulate the pronunciation of certain words phonetically whilst keeping the text accurate.

Another hiccup from the text-to-speech system was that, tragically, em dashes did not process as a proper pause and would cause the sentence to be said too quickly—it's a bit embarrassing to think about how devastating that was! Working with voice is always a different challenge than chat, and it was interesting to see what issues arose from the format of the project.

With these issued fixed, I took some time to determine the most engaging path through my corpus and submitted a three minute showcase (see video above).

I was honored to have Cleo chosen as the winner of the challenge by the Soul Machines staff.

Screenshot of LinkedIn announcement by Soul Machines detailing Cleo as the winner of the challenge

Final thoughts and potential avenues for improvement

Considering the time restraints, I was pleased with my design process and result. I believe the strength of my writing allowed Cleo to shine, and it was certainly very fun to craft her dialogue and sprinkle in world-building throughout the conversation.

If I were asked to further improve Cleo, I would definitely add a robust error-handling system (called 'Elegant Failure' by Soul Machines). I would also do further rounds of testing, iterating, and AI training. Finally, based on test results, I would also make sure to add floating intents—user questions or comments that may not be covered by the main flows.

Overall, I had a lot of fun with the challenge and I felt like I was able to hone my conversation design skills throughout the process.

Let's start a conversation.

If you have any comments, queries, or even if you simply just want to say "hi," please don't hesitate to send me a message!

With professional experience spanning three countries, I have confidence in my ability to adapt to any situation. As a life-long learner, I always strive to equip myself with new skills and knowledge to tackle whatever challenge may come.