SlideShare a Scribd company logo
1 of 16
Download to read offline
HOW TO TAME YOUR CHATBOT
A novel chatbot architecture to protect your privacy
Fiete Lüer
15. November 2019
eMundo © 2019
TABLE OF CONTENTS
1. INTRODUCTION
2. WHAT’S WRONG?
3. HOW COULD IT BE CHANGED?
4. IMPLEMENTATION: EMUBOT
5. CONCLUSION
2
eMundo © 2019
INTRODUCTION
NLP / NLU
NLP
Natural Language Processing sentiment analysis
summarization
relation extraction
machine translation
automated speech
recognition
question answering
named entity recognition
3
eMundo © 2019
INTRODUCTION
NLP / NLU
NLP
Natural Language Processing
NLU
Natural Language Understanding
sentiment analysis
summarization
relation extraction
machine translation
automated speech
recognition
question answering
named entity recognition
4
eMundo © 2019
INTRODUCTION
Standard Procedure - Training
1. Define what you want your bot to answer
→ Which intents should be handled?
2. Define terms/groupings of words that are relevant to understand the intent
→ Which entities are important?
3. Define (often static) responses
4. Implement advanced concepts
→ e.g. contexts, actions for non-static content
NLP-SERVICE
An NLP service provider:
Dialogflow, LUIS, Lex, Rasa, Snips, ...
5
eMundo © 2019
INTRODUCTION
Standard Procedure - Inference
NLP-SERVICE
An NLP service provider:
Dialogflow, LUIS, Lex, Rasa, Snips, ...
MESSAGING PLATFORM
A messaging service:
Facebook Messenger, Slack,
Website, Google Chat, ...
Text query
6
eMundo © 2019
INTRODUCTION
Standard Procedure - Inference
NLP-SERVICE
An NLP service provider:
Dialogflow, LUIS, Lex, Rasa, Snips, ...
MESSAGING PLATFORM
A messaging service:
Facebook Messenger, Slack,
Website, Google Chat, ...
Text query
Determine the intention of the user:
What does the user want?
7
eMundo © 2019
INTRODUCTION
Standard Procedure - Inference
NLP-SERVICE
An NLP service provider:
Dialogflow, LUIS, Lex, Rasa, Snips, ...
MESSAGING PLATFORM
A messaging service:
Facebook Messenger, Slack,
Website, Google Chat, ...
Text query
Determine the intention of the user:
What does the user want?
Response: static (often from NLP-Service)
or dynamic (some predefined action)
8
eMundo © 2019
WHAT’S WRONG?
(Some) Weaknesses
● Non-tech / inexperienced: Out-of-the-box solutions!
● One-click integrations!
■ Give me your keys and we will handle everything. Your user data is safe™!
● Frameworks: minimal examples
■ Keep your keys.
■ Keep the functionality and complexity minimal
■ Often quite outdated, too simplistic, and barely documented
9
eMundo © 2019
HOW COULD IT BE CHANGED?
Proposed Architecture - Key Ideas
● Logically separated entities
● Easy to include means to protect the privacy of host and user
● Expandability by design
● Easy setup, minimize the required configuration
● Minimize overhead
● Thorough documentation
10
eMundo © 2019
MESSAGING PLATFORM NLP-SERVICE
FACEBOOK MESSENGER
SLACK
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
SNIPS
RASA.AI
DIALOGFLOW
WEBSITE
YOUR OWN
NLP-SERVICE
DIFFERENT NLP
SERVICE (AMAZON LEX,
FACEBOOK WIT.AI …)
DIFFERENT MESSENGER
(GOOGLE CHAT,
ROCKET CHAT …)
11
eMundo © 2019
MESSAGING PLATFORM NLP-SERVICE
FACEBOOK MESSENGER
SLACK
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
SNIPS
RASA.AI
DIALOGFLOW
WEBSITE
YOUR OWN
NLP-SERVICE
DIFFERENT NLP
SERVICE (AMAZON LEX,
FACEBOOK WIT.AI …)
DIFFERENT MESSENGER
(GOOGLE CHAT,
ROCKET CHAT …)
12
SERVER
EMUBOT
COREADAPTER
LAYER CHAT
ADAPTER
LAYER NLP
NLP
ADAPTER
CHAT
ADAPTER
MESSAGE
HANDLER
eMundo © 2019
MESSAGING PLATFORM NLP-SERVICE
FACEBOOK MESSENGER
SLACK
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
ADDITIONAL SERVICES
VIA CUSTOM ADAPTER
SNIPS
RASA.AI
DIALOGFLOW
WEBSITE
YOUR OWN
NLP-SERVICE
DIFFERENT NLP
SERVICE (AMAZON LEX,
FACEBOOK WIT.AI …)
DIFFERENT MESSENGER
(GOOGLE CHAT,
ROCKET CHAT …)
13
SERVER
EMUBOT
COREADAPTER
LAYER CHAT
ADAPTER
LAYER NLP
CUSTOM CODE
INTERFACE
CHAT TO CORE
INTERFACE
NLP TO CORE
INTERFACE
NLP TO NLP
ADDITIONAL
SERVICES, E.G.
EXTERNAL APIs
DATABASE
MESSAGE
MANIPULATION
NLP
ADAPTER
CHAT
ADAPTER
MESSAGE
HANDLER
eMundo © 2019
IMPLEMENTATION
emubot
● Different setups:
● Basic framework: (currently) similar to one-click integration, mainly to offer the functionality, typings, ...
● Minimal example: via npm, mirror messages at interceptors, similar to one-click integration
● Extensive example: pseudonymize the user id, execute actions, connect to database, …
● Typescript
● (Soon to be) open source at github.com/emundo/emubot
● Extensive documentation including
● the basic setup,
● information on adapters, and
● advanced topics (like containerization)
14
eMundo © 2019
CONCLUSION
● Current connectors/frameworks are usually solely focusing on offering minimal examples
● emubot:
● Currently no pseudonymization by default, but included in one of the extended examples
● Adapters for several platforms, filtering most relevant data from queries
■ Simple extension using your own adapters for personal use cases
● Easy setup for beginners: only need to modify the config file, compile and start the bot
● Arbitrarily complex extensions for advanced users: Logical separation of components
15
Fiete Lüer
fiete.lueer@e-mundo.de
+49 (0) 89 665 98 45 - 06
Maxim Dolgich
maxim.dolgich@e-mundo.de
Do not hesitate to contact us!

