Personality Chat makes it easy to add small talk capabilities to your chatbot. Small talk/chit-chat makes bots more conversational and personable. This package has more than a 100 scenarios of small talk in the voice of three personas - professional, friendly, comical. Choose the persona that most closely resembles your chatbot's voice.
User query | Professional | Friendly | Humorous |
---|---|---|---|
Thank you | You're quite welcome. | You bet. | No prob. |
Will you marry me? | I think it's best if we stick to a professional relationship. |
You're three-dimensional. I'm non-dimensional. Our love can never be. |
Sure. Take me to City Hall. See what happens. |
Who made you? | There wouldn't be time to list everyone. | So many people! | Nerds. |
There are three ways of integrating Personality Chat in your application or chat bot. Microsoft Bot Framework-based bots have support in v3 and v4 SDK. Else you can also call the Personality Chat API directly.
- Personality Chat in Microsoft Bot Framework SDK v3
- Personality Chat in Microsoft Bot Framework SDK v4
- Calling Personality Chat API directly
- Use the Personality Chat dataset
Personality Chat matches the user's small talk query with a small talk scenario. It does query understanding (QU) to lexically and semantically match a user query. All matched scenarios are returned along with the confidence score. If no scenario is matched, no response is returned. Additionally is also checks for a few indicators to determine how to respond.
isChatQuery
: Does the query look like a chitchat/small talk query rather than a real user question?isAdult
: Does the query contain adult/offensive/racy/sensitive content.
We enforce throttling limits on the Personality Chat API at the rate of 10 queries per minute. Throttling is done based on the IP address.
If you are throttled, the API returns a 429 HTTP response with the message Rate limit is exceeded. Try again in X seconds.
Personality Chat also includes a component that is capable of generating responses real-time without editorial content. It uses a Deep Neural Network to generate answers to a chitchat query. This is available as a demo playground chat in Microsoft Cognitive Labs for a restricted set of query intents.
Scenarios supported cover the most commonly asked small talk questions to a bot.
No | Scenario Name | Sample queries |
---|---|---|
1 | Greetings_Bye | Bye Talk to you later |
2 | Greetings_Generic | Hi there! Hiya |
3 | Greetings_GoodEvening | Good evening |
4 | Greetings_GoodMorning | Good morning |
5 | Greetings_GoodNight | Good night |
6 | Greetings_Hello | Hello |
7 | Greetings_HowAreYou | How are you? |
8 | Greetings_HowWasYourDay | How was your day? |
9 | Greetings_NiceToMeetYou | Nice to meet you |
10 | Greetings_OtherBot | Hello {other AI} |
11 | Greetings_Special | Happy Halloween! |
12 | Greetings_WhatsUp | What is up? |
13 | User_Angry | I am angry I am annoyed |
14 | User_BeBack | I will be back |
15 | User_Bored | I am bored |
16 | User_Happy | I am happy |
17 | User_Here | I am here |
18 | User_Hungry | I am hungry |
19 | User_IdentityOrState | |
20 | User_Kidding | Just kidding |
21 | User_Lonely | I am lonely |
22 | User_Loves | |
23 | User_Sad | I am sad |
24 | User_Statement | I want to go shopping I am going on a run |
25 | User_Kidding | Just kidding! |
26 | User_Lonely | I am so lonely |
27 | User_Loves | I am in love I love music I love my family |
28 | User_Sad | I feel sad I am sad today |
29 | User_Statement | I am just kidding |
30 | User_Testing | Testing Can you hear me? |
31 | User_Tired | I am tired I am sleepy |
32 | Command_AskMeAnything | Ask me anything |
33 | Command_Chat | Talk to me? Tell me something interesting Can we chat? |
34 | Command_Fired | You are fired You can't work for me anymore |
35 | Command_FlipCoin | Flip a coin |
36 | Command_Joke | Tell me a joke |
37 | Command_JokeOther | Tell me a silly joke |
38 | Command_SaySomethingFunny | Say something funny |
39 | Command_ShutUp | Shut up Go away |
40 | Command_Sing | Sing a song Can you sing? |
41 | Command_SurpriseMe | Surprise me |
42 | Compliment_Bot | You are awesome! You're nice! |
43 | Compliment_Humor | You are funny :) That was hilarious! |
44 | Compliment_Looks | You are beautiful |
45 | Compliment_Response | That is smart That's interesting |
46 | Criticism_Abusive | You are stupid Go to hell |
47 | Criticism_Bot | You are so annoying! What is wrong with you! You are useless Are you dumb? |
48 | Criticism_Humor | That was a sad joke |
49 | Criticism_Looks | You are ugly |
50 | Criticism_Response | That was a boring answer |
51 | Dialog_Affirmation | cool! Awesome Great! I know No thanks |
52 | Dialog_Laugh | Ha ha |
53 | Dialog_Polite | Excuse me |
54 | Dialog_Questions | Why? Why not? |
55 | Dialog_Right | |
56 | Dialog_Sorry | I am sorry |
57 | Dialog_ThankYou | Thank you |
58 | Dialog_WhatDoYouMean | What do you mean by that? You made no sense |
59 | Dialog_YouAreWelcome | You are welcome |
60 | Relationship_Flirting | I Like you I love you |
61 | Relationship_Friendship | Be my friend? |
62 | Relationship_Generic | Are you my assistant? |
63 | Relationship_HateMe | Do you hate me? |
64 | Relationship_HateYou | I hate you |
65 | Relationship_Hug | Give me a hug |
66 | Relationship_Kiss | Give me a kiss |
67 | Relationship_KnowMe | Do you know me? |
68 | Relationship_LikeMe | Do you like me? |
69 | Relationship_LikeYou | I like you |
70 | Relationship_LoveMe | Do you love me? |
71 | Relationship_LoveYou | I love you |
72 | Relationship_Marriage | Will you marry me? I want to marry you |
73 | Relationship_MissYou | I miss you |
74 | Relationship_ThinkAboutMe | What do you think about me? |
75 | Relationship_TrustYou | Can I trust you? |
76 | Bot_Ability | Can you fly? Do you play games? Dont you ever sleep? Have you any dreams? Cook me something |
77 | Bot_Age | How old are you? Are you old? What's your age? |
78 | Bot_BodyFunctions | |
79 | Bot_Boring | You are boring I am tired of you Getting tired of you |
80 | Bot_Boss | Who is your boss? |
81 | Bot_Busy | Are you busy? |
82 | Bot_Creator | Who made you? Who created you? Who invented you? |
83 | Bot_DidDo | What did you do yesterday? What did you do last week? |
84 | Bot_Doing | What are you doing? Whats going on? |
85 | Bot_DoingLater | What are you doing later? What are you doing tomorrow? |
86 | Bot_Family | Who is your mother? Who is your father? Do you have a family? |
87 | Bot_Favorites | What's your favorite color? Who is your favorite bot? |
88 | Bot_Gender | Are you male or female? Are you a girl?<You a guy? |
89 | Bot_Happy | Are you happy? You seem happy! |
90 | Bot_Hungry | Are you hungry? Don't you get hungry? |
91 | Bot_KnowOtherBot | Do you know {other AI: Siri, Google Assistant}? |
92 | Bot_Opinion_Generic | What do you think about {}? how do you feel about working late? |
93 | Bot_Opinion_Love | how do you feel about love? |
94 | Bot_Opinion_MeaningOfLife | What is the meaning of life? Whats the answer to the universe? |
95 | Bot_Opinion_PrettierThanMe | Are you prettier than me? |
96 | Bot_Opinion_SmarterThanMe | Are you smarter than me? |
97 | Bot_Opinion_TechCo | What do you think about {tech world}? |
98 | Bot_Opinion_UserLooks | How do I look today? |
99 | Bot_Opinion_WhatToDo | What should I do? |
100 | Bot_OtherBots | Do you like Siri? |
101 | Bot_Real | Are you real? |
102 | Bot_RuleWorld | Do you want to rule the world? |
103 | Bot_SexualIdentity | Are you {sexual orientation}? |
104 | Bot_Smart | Are you smart? You are a genius! |
105 | Bot_Spy | Do you work for {organization}? Are you spying on me? |
106 | Bot_There | Are you there? anyone there? |
107 | Bot_WhatAreYou | Are you a person? |
108 | Bot_WhereAreYou | Where are you? Where have you come from? |
109 | Bot_WhoAreYou | Who are you? |
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.