+ All Categories
Home > Documents > Lessons From The Trenches: Designing and Building a Chatbot...Regular Expressions - Caveats...

Lessons From The Trenches: Designing and Building a Chatbot...Regular Expressions - Caveats...

Date post: 22-Jul-2020
Category:
Upload: others
View: 2 times
Download: 0 times
Share this document with a friend
46
Lessons From The Trenches: Designing and Building a Chatbo Sep, 7 | Kyiv
Transcript

Lessons From The Trenches:

Designing and Building a Chatbot

Sep

, 7 |

Kyi

v

Igor FesenkoApplication Architect, SoftServe Inc.

Engineer<T> where T : C# | Azure | JavaScript

Microsoft® Most Valuable Professional (MVP)

Who Are We?

Igor FesenkoApplication Architect, SoftServe Inc.

Engineer<T> where T : C# | Azure | JavaScript

Microsoft® Most Valuable Professional (MVP)

Who Are We?

Igor FesenkoApplication Architect, SoftServe Inc.

Engineer<T> where T : C# | Azure | JavaScript

Microsoft® Most Valuable Professional (MVP)

Viktor KryzhanovskyiSoftware Engineer, SoftServe Inc.

Engineer<T> where T : C# | Angular | StackOverflow

ProblemSolver<T> where T: ANY

Who Are We?

Viktor KryzhanovskyiSoftware Engineer, SoftServe Inc.

Engineer<T> where T : C# | Angular | StackOverflow

ProblemSolver<T> where T: ANY

Who Are We?

Agenda

Why chatbots?

Where to start?

Lessons learned

WHY CHATBOTS?

Global Trends And Analysis

80% In 2020

64%

https://chatbotsmagazine.com/chatbot-report-2019-global-trends-and-analysis-a487afec05b

What Do People Actually Think About Chatbots?

It’s faster than other means of communication

With such communication advice are of higher quality, it is a manifestation of customer care

The answers are more honest

Why Chatbots Fail?

Too many unhelpful responses

Bad suggestions

Redirects to self-service FAQs

… and more

Developers To The Rescue

WHERE TO START?

Just Take A One Platform For Your Liking

IBM Watson Microsoft Bot Framework

wit.ai Dialogflow (api.ai)

Choice Is Yours… But That Needs Consideration

Communication channels

Pricing

Imperative (How) VS Declarative (What)

Technology stack

Best Place to Start

https://github.com/microsoft/botframework-sdk

https://github.com/Microsoft/BotBuilder-Samples

https://github.com/microsoft/botframework-solutions

https://github.com/BotBuilderCommunity/

Chatbot High Level Architecture

Some message

zzZzz….

Chatbot High Level Architecture

Some message

Chatbot High Level Architecture

Activation

Some message

Chatbot High Level Architecture

Analyze

Message

Some message

Chatbot High Level Architecture

Analyze

Message

Build Reply

Some message

Chatbot High Level Architecture

Reply

Analyze

Message

Build Reply

That’s Not Enough, We Need To Go Deeper

Analyze Message

What to Say Instead of "I Don't Know"

AI is Not a First Step

You don’t need LUIS to process user’s input

Regular Expressions

Regular Expressions - Caveats

“Read-only”

Regular expression Denial of Service - ReDoS

const string JiraIssueRegex = @"(?i)((?!([A-Z0-9]{1,10})-?$)[A-Z0-9]{1}[A-Z0-9]+-\d+)";

const string JiraIssueStrictMatchRegex = @"(?i)(^(\s*)[A-Z0-9]{1}[A-Z0-9]+-\d+)";

// check it here https://regex101.com/r/1nR3ZK/1

const string JiraIssueUrlRegex = @"^https:\/\/(.+)\.(atlassian\.net|jira\.com)\/browse\/(.+)";

const string CancelCommandRegex = @"(^(\s*)cancel)";

LUIS

LUIS

.lu

Build Reply Message

Reply

Text

Simple

Cards:

Rich UI

Platform specific

Actionable

Different types (SignIn, Adaptive, etc)

Our Choice Is Adaptive Card

Mobile support

Frequent updates

Big community

Great designer tool

More: https://adaptivecards.io/

Our Choice Is Adaptive Card

Mobile

Real Case

Assistant

Adaptive card

LESSONS LEARNED

Is It Complicated To Debug?

Inspection Middleware

Bot emulator 4.0+

https://docs.microsoft.com/en-us/azure/bot-service/bot-service-debug-inspection-middleware

Demo Time

Test YOUR Code From A Box

Care About Your Coverage

If You Want Survive – CONTRIBUTE!

CONTRIBUTE!

Release Updates – Be First To Try

Be Proactive Everywhere

Questions?


Recommended