More Related Content

Similar to SFScon19 - Fiete Lüer - How to tame your chatbot DARK

Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureYshay Yaacobi
 
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
Kamon Ayeva   Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...Kamon Ayeva   Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...Vincenzo Barone
 
BP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application DeveloperBP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application DeveloperSerdar Basegmez
 
BP104 Have it YOUR way amd make it work for YOU
BP104 Have it YOUR way amd make it work for YOUBP104 Have it YOUR way amd make it work for YOU
BP104 Have it YOUR way amd make it work for YOUMat Newman
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaKim Moore
 
IETM for beginners A Quick Guide to IETM Software.pdf
IETM for beginners A Quick Guide to IETM Software.pdfIETM for beginners A Quick Guide to IETM Software.pdf
IETM for beginners A Quick Guide to IETM Software.pdfs1000dcodeandpixels
 
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialLotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialRyan Baxter
 
LangChain Intro by KeyMate.AI
LangChain Intro by KeyMate.AILangChain Intro by KeyMate.AI
LangChain Intro by KeyMate.AIOzgurOscarOzkan
 
LanGCHAIN Framework
LanGCHAIN FrameworkLanGCHAIN Framework
LanGCHAIN FrameworkKeymate.AI
 
The Laws of User Experience: Making it or breaking it with the UX Factor
The Laws of User Experience: Making it or breaking it with the UX FactorThe Laws of User Experience: Making it or breaking it with the UX Factor
The Laws of User Experience: Making it or breaking it with the UX FactorEffectiveUI
 
The Laws of User Experience: Making it or Breaking It with the UX Factor
The Laws of User Experience: Making it or Breaking It with the UX FactorThe Laws of User Experience: Making it or Breaking It with the UX Factor
The Laws of User Experience: Making it or Breaking It with the UX FactorEffective
 
Plomino plone conf2010
Plomino plone conf2010Plomino plone conf2010
Plomino plone conf2010ebrehault
 
App.Next - The Future of Domino Application Development
App.Next - The Future of Domino Application DevelopmentApp.Next - The Future of Domino Application Development
App.Next - The Future of Domino Application DevelopmentTeamstudio
 
