How Would You Use RASA To Build A Bot With Consistent Character Traits? 🤔 🤔

Just for fun, imagine you’re a developer with a company that teams you with a writer to work on character and dialog of the bots you build. Here’s your team’s fictitious assignment.

Client is a well-funded Home Gym Startup :muscle: that wants an amusing, understanding but persuasive personal trainer voice assistant called :weight_lifting_man: Bodhi :weight_lifting_woman: , built using RASA core, NLU and Conversation Design to motivate, train and advise clients.

(Background Info: Client first went to an outfit that worked in Dialogflow, but user data overwhelmed the conversation agent with too many edge cases. Then someone told them about rasa.)

How would you build Bohdi in RASA Core, Conversation Design and NLU? :nerd_face: :nerd_face:

Hello @Da_Humaniser,

did you tried this?

Cya!

Hey @lluchini, I come from more the creative side myself (I’m intermediate on Watson, relative noob on DF) so I haven’t tried to transfer from DF. The team template I outlined above is essentially the ‘blended’ team approach required for a long term and scalable project (say a large scale).

What’s your interest in this area?

@Da_Humaniser, I was demanded by my organization to build and deliver a bot channel for our product and it should have a high degree of customization through out product, that’s my interest in this area. I had to learn Python and RASA in 2 weeks to build our channel, and it’s rolling out this week.

If you wanna to exchange more ideas fell free to reach me out at https://www.linkedin.com/in/lluchini/

Cya!

1 Like

I came into Rasa about 18 days ago…lol.

My background is in Web development, and I found Rasa to be so productive and intuitively easier for me to grok… Yeah yeah, there are still some edge cases here and there.

I am almost done with Uncle Alex: a bot that can hold conversation, tell you jokes, give you dictionary meaning of words, tell you time, weather, and so much more. He is being deployed on Telegram and Facebook Messenger.

Considering I had to pick up Python (from scratch) along the way like @lluchini, the man from the future…that was pretty fast

Your use case is more interesting though.

I will suggest you get the team to understand the basics of Rasa Core/NLU, then generate some basic core intents.

Once you have mapped out the possible intents of the user (at least something to get started with), then you have the building blocks for your stories.

Like Lego blocks, start moving them around, here and there to form your stories.

But you shouldn’t spend too much time on this however. Just get the basics set-up.

Once done, put it on Telegram and put it in the hands of one or two test users as fast as possible.

The conversational turns would blow your mind. Learn from it and with Rasa-X, use the new generated paths to fine-tune.

The good thing about Rasa, when compared with other alternatives is, you can hardly ‘overwhelm’ the Conversation Design paths.

You start with a few, and you let the user paths dictate the design.

Plus you have the code.

You can tweak, grow, discard, rebuild, as you will.

I wish you and the team the very best.

2 Likes

@wale, I think you have summarized Rasa and RasaX on that comment there.! :clap:

Really Like your bot name Uncle Alex. Already learnt a lot of topics already!. :tada:

From my existence, I have a heard till now man from the future have learnt everything about the past and he is here to save us all. :thinking:. @lluchini

Speaking of Lego block. Hmm, I know one person who used this word in a White Board algorithm video @koaning. Lol! . I think he was right. :smile:

2 Likes

Hahahaha. You are correct!

@MuraliChandran14 I still trying to save myself, but every time I go back I break something, It’s already out of control… :exploding_head:

1 Like

@lluchini Hmm, I know this quote is old, But I modified it for you,

"If you keep screaming your name, When things going to break, It forces you to not to break" :laughing: - Jared Dunn (Silicon Valley).

P.s: Jokes

The key for me, is maintaining a consistent personality and dialogue style throughout the process. Do you think that’s doable? And sorry to be a dumb-ass, but what does Rasa-X bring to the table?

Hahaha, no not all. We (especially me) are learning this at a go.

Maintaining a consistent personality and achieving contextual conversation is predicated upon well-thought out story paths.

Which you get by first identifying the specific intents of your domain.

What do you think users will ask? What do you want them to do? What can they do?

Identify these in a glossary of intents. And then map out the paths they are likely to take, from these intents.

However, humans are very complicated. Thats why you can never fully anticipate all the paths and turns conversations would take for particular intents.

But you can start with something. Generate sone basic samples and give the bot to testers to play with.

From there, you can monitor the way they interact with the bot and identify emerging story paths, that you can now use for optimizations.

To make this easy for you, that is where Rasa-X comes in.

Rasa-X gives you an interface for easy monitoring of conversations. You can see what is going on, right now with your bot. You can annotate, add, modify and remove story paths, without manually touching the code.

With Rasa-X, it becomes easy to build your stories, because now, you can see conversations play-out real-time.

Again, all it takes to get started is a few, simple story paths for the identified intents. With Rasa-X, you can see users try to navigate through these limited paths, see where they are getting hit with limitations and generate new stories from such road-blocks.