#azuresatpn
Azure Saturday 2019
Deep Dive into
Conversational Agent Development
#azuresatpn
Two main topics to go deep into
Conversational Design
• Conversational Designer
• Different Channels
#azuresatpn
#azuresatpn
Encouraging the role of conversational designer
Autonomy
Not having
skill IT
No channel
dependency
More text,
less forms
#azuresatpn
Let’s talk about intent
• 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
#azuresatpn
What is an intent
The user's intention
The idea behind the
user's action
Every time you
interact with an
application, you
express an intention
The intent is an NLP
concept...
... but intent is
everywhere
#azuresatpn
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
#azuresatpn
How to Implement Using User Story - Agile
Methodology
• Each Intent is a user story in its own right
• Separation of contexts promotes maintainability
• For each Intent
• Defining sprints, design thinking, and iterations with business users
• Defining Utterances
• Test
• Implementation in BOT
• Api implementation (independent call grouped inconversation contexts by
GW API)
• You don't always need
#azuresatpn
Let’s build a Conversation DSL
#azuresatpn
Luis Authoring
• LUIS
• Request: utteranceIntent
• Multiple LUIS instances for multiple languages…
• …but one conversation
• There are the answers
• There is the conversation
• www.luis.ai: one app at a time
#azuresatpn
#azuresatpn
Different "channels"
Testo
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
•
#azuresatpn
.NET Core 3.0 for Windows Desktop
Deployment Flexibility
Side-by-side deployment, self-
contained EXEs
Install machine global or app local
framework
Windows 10
Access modern Windows 10 APIs
from WPF and WinForms
Use native Windows 10 controls
via XAML islands
Open Source
WPF and WinForms projects also
open source on GitHub
Take advantage of performance,
runtime and API improvements
happening in .NET Core
#azuresatpn
Adaptive Cards (https://adaptivecards.io/)
• Portable - To any app, device, and UI
framework
• Open - Libraries and schema are open
source and shared
• Low cost - Easy to define, easy to
consume
• Expressive - Targeted at the long tail
of content that developers want to
produce
• Purely declarative - No code is needed
or allowed
• Automatically styled - To the Host
application UX and brand guidelines
#azuresatpn
Cognitive Speech Services overview
Real-time & Batch Mode
single voice, 2-way dialogues or multi-person conversations
Enhanced adaptation
New Call Center specific features
REST for all operations on new Portal!
Over 80 standard voices in 49 locales
Customizable for 9 locales
Neural TTS GA for 4 locales
Available via REST and SDK!
Speech-to-speech translation based on neural machine translation
(NMT) technologies
Available in 10+ locales
Customizable!
Speech SDK 1.5 (out now)
Easy to integrate with the full range of
cloud-based Microsoft Speech services,
creating an end-to-end experience for
customers.
Multi-Platform
Multi-language support
Speech devices SDK
Optimized audio capturing software
stack seamlessly integrated with our
Speech SDK that connects to our
Speech Services
Enable your applications to talk
Swiftly convert audio to text for natural responsiveness
Speech-to-Text
Text-to-Speech
Speech translation
Easily integrate real-time speech translation to your app
#azuresatpn

Deep dive into Conversational Ai development

  • 1.
    #azuresatpn Azure Saturday 2019 DeepDive into Conversational Agent Development
  • 2.
    #azuresatpn Two main topicsto go deep into Conversational Design • Conversational Designer • Different Channels
  • 3.
  • 4.
    #azuresatpn Encouraging the roleof conversational designer Autonomy Not having skill IT No channel dependency More text, less forms
  • 5.
    #azuresatpn Let’s talk aboutintent • 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
  • 6.
    #azuresatpn What is anintent The user's intention The idea behind the user's action Every time you interact with an application, you express an intention The intent is an NLP concept... ... but intent is everywhere
  • 7.
    #azuresatpn Technically speaking, anintent 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
  • 8.
    #azuresatpn How to ImplementUsing User Story - Agile Methodology • Each Intent is a user story in its own right • Separation of contexts promotes maintainability • For each Intent • Defining sprints, design thinking, and iterations with business users • Defining Utterances • Test • Implementation in BOT • Api implementation (independent call grouped inconversation contexts by GW API) • You don't always need
  • 9.
  • 10.
    #azuresatpn Luis Authoring • LUIS •Request: utteranceIntent • Multiple LUIS instances for multiple languages… • …but one conversation • There are the answers • There is the conversation • www.luis.ai: one app at a time
  • 11.
  • 12.
    #azuresatpn Different "channels" Testo Voce Virtual Reality • Weare meeting different needs • Text/form • Desktop/Mobile experience • Voice • Mobility/Hand-free experience • Virtual Reality • Human simulation experience • Integration with non-chat-based facilities •
  • 13.
    #azuresatpn .NET Core 3.0for Windows Desktop Deployment Flexibility Side-by-side deployment, self- contained EXEs Install machine global or app local framework Windows 10 Access modern Windows 10 APIs from WPF and WinForms Use native Windows 10 controls via XAML islands Open Source WPF and WinForms projects also open source on GitHub Take advantage of performance, runtime and API improvements happening in .NET Core
  • 14.
    #azuresatpn Adaptive Cards (https://adaptivecards.io/) •Portable - To any app, device, and UI framework • Open - Libraries and schema are open source and shared • Low cost - Easy to define, easy to consume • Expressive - Targeted at the long tail of content that developers want to produce • Purely declarative - No code is needed or allowed • Automatically styled - To the Host application UX and brand guidelines
  • 15.
    #azuresatpn Cognitive Speech Servicesoverview Real-time & Batch Mode single voice, 2-way dialogues or multi-person conversations Enhanced adaptation New Call Center specific features REST for all operations on new Portal! Over 80 standard voices in 49 locales Customizable for 9 locales Neural TTS GA for 4 locales Available via REST and SDK! Speech-to-speech translation based on neural machine translation (NMT) technologies Available in 10+ locales Customizable! Speech SDK 1.5 (out now) Easy to integrate with the full range of cloud-based Microsoft Speech services, creating an end-to-end experience for customers. Multi-Platform Multi-language support Speech devices SDK Optimized audio capturing software stack seamlessly integrated with our Speech SDK that connects to our Speech Services Enable your applications to talk Swiftly convert audio to text for natural responsiveness Speech-to-Text Text-to-Speech Speech translation Easily integrate real-time speech translation to your app
  • 16.

Editor's Notes

  • #6 m
  • #14 We know we have millions of Windows developers using .NET. So .NET Core has added support for Windows Forms and WPF. This allows you to take advantage of the innovation happening in .NET Core, while still using the UI frameworks you know and love.
  • #15 Use the MessageCard Playground to view samples and design your own cards