A powerful web application server (intravision IBM Connect 2013 Update) Febru...
A powerful web application server (intravision IBM Connect 2013 Update) Febru...A powerful web application server (intravision IBM Connect 2013 Update) Febru...
A powerful web application server (intravision IBM Connect 2013 Update) Febru...Per Henrik Lausten
 
solution Challenge design and flutter day.pptx
solution Challenge design and flutter day.pptxsolution Challenge design and flutter day.pptx
solution Challenge design and flutter day.pptxGoogleDeveloperStude22
 
Becoming an IBM Connections Developer
Becoming an IBM Connections DeveloperBecoming an IBM Connections Developer
Becoming an IBM Connections DeveloperRob Novak
 
Intro to Open source. Amit Bhayani
Intro to Open source. Amit BhayaniIntro to Open source. Amit Bhayani
Intro to Open source. Amit Bhayaniguest2a6108
 

Similar to SFScon19 - Fiete Lüer - How to tame your chatbot DARK (20)

Not my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructureNot my problem - Delegating responsibility to infrastructure
Not my problem - Delegating responsibility to infrastructure
 
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
Kamon Ayeva   Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...Kamon Ayeva   Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
Kamon Ayeva Antipatterns, Patterns, And Rules Of Thumb For Successful Plone...
 
BP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application DeveloperBP 308 - The Journey to Becoming a Social Application Developer
BP 308 - The Journey to Becoming a Social Application Developer
 
IETM for beginners A Quick Guide to IETM Software
IETM for beginners A Quick Guide to IETM SoftwareIETM for beginners A Quick Guide to IETM Software
IETM for beginners A Quick Guide to IETM Software
 
BP104 Have it YOUR way amd make it work for YOU
BP104 Have it YOUR way amd make it work for YOUBP104 Have it YOUR way amd make it work for YOU
BP104 Have it YOUR way amd make it work for YOU
 
What Makes A Good Intranet
What Makes A Good IntranetWhat Makes A Good Intranet
What Makes A Good Intranet
 
Specification Of The Programming Language Of Java
Specification Of The Programming Language Of JavaSpecification Of The Programming Language Of Java
Specification Of The Programming Language Of Java
 
IETM for beginners A Quick Guide to IETM Software.pdf
IETM for beginners A Quick Guide to IETM Software.pdfIETM for beginners A Quick Guide to IETM Software.pdf
IETM for beginners A Quick Guide to IETM Software.pdf
 
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocialLotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
Lotusphere 2012 - Show115 - Socialize Your Apps Using OpenSocial
 
LangChain Intro by KeyMate.AI
LangChain Intro by KeyMate.AILangChain Intro by KeyMate.AI
LangChain Intro by KeyMate.AI
 
LanGCHAIN Framework
LanGCHAIN FrameworkLanGCHAIN Framework
LanGCHAIN Framework
 
The Laws of User Experience: Making it or breaking it with the UX Factor
The Laws of User Experience: Making it or breaking it with the UX FactorThe Laws of User Experience: Making it or breaking it with the UX Factor
The Laws of User Experience: Making it or breaking it with the UX Factor
 
The Laws of User Experience: Making it or Breaking It with the UX Factor
The Laws of User Experience: Making it or Breaking It with the UX FactorThe Laws of User Experience: Making it or Breaking It with the UX Factor
The Laws of User Experience: Making it or Breaking It with the UX Factor
 
Plomino plone conf2010
Plomino plone conf2010Plomino plone conf2010
Plomino plone conf2010
 
App.Next - The Future of Domino Application Development
App.Next - The Future of Domino Application DevelopmentApp.Next - The Future of Domino Application Development
App.Next - The Future of Domino Application Development
 
A powerful web application server (intravision IBM Connect 2013 Update) Febru...
A powerful web application server (intravision IBM Connect 2013 Update) Febru...A powerful web application server (intravision IBM Connect 2013 Update) Febru...
A powerful web application server (intravision IBM Connect 2013 Update) Febru...
 
solution Challenge design and flutter day.pptx
solution Challenge design and flutter day.pptxsolution Challenge design and flutter day.pptx
solution Challenge design and flutter day.pptx
 
