Another problem, I think, for the IT sector. Let's see what a chatbot is made of, what services are involved and how this impacts in the daily life of an IT department.
2. WHO AM I?
Marco Parenzan
Solution Sales Specialist @ Insight
Microsoft Azure MVP
1nn0va Community Lead
Marco Parenzan
marco.parenzan@1nn0va.it
marco.parenzan@insight.com
Twitter: @marco_parenzan
3. CONVERSATIONAL AGENTS ARE ARTIFICIAL INTELLIGENCE
COMPUTER PROGRAMS THAT COMMUNICATE WITH
PEOPLE WHO USE NATURAL LANGUAGE.
4. CONVERSATIONAL AI
“Conversational AI refers to the use of messaging apps, speech-based assistants and chatbots to automate
communication and create personalized customer experiences at scale”
“A chatbot is a computer software program designed to simulate human conversation via text, audio messages, or
images”
5. NEED FOR GOVERNANCE
Rationalise management
to avoid abandonment
Governance -
Highlight and optimize
the asset value of a CA
Conversational
Agents are another
resource that IT needs to
manage
So you need to identify
where the costs and
points of attention are
Apply some "devops"
style discipline
6. User Input Channels Business ProcessBot Intelligence
CONVERSATIONAL AI: AZURE BOT SERVICE + COGNITIVE SERVICES
7. CREATE A CONVERSATION WITH BOT SERVICE
Comprehensive framework for the lifecycle of your project
Author Dialogs
Design Cards
Visualize
Bot Framework
SDK
Cognitive
Services
Getting Started
Templates
Emulator
Application
Insights
DevOps Tools
Azure
BYO Web Host
WebChat
Cortana
Skype, FB
+
Custom
(DirectLine)
Application
Insights
LUIS Suggestions
8. INTRO ON HOW THE BOT FRAMEWORK WORKS
• Every interaction creates an activity
• Bot Framework interacts with the user via
channel
• ConversationalUpdate and Message
• Requests arrive to the bot via HTTP POST
• Status responses are an HTTP 200
• Conversation in managed via
TurnContext
9. INTRO ON HOW THE BOT FRAMEWORK WORKS
• Activity is executed via JSON
• JSON is deserialized and sent
to the Adapter, using the
ProcessActivity method
• Adapter creates the
TurnContext and calls the
middleware
• Activities are managed by
the ActivityHandler
11. GITHUB
https://github.com/microsoft/BotFramework-Composer
Bot Framework Composer is an integrated development tool for developers and multi-disciplinary teams to build bots and conversational
experiences with the Microsoft Bot Framework. Within this tool, you'll find everything you need to build a sophisticated conversational
experience.
https://github.com/microsoft/BotFramework-Emulator
The Bot Framework Emulator is a desktop application that allows bot developers to test and debug bots built using the Bot Framework
SDK. You can use the Bot Framework Emulator to test bots running either locally on your machine or connect to bots running remotely
through a tunnel.
https://github.com/microsoft/BotFramework-WebChat
This repository contains code for the Bot Framework Web Chat component. The Bot Framework Web Chat component is a highly-
customizable web-based client for the Bot Framework V4 SDK. The Bot Framework SDK v4 enables developers to model conversation and
build sophisticated bot applications.
https://github.com/microsoft/botframework-cli
The new BF Command Line Interface (CLI) tool replaces the collection of standalone tools used to manage Bot Framework bots and
related services. We have ported most tools and are in process of porting the rest. The new BF CLI aggregates the collection of cross-
platform tools into one cohesive and consistent interface.
12. Open Framework Multiple Canvases
ADAPTIVE CARDS
Notification Microsoft Teams Skype Android iOS
Bot Service Lifecycle: Plan | Build | Test | Publish | Connect | Evaluate
13. Bing Speech API
Convert speech to text and back
again, and understand its intent
Speaker Recognition API
Give your app the ability
to know who's talking
Custom Speech Service
Fine-tune speech recognition for
anyone, anywhere
QnA Maker
Distill information into conversational,
easy-to-navigate answers
Language Understanding
Intelligent Service
Teach your apps to understand
commands from your users
Easily perform speech
and text translation
Translator
Azure Search
Integrate search into a
conversational experience
ADDING INTELLIGENCE
14. TRAIN YOUR INTELLIGENCE
You will not lower people in your company
You will use them to more valuable tasks
15. THE TWO STEPS OF A COMPANY BOT STRATEGY
UNAUTHENTICATED
EXPERIENCE
AUTHENTICATED
EXPERIENCE
16. UNAUTHENTICATED EXPERIENCE
Answer to simple questions
«How to do this...»
«How to do that...»
Objective of the company
Engaging experience
Lower pressure on customer care
17. Result
Intent
INTEGRATION GW (GATEWAY)
The GW integration implements the Business Logic for intents
1 intent1 API
Enables microservices governance to be implemented
Direct call to internal business applications
Or indirect if you implement MS on corporate data lakes
Infrastructure setup
Integration Gateway API Setup
Azure VNET Configuration
On-premises infrastructure configuration support (Firewall, Host involved
you CA
Utterance Intent
Intent Utterance
Channel
Entities
Result
IntentAPI
18. HTTPS
HTTPS
App Service
Help Desk
Commerciale
API
Doc Commerciale
API
Doc interna API
TECHNICAL ARCHITECTURE OF A COMPANY INTEGRATION
BOT FW
Channel
Teams
Helpdesk API
HTTPS
Skype
for
Business
Channel
Azure
AD
Active
Directory
GWIntegrazione
AD Connect
SAP
Sharepoint 2010
FirewallDMZ/PrivateLAN
Win10
Mac
iOS
Android
LUIS NLP
1 x Contesto x Lingua
Contesto Risposte
1 x Contesto x Lingua
Sharepoint 2019
19. QNA MAKER
Based on Azure. The data and runtime
hosted in your Azure subscription.
Data privacy and compliance. QnA data is
hosted within your Azure compliance
boundary.
Azure Application Insights integration.
Helpful to get insights on how the services
is being utilized.
20. LANGUAGE UNDERSTANDING (LUIS)
Machine learning-based service to build natural language into apps, bots, and IoT devices.
Quickly create enterprise-ready, custom models that continuously improve.
Quickly build a custom
language solution
Alays learning &
improving
Enterprise-ready,
available worldwide
Add natural language
to your apps
Bot Service Lifecycle: Plan | Build | Test | Publish | Connect | Evaluate
21. LUIS – TERMINOLOGY
• Intent – the action/task the user wants to perform
• Utterance – the sentence where the user expresses the goal
• Entity – words or phrases inside an entity
• Domain –Intents related to a specific type of actions (e.g. Calendar
intents) – prebuilt domains
22. WHAT IT MEANS “TRAINING”
It means adding examples (utterance) so that statistically
the tool recognizes and classifies the similarities,
meaningful words, excludes the least important ones
It is not always true (e.g. personalization, sentiment, ...)
Beware of ambiguity
23. DIFFERENT "CHANNELS"
Text
Voce
Virtual
Reality
We are meeting different needs
Text/form
Desktop/Mobile experience
Voice
Mobility/Hand-free experience
Virtual reality
Human simulation experience
Integration with non-chat-based facilities
24. ENCOURAGING THE ROLE OF CONVERSATIONAL DESIGNER
independence
autonomy
Skill IT
Channel independence
form text
25. WHAT IS INTENT
The intent is an
NLP concept...
... but intents
are everywhere
The user's intention
The idea behind the
user's action
Every time you interact
with an application, you
express an intention
26. TECHNICALLY SPEAKING, AN INTENT IS...
... a universally recognized text
key
• Probably a key classified in a
domain
.. characterized by a set of
parameters (called entities)
that argue the intention
27. NATURAL LANGUAGE PROCESSING (NLP)
Cost Effective Based on statistical algorithms (pattern matching on utterance)
Identifying the correct set of utterance is the work of the conversational designer
Pervasive (coverage)
Unambiguous (to avoid false positive)
Anyway, a big piece of engineering
Out-of-the-box solutions for major players
Offline support
Adapt Set expectations correctly
FUTURESReti Neurali (verticali, taylor made, efficaci, ma costosi)
28. SPEECH TO TEXT
In NLP terms, it is used to transcribe a "multimedia" utterance
We're talking about S2T...
... but even an OCR could have its role...
.. or a custom vision using the camera...
Cost Effective
Pre-established entries
Success will involve the availability of variants...
... and the increase in quality
You can do the custom training
For noise reduction, domain verticalization
Expensive (hours of recordings and pages of transcripts)
29. FONIA
Full cloud solution. Twilio
Integration with existing Call Center
Feasibility verification
Human Hand-off
30. ESEMPI DI SCENARI
interactive voice response (IVR)
First level
Massive call schedule for data retrieval
Compliance compliance
Artifact Development Appliances
Hands-free interaction
31. BotChannel
Registration
App
Service WPF+Unity Player
VIRTUAL ASSISTANT ARCHITECTURE ON BOT FRAMEWORK
Microsoft Azure Virtual Assistant (on premises)
Management
Web App
AI
[Bot Framework
V4]
Config
Cognitive
Services
Text-To-
Speech
Speech-To-
Text
NLP (LUIS)NLP
Design
Text/Audi
o
Camera
Micropho
ne
Speakers
Video
Audio
Audio
Testo
Testo
Intent
Audio
input
output
Avatar
Channel
Touch(x,y)
Proiezion
e
3D
Audio
DirectLine
Windows PC
33. GRAZIE
Marco Parenzan
Solution Sales Specialist @ Insight
Microsoft Azure MVP
1nn0va Community Lead
Marco Parenzan
marco.parenzan@1nn0va.it
marco.parenzan@insight.com
Twitter: @marco_parenzan