Becoming an IBM Connections Developer
Becoming an IBM Connections DeveloperBecoming an IBM Connections Developer
Becoming an IBM Connections Developer
 
Bp209
Bp209Bp209
Bp209
 
Intro to Open source. Amit Bhayani
Intro to Open source. Amit BhayaniIntro to Open source. Amit Bhayani
Intro to Open source. Amit Bhayani
 

More from South Tyrol Free Software Conference

SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...
SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...
SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...South Tyrol Free Software Conference
 
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...South Tyrol Free Software Conference
 
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data Hub
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data HubSFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data Hub
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data HubSouth Tyrol Free Software Conference
 
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...South Tyrol Free Software Conference
 
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...South Tyrol Free Software Conference
 
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...South Tyrol Free Software Conference
 
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelines
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelinesSFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelines
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelinesSouth Tyrol Free Software Conference
 
SFSCON23 - Charles H. Schulz - Why open digital infrastructure matters
SFSCON23 - Charles H. Schulz - Why open digital infrastructure mattersSFSCON23 - Charles H. Schulz - Why open digital infrastructure matters
SFSCON23 - Charles H. Schulz - Why open digital infrastructure mattersSouth Tyrol Free Software Conference
 
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...South Tyrol Free Software Conference
 
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...South Tyrol Free Software Conference
 
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free software
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free softwareSFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free software
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free softwareSouth Tyrol Free Software Conference
 
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...South Tyrol Free Software Conference
 
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changer
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changerSFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changer
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changerSouth Tyrol Free Software Conference
 
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...South Tyrol Free Software Conference
 
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation Internet
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation InternetSFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation Internet
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation InternetSouth Tyrol Free Software Conference
 
SFSCON23 - Davide Vernassa - Empowering Insights Unveiling the latest innova...
SFSCON23 - Davide Vernassa - Empowering Insights  Unveiling the latest innova...SFSCON23 - Davide Vernassa - Empowering Insights  Unveiling the latest innova...
SFSCON23 - Davide Vernassa - Empowering Insights Unveiling the latest innova...South Tyrol Free Software Conference
 

More from South Tyrol Free Software Conference (20)

SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...
SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...
SFSCON23 - Rufai Omowunmi Balogun - SMODEX – a Python package for understandi...
 
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...
SFSCON23 - Roberto Innocenti - From the design to reality is here the Communi...
 
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data Hub
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data HubSFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data Hub
SFSCON23 - Martin Rabanser - Real-time aeroplane tracking and the Open Data Hub
 
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...
SFSCON23 - Marianna d'Atri Enrico Zanardo - How can Blockchain technologies i...
 
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...
SFSCON23 - Lucas Lasota - The Future of Connectivity, Open Internet and Human...
 
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...
SFSCON23 - Giovanni Giannotta - Intelligent Decision Support System for trace...
 
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelines
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelinesSFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelines
SFSCON23 - Elena Maines - Embracing CI/CD workflows for building ETL pipelines
 
SFSCON23 - Christian Busse - Free Software and Open Science
SFSCON23 - Christian Busse - Free Software and Open ScienceSFSCON23 - Christian Busse - Free Software and Open Science
SFSCON23 - Christian Busse - Free Software and Open Science
 
SFSCON23 - Charles H. Schulz - Why open digital infrastructure matters
SFSCON23 - Charles H. Schulz - Why open digital infrastructure mattersSFSCON23 - Charles H. Schulz - Why open digital infrastructure matters
SFSCON23 - Charles H. Schulz - Why open digital infrastructure matters
 
SFSCON23 - Andrea Vianello - Achieving FAIRness with EDP-portal
SFSCON23 - Andrea Vianello - Achieving FAIRness with EDP-portalSFSCON23 - Andrea Vianello - Achieving FAIRness with EDP-portal
SFSCON23 - Andrea Vianello - Achieving FAIRness with EDP-portal
 
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...
SFSCON23 - Thomas Aichner - How IoT and AI are revolutionizing Mass Customiza...
 
SFSCON23 - Stefan Mutschlechner - Smart Werke Meran
SFSCON23 - Stefan Mutschlechner - Smart Werke MeranSFSCON23 - Stefan Mutschlechner - Smart Werke Meran
SFSCON23 - Stefan Mutschlechner - Smart Werke Meran
 
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...
SFSCON23 - Mirko Boehm - European regulators cast their eyes on maturing OSS ...
 
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free software
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free softwareSFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free software
SFSCON23 - Marco Pavanelli - Monitoring the fleet of Sasa with free software
 
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...
SFSCON23 - Marco Cortella - KNOWAGE and AICS for 2030 agenda SDG goals monito...
 
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changer
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changerSFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changer
SFSCON23 - Lina Ceballos - Interoperable Europe Act - A real game changer
 
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...
SFSCON23 - Johannes Näder Linus Sehn - Let’s monitor implementation of Free S...
 
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation Internet
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation InternetSFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation Internet
SFSCON23 - Gabriel Ku Wei Bin - Why Do We Need A Next Generation Internet
 
SFSCON23 - Edoardo Scepi - The Brand-New Version of IGis Maps
SFSCON23 - Edoardo Scepi - The Brand-New Version of IGis MapsSFSCON23 - Edoardo Scepi - The Brand-New Version of IGis Maps
SFSCON23 - Edoardo Scepi - The Brand-New Version of IGis Maps
 
SFSCON23 - Davide Vernassa - Empowering Insights Unveiling the latest innova...
SFSCON23 - Davide Vernassa - Empowering Insights  Unveiling the latest innova...SFSCON23 - Davide Vernassa - Empowering Insights  Unveiling the latest innova...
SFSCON23 - Davide Vernassa - Empowering Insights Unveiling the latest innova...
 

Recently uploaded

TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024Stephen Perrenod
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxJennifer Lim
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...CzechDreamin
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandIES VE
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGDSC PJATK
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101vincent683379
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsStefano
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe中 央社
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...marcuskenyatta275
 

Recently uploaded (20)

TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Using IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & IrelandUsing IESVE for Room Loads Analysis - UK & Ireland
Using IESVE for Room Loads Analysis - UK & Ireland
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
TEST BANK For, Information Technology Project Management 9th Edition Kathy Sc...
 

SFScon19 - Fiete Lüer - How to tame your chatbot DARK

  • 1. HOW TO TAME YOUR CHATBOT A novel chatbot architecture to protect your privacy Fiete Lüer 15. November 2019
  • 2. eMundo © 2019 TABLE OF CONTENTS 1. INTRODUCTION 2. WHAT’S WRONG? 3. HOW COULD IT BE CHANGED? 4. IMPLEMENTATION: EMUBOT 5. CONCLUSION 2
  • 3. eMundo © 2019 INTRODUCTION NLP / NLU NLP Natural Language Processing sentiment analysis summarization relation extraction machine translation automated speech recognition question answering named entity recognition 3
  • 4. eMundo © 2019 INTRODUCTION NLP / NLU NLP Natural Language Processing NLU Natural Language Understanding sentiment analysis summarization relation extraction machine translation automated speech recognition question answering named entity recognition 4
  • 5. eMundo © 2019 INTRODUCTION Standard Procedure - Training 1. Define what you want your bot to answer → Which intents should be handled? 2. Define terms/groupings of words that are relevant to understand the intent → Which entities are important? 3. Define (often static) responses 4. Implement advanced concepts → e.g. contexts, actions for non-static content NLP-SERVICE An NLP service provider: Dialogflow, LUIS, Lex, Rasa, Snips, ... 5
  • 6. eMundo © 2019 INTRODUCTION Standard Procedure - Inference NLP-SERVICE An NLP service provider: Dialogflow, LUIS, Lex, Rasa, Snips, ... MESSAGING PLATFORM A messaging service: Facebook Messenger, Slack, Website, Google Chat, ... Text query 6
  • 7. eMundo © 2019 INTRODUCTION Standard Procedure - Inference NLP-SERVICE An NLP service provider: Dialogflow, LUIS, Lex, Rasa, Snips, ... MESSAGING PLATFORM A messaging service: Facebook Messenger, Slack, Website, Google Chat, ... Text query Determine the intention of the user: What does the user want? 7
  • 8. eMundo © 2019 INTRODUCTION Standard Procedure - Inference NLP-SERVICE An NLP service provider: Dialogflow, LUIS, Lex, Rasa, Snips, ... MESSAGING PLATFORM A messaging service: Facebook Messenger, Slack, Website, Google Chat, ... Text query Determine the intention of the user: What does the user want? Response: static (often from NLP-Service) or dynamic (some predefined action) 8
  • 9. eMundo © 2019 WHAT’S WRONG? (Some) Weaknesses ● Non-tech / inexperienced: Out-of-the-box solutions! ● One-click integrations! ■ Give me your keys and we will handle everything. Your user data is safe™! ● Frameworks: minimal examples ■ Keep your keys. ■ Keep the functionality and complexity minimal ■ Often quite outdated, too simplistic, and barely documented 9
  • 10. eMundo © 2019 HOW COULD IT BE CHANGED? Proposed Architecture - Key Ideas ● Logically separated entities ● Easy to include means to protect the privacy of host and user ● Expandability by design ● Easy setup, minimize the required configuration ● Minimize overhead ● Thorough documentation 10
  • 11. eMundo © 2019 MESSAGING PLATFORM NLP-SERVICE FACEBOOK MESSENGER SLACK ADDITIONAL SERVICES VIA CUSTOM ADAPTER ADDITIONAL SERVICES VIA CUSTOM ADAPTER SNIPS RASA.AI DIALOGFLOW WEBSITE YOUR OWN NLP-SERVICE DIFFERENT NLP SERVICE (AMAZON LEX, FACEBOOK WIT.AI …) DIFFERENT MESSENGER (GOOGLE CHAT, ROCKET CHAT …) 11
  • 12. eMundo © 2019 MESSAGING PLATFORM NLP-SERVICE FACEBOOK MESSENGER SLACK ADDITIONAL SERVICES VIA CUSTOM ADAPTER ADDITIONAL SERVICES VIA CUSTOM ADAPTER SNIPS RASA.AI DIALOGFLOW WEBSITE YOUR OWN NLP-SERVICE DIFFERENT NLP SERVICE (AMAZON LEX, FACEBOOK WIT.AI …) DIFFERENT MESSENGER (GOOGLE CHAT, ROCKET CHAT …) 12 SERVER EMUBOT COREADAPTER LAYER CHAT ADAPTER LAYER NLP NLP ADAPTER CHAT ADAPTER MESSAGE HANDLER
  • 13. eMundo © 2019 MESSAGING PLATFORM NLP-SERVICE FACEBOOK MESSENGER SLACK ADDITIONAL SERVICES VIA CUSTOM ADAPTER ADDITIONAL SERVICES VIA CUSTOM ADAPTER SNIPS RASA.AI DIALOGFLOW WEBSITE YOUR OWN NLP-SERVICE DIFFERENT NLP SERVICE (AMAZON LEX, FACEBOOK WIT.AI …) DIFFERENT MESSENGER (GOOGLE CHAT, ROCKET CHAT …) 13 SERVER EMUBOT COREADAPTER LAYER CHAT ADAPTER LAYER NLP CUSTOM CODE INTERFACE CHAT TO CORE INTERFACE NLP TO CORE INTERFACE NLP TO NLP ADDITIONAL SERVICES, E.G. EXTERNAL APIs DATABASE MESSAGE MANIPULATION NLP ADAPTER CHAT ADAPTER MESSAGE HANDLER
  • 14. eMundo © 2019 IMPLEMENTATION emubot ● Different setups: ● Basic framework: (currently) similar to one-click integration, mainly to offer the functionality, typings, ... ● Minimal example: via npm, mirror messages at interceptors, similar to one-click integration ● Extensive example: pseudonymize the user id, execute actions, connect to database, … ● Typescript ● (Soon to be) open source at github.com/emundo/emubot ● Extensive documentation including ● the basic setup, ● information on adapters, and ● advanced topics (like containerization) 14
  • 15. eMundo © 2019 CONCLUSION ● Current connectors/frameworks are usually solely focusing on offering minimal examples ● emubot: ● Currently no pseudonymization by default, but included in one of the extended examples ● Adapters for several platforms, filtering most relevant data from queries ■ Simple extension using your own adapters for personal use cases ● Easy setup for beginners: only need to modify the config file, compile and start the bot ● Arbitrarily complex extensions for advanced users: Logical separation of components 15
  • 16. Fiete Lüer fiete.lueer@e-mundo.de +49 (0) 89 665 98 45 - 06 Maxim Dolgich maxim.dolgich@e-mundo.de Do not hesitate to contact us!