SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
www.neosperience.com | blog.neosperience.com | info@neosperience.com
April 2017
Serverless chatbot:
from idea to production at blazing speed
Luca Bianchi,
Chief Technology Officer
Who am I? - Luca Bianchi @ Neosperience
CTO @ Neosperience
Working on a lot of bleeding edge technologies. Passionate developer. Love writing code, not Powerpoints.
Full stack developer, CTO, product owner, gamer..
github.com/aletheia
https://it.linkedin.com/in/lucabianchipavia
@bianchiluca
luca.bianchi@neosperience.com
The Digital Customer Experience Company, aims to change the way brands and customers
interact with an approach of a software vendor targeting Digital Customer Experience as the
evolution of Marketing automation.
Neosperience Cloud
Reward
Gamification
Loyalty
Showroom
WishlistCard
Store
Customer
Context
Serverless User Group
• We want you!
Call for Speakers:
http://clda.co/serverless-italy
• 282 members and still growing
• Next Meetups
- Tonight @ Mikamai
- May, 18th
- Partner with Chatbot Meetup
The Serverless Manifesto
✓ Functions are the unit of development and scaling
✓ No machine, VMs or containers visible in the programming model
✓ Permanent storage lives elsewhere (stateless code)
✓ Scales per request. Users cannot over or under-provision capacity
✓ Never pay for idle
✓ Implicitly fault tolerant
✓ BYOC - Bring Your Own Code
✓ Metrics and logging are an universal right
The Serverless Framework (aka serverless.com)
✓ Fast moving (with a bi-weekly release model)
✓ Funded by a 3M investment
✓ Manages service deployments and provisioning
✓ Vendor independent (in a future release)
✓ Auto-provision of resources
✓ Supports for micro-services
✓ Improved plugin management system
✓ Production ready
Getting started
• Install Serverless locally (trust me, it’s better)

npm install serverless —save
• Create a function in NodeJS (Java and Python supported too)

serverless create —template=aws-nodejs
• Deploy service

serverless deploy
done!
conversate.eu
Conversate's innovative Natural Language Understanding platform powers high quality
chatbots and natural language interfaces
• “Conversation UX platform”
• Natural language understanding: intent recognition, entity extraction
• Conversational engine
• Optionally speech recognition and TTS
• Focused on Italian language
• Leverages Neosperience DCX capabilities to build domain-specific chatbots
Facebook Messenger Platform
• Build chatbots for messenger
• Chatbots are related to a Facebook Page
• Chatbots must be reviewed for approval
• Complex setup, webhook checking
• (new) App and Page users can be tracked together
DEMO Neosperience DCX Bot

http://m.me/neosperience
Architecture Facebook Bot Messenger
Platform
1. send
message
2. HTTP method
call to REST 3. synch HTTP call
to conversate
4.Context
and answer
5. message sent
back to Facebook
6. Message
Messenger Hook
Service
Conversational engine
How to setup?
• Create a project

• Create entities

• Train AI algorithm

• Predict answers
Configure Messenger App
How to setup?
• Create a Facebook Page (chat bots live inside Pages)

• Create a Facebook App (optional)

• Setup webhooks: Messenger will send here the messages of the user

• Security considerations: verify token and page access token

• Subscribe app to page events (eg. new message)

• Receive messages and postbacks, and send structured response

https://developers.facebook.com/docs/messenger-platform/
Serverless
How to setup?
• Start with serverless create

• Write API Gateway endpoint 

• Write Lambda handler (use proxy integration)

• Persist chat context data (i.e. using DynamoDB)

• Implement REST calls to NLP platform
Anatomy of a service
JSON
Request Event
JSON
Response Event
Request
to Api.ai
Response
from Api.ai
Anatomy of a service
• When the webhook is called by Facebook, the lambda is invoked
• Parses Messenger payload and extracts user message
• Assembles conversate message requests and sends it to REST api endpoint
• Parses conversate including recognized intent and bot response
• Assembles Messenger response and sends it back to Messenger
• Administrative functions (verify token authentication, page subscription)
Chatbots are channels, Serverless technologies allow fast prototyping and rollout to
production, microservices enable assembling systems in no time…
An use case for a Loyalty Chatbot
Build a chatbot to support loyalty programs adoption by users.
Loyalty programs are a powerful tool to enhance customer fidelization, but have to overcome the acquisition
limit. Apps are suitable for continuous usage, but have a considerable friction because require installation.
Chatbots could be an easy and fast way to avoid users the need to install apps and provide support for
loyalty logics, rewards retrieval and action performing.
DEMO Meet Gummy
Architecture
Facebook Bot Messenger
Platform
1. send
message
2. HTTP method
call to REST 3. synch HTTP call
to conversate
4.Context
and answer
5. message sent
back to Facebook
6. Message
Gamification / Loyalty
Actions Services
Gamification / Loyalty
Reward Services
Messenger Hook
Service
The good…
• Fast time to market
• Modularity by design
• Functions can run locally
• Everything is contained and versioned
• Serverless avoids a lot of boilerplate
• Incremental deployments
• Supports CI
• Cost-effective (if you already have APIs)
…the bad…
• Architecture has to be enforced (no opinionated view: your code is as good as
the developer who writes it)
• Testing is unavoidable, TDD is encouraged
• Every deploy hits the cloud
• Avoid Lambda cold start issue
• Not everything is supported by CloudFormation
• Many pieces stored in different places
…the ugly
• Testing sometimes is a pain (no Facebook support)
• Users are not logged into the system
• Unclear approval process rules
Slides available on Slideshare

http://bit.ly/thm-20170420
Have questions?
drop me an e-mail!
luca.bianchi@neosperience.com

Weitere ähnliche Inhalte

Was ist angesagt?

How a chat bot using dialog flow works
How a chat bot using dialog flow worksHow a chat bot using dialog flow works
How a chat bot using dialog flow worksCountants
 
Finance bots - The move toward conversational finance
Finance bots - The move toward conversational financeFinance bots - The move toward conversational finance
Finance bots - The move toward conversational financeOrganic, Inc
 
Robotic Process Automation Solutions and best rpa chatbot
Robotic Process Automation Solutions and best rpa chatbotRobotic Process Automation Solutions and best rpa chatbot
Robotic Process Automation Solutions and best rpa chatbotDivyanshi Jain
 
Building bots to automate common developer tasks - Writing your first smart c...
Building bots to automate common developer tasks - Writing your first smart c...Building bots to automate common developer tasks - Writing your first smart c...
Building bots to automate common developer tasks - Writing your first smart c...Sigmoid
 
How to build a Chatbot with Google's Dialogflow
How to build a Chatbot with Google's DialogflowHow to build a Chatbot with Google's Dialogflow
How to build a Chatbot with Google's DialogflowMoses Sam Paul Johnraj
 
Conversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeConversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeMatthieu Varagnat
 
Chatbot Basics - Building Chatbots using Google Dialogflow
Chatbot Basics - Building Chatbots using Google DialogflowChatbot Basics - Building Chatbots using Google Dialogflow
Chatbot Basics - Building Chatbots using Google DialogflowBiswaranjan Rout
 
Manchester HUG August 18 - Bots & Conversational Marketing
Manchester HUG August 18 - Bots & Conversational MarketingManchester HUG August 18 - Bots & Conversational Marketing
Manchester HUG August 18 - Bots & Conversational MarketingDigital 22 Online Limited
 
Chatbot workshop introduction.#digitized16
Chatbot workshop introduction.#digitized16 Chatbot workshop introduction.#digitized16
Chatbot workshop introduction.#digitized16 Warply
 
Grow partner webinar presentation
Grow partner webinar presentationGrow partner webinar presentation
Grow partner webinar presentationmanigandan ganesan
 
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018Bots & Machine Learning Change Customer Interactions - Connected Brains 2018
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018LoQutus
 
Few Chatbots Expert Interview Questions & Answer For Freshers
Few Chatbots Expert Interview Questions & Answer For FreshersFew Chatbots Expert Interview Questions & Answer For Freshers
Few Chatbots Expert Interview Questions & Answer For FreshersRobert Smith
 
Hug october-inbound15-roundup
Hug october-inbound15-roundupHug october-inbound15-roundup
Hug october-inbound15-roundupKatapultInbound
 
eCommerce Forum 2015 - I 5 trend del Digital Direct Marketing
eCommerce Forum 2015 - I 5 trend del Digital Direct MarketingeCommerce Forum 2015 - I 5 trend del Digital Direct Marketing
eCommerce Forum 2015 - I 5 trend del Digital Direct MarketingContactlab
 
eCommerce Forum 2015 - Il potere delle email transazionali
eCommerce Forum 2015 - Il potere delle email transazionalieCommerce Forum 2015 - Il potere delle email transazionali
eCommerce Forum 2015 - Il potere delle email transazionaliContactlab
 
Biz appsinfopacket enrique_v2
Biz appsinfopacket enrique_v2Biz appsinfopacket enrique_v2
Biz appsinfopacket enrique_v23121907
 

Was ist angesagt? (20)

How a chat bot using dialog flow works
How a chat bot using dialog flow worksHow a chat bot using dialog flow works
How a chat bot using dialog flow works
 
What is a chatbot?
What is a chatbot?What is a chatbot?
What is a chatbot?
 
Finance bots - The move toward conversational finance
Finance bots - The move toward conversational financeFinance bots - The move toward conversational finance
Finance bots - The move toward conversational finance
 
Robotic Process Automation Solutions and best rpa chatbot
Robotic Process Automation Solutions and best rpa chatbotRobotic Process Automation Solutions and best rpa chatbot
Robotic Process Automation Solutions and best rpa chatbot
 
Building bots to automate common developer tasks - Writing your first smart c...
Building bots to automate common developer tasks - Writing your first smart c...Building bots to automate common developer tasks - Writing your first smart c...
Building bots to automate common developer tasks - Writing your first smart c...
 
How to build a Chatbot with Google's Dialogflow
How to build a Chatbot with Google's DialogflowHow to build a Chatbot with Google's Dialogflow
How to build a Chatbot with Google's Dialogflow
 
ConvoLab_Slides
ConvoLab_SlidesConvoLab_Slides
ConvoLab_Slides
 
Conversational interfaces - beyond the hype
Conversational interfaces - beyond the hypeConversational interfaces - beyond the hype
Conversational interfaces - beyond the hype
 
Chatbot Basics - Building Chatbots using Google Dialogflow
Chatbot Basics - Building Chatbots using Google DialogflowChatbot Basics - Building Chatbots using Google Dialogflow
Chatbot Basics - Building Chatbots using Google Dialogflow
 
Manchester HUG August 18 - Bots & Conversational Marketing
Manchester HUG August 18 - Bots & Conversational MarketingManchester HUG August 18 - Bots & Conversational Marketing
Manchester HUG August 18 - Bots & Conversational Marketing
 
Dialogflow
DialogflowDialogflow
Dialogflow
 
Chatbot workshop introduction.#digitized16
Chatbot workshop introduction.#digitized16 Chatbot workshop introduction.#digitized16
Chatbot workshop introduction.#digitized16
 
Grow partner webinar presentation
Grow partner webinar presentationGrow partner webinar presentation
Grow partner webinar presentation
 
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018Bots & Machine Learning Change Customer Interactions - Connected Brains 2018
Bots & Machine Learning Change Customer Interactions - Connected Brains 2018
 
Few Chatbots Expert Interview Questions & Answer For Freshers
Few Chatbots Expert Interview Questions & Answer For FreshersFew Chatbots Expert Interview Questions & Answer For Freshers
Few Chatbots Expert Interview Questions & Answer For Freshers
 
Wechat Bible for Brands v1
Wechat Bible for Brands v1Wechat Bible for Brands v1
Wechat Bible for Brands v1
 
Hug october-inbound15-roundup
Hug october-inbound15-roundupHug october-inbound15-roundup
Hug october-inbound15-roundup
 
eCommerce Forum 2015 - I 5 trend del Digital Direct Marketing
eCommerce Forum 2015 - I 5 trend del Digital Direct MarketingeCommerce Forum 2015 - I 5 trend del Digital Direct Marketing
eCommerce Forum 2015 - I 5 trend del Digital Direct Marketing
 
eCommerce Forum 2015 - Il potere delle email transazionali
eCommerce Forum 2015 - Il potere delle email transazionalieCommerce Forum 2015 - Il potere delle email transazionali
eCommerce Forum 2015 - Il potere delle email transazionali
 
Biz appsinfopacket enrique_v2
Biz appsinfopacket enrique_v2Biz appsinfopacket enrique_v2
Biz appsinfopacket enrique_v2
 

Ähnlich wie Serverless chatbot: from idea to production at blazing speed

Serverless chatbot: from idea to production at blazing speed
Serverless chatbot: from idea to production at blazing speedServerless chatbot: from idea to production at blazing speed
Serverless chatbot: from idea to production at blazing speedPaolo Montrasio
 
Microsoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveMicrosoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveThomas Gölles
 
Frankly Chat Competitive Analysis
Frankly Chat Competitive AnalysisFrankly Chat Competitive Analysis
Frankly Chat Competitive AnalysisLauren P. Dodge
 
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveThomas Gölles
 
Build an Intelligent Bot (Node.js)
Build an Intelligent Bot (Node.js)Build an Intelligent Bot (Node.js)
Build an Intelligent Bot (Node.js)Sorin Peste
 
Global Azure2021 Verona.pptx
Global Azure2021 Verona.pptxGlobal Azure2021 Verona.pptx
Global Azure2021 Verona.pptxLuis Beltran
 
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ..."Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...Tech in Asia ID
 
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptx
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptxPDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptx
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptxLuis Beltran
 
Microsoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIMicrosoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIThomas Gölles
 
Chatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationChatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationKushan Lahiru Perera
 
Using Chatbots in Extension Programming
Using Chatbots in Extension ProgrammingUsing Chatbots in Extension Programming
Using Chatbots in Extension ProgrammingAmy Cole
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkHaaron Gonzalez
 
What new in Microsoft AI?
What new in Microsoft AI?What new in Microsoft AI?
What new in Microsoft AI?Cheah Eng Soon
 
The lifecycle of a chatbot
The lifecycle of a chatbotThe lifecycle of a chatbot
The lifecycle of a chatbotSohan Maheshwar
 
Supriya Saha Resume
Supriya Saha ResumeSupriya Saha Resume
Supriya Saha Resumesupriya saha
 
AI, The Enterprise, and You
AI, The Enterprise, and YouAI, The Enterprise, and You
AI, The Enterprise, and YouDavid Wesst
 

Ähnlich wie Serverless chatbot: from idea to production at blazing speed (20)

Serverless chatbot: from idea to production at blazing speed
Serverless chatbot: from idea to production at blazing speedServerless chatbot: from idea to production at blazing speed
Serverless chatbot: from idea to production at blazing speed
 
Chatbot Meetup
Chatbot MeetupChatbot Meetup
Chatbot Meetup
 
Microsoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspectiveMicrosoft teams & bot framework - A developer's perspective
Microsoft teams & bot framework - A developer's perspective
 
Frankly Chat Competitive Analysis
Frankly Chat Competitive AnalysisFrankly Chat Competitive Analysis
Frankly Chat Competitive Analysis
 
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s PerspectiveESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
ESPC Teams week Microsoft Teams & Bot Framework – a Developer’s Perspective
 
Build an Intelligent Bot (Node.js)
Build an Intelligent Bot (Node.js)Build an Intelligent Bot (Node.js)
Build an Intelligent Bot (Node.js)
 
Global Azure2021 Verona.pptx
Global Azure2021 Verona.pptxGlobal Azure2021 Verona.pptx
Global Azure2021 Verona.pptx
 
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ..."Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
"Build AI Compliant Whatsapp-like Chat App Using Qiscus SDK" by Evan Purnama ...
 
LUIS and Bots
LUIS and BotsLUIS and Bots
LUIS and Bots
 
Accemy Chatbots expertise
Accemy Chatbots expertiseAccemy Chatbots expertise
Accemy Chatbots expertise
 
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptx
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptxPDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptx
PDCConf2021 - Serverless WhatsApp Chatbot with Azure AI.pptx
 
Microsoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AIMicrosoft Teams Development - Conversational AI
Microsoft Teams Development - Conversational AI
 
Chatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaborationChatbot technology- The innovative enterprise collaboration
Chatbot technology- The innovative enterprise collaboration
 
Using Chatbots in Extension Programming
Using Chatbots in Extension ProgrammingUsing Chatbots in Extension Programming
Using Chatbots in Extension Programming
 
Fastlix
FastlixFastlix
Fastlix
 
Target SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint FrameworkTarget SharePoint and Teams with SharePoint Framework
Target SharePoint and Teams with SharePoint Framework
 
What new in Microsoft AI?
What new in Microsoft AI?What new in Microsoft AI?
What new in Microsoft AI?
 
The lifecycle of a chatbot
The lifecycle of a chatbotThe lifecycle of a chatbot
The lifecycle of a chatbot
 
Supriya Saha Resume
Supriya Saha ResumeSupriya Saha Resume
Supriya Saha Resume
 
AI, The Enterprise, and You
AI, The Enterprise, and YouAI, The Enterprise, and You
AI, The Enterprise, and You
 

Kürzlich hochgeladen

SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationShrmpro
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...masabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsBert Jan Schrijver
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburgmasabamasaba
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 

Kürzlich hochgeladen (20)

SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Generic or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisionsGeneric or specific? Making sensible software design decisions
Generic or specific? Making sensible software design decisions
 
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
%in Lydenburg+277-882-255-28 abortion pills for sale in Lydenburg
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 

Serverless chatbot: from idea to production at blazing speed

  • 1. www.neosperience.com | blog.neosperience.com | info@neosperience.com April 2017 Serverless chatbot: from idea to production at blazing speed Luca Bianchi, Chief Technology Officer
  • 2. Who am I? - Luca Bianchi @ Neosperience CTO @ Neosperience Working on a lot of bleeding edge technologies. Passionate developer. Love writing code, not Powerpoints. Full stack developer, CTO, product owner, gamer.. github.com/aletheia https://it.linkedin.com/in/lucabianchipavia @bianchiluca luca.bianchi@neosperience.com
  • 3. The Digital Customer Experience Company, aims to change the way brands and customers interact with an approach of a software vendor targeting Digital Customer Experience as the evolution of Marketing automation. Neosperience Cloud Reward Gamification Loyalty Showroom WishlistCard Store Customer Context
  • 4. Serverless User Group • We want you! Call for Speakers: http://clda.co/serverless-italy • 282 members and still growing • Next Meetups - Tonight @ Mikamai - May, 18th - Partner with Chatbot Meetup
  • 5. The Serverless Manifesto ✓ Functions are the unit of development and scaling ✓ No machine, VMs or containers visible in the programming model ✓ Permanent storage lives elsewhere (stateless code) ✓ Scales per request. Users cannot over or under-provision capacity ✓ Never pay for idle ✓ Implicitly fault tolerant ✓ BYOC - Bring Your Own Code ✓ Metrics and logging are an universal right
  • 6. The Serverless Framework (aka serverless.com) ✓ Fast moving (with a bi-weekly release model) ✓ Funded by a 3M investment ✓ Manages service deployments and provisioning ✓ Vendor independent (in a future release) ✓ Auto-provision of resources ✓ Supports for micro-services ✓ Improved plugin management system ✓ Production ready
  • 7. Getting started • Install Serverless locally (trust me, it’s better)
 npm install serverless —save • Create a function in NodeJS (Java and Python supported too)
 serverless create —template=aws-nodejs • Deploy service
 serverless deploy done!
  • 8. conversate.eu Conversate's innovative Natural Language Understanding platform powers high quality chatbots and natural language interfaces • “Conversation UX platform” • Natural language understanding: intent recognition, entity extraction • Conversational engine • Optionally speech recognition and TTS • Focused on Italian language • Leverages Neosperience DCX capabilities to build domain-specific chatbots
  • 9. Facebook Messenger Platform • Build chatbots for messenger • Chatbots are related to a Facebook Page • Chatbots must be reviewed for approval • Complex setup, webhook checking • (new) App and Page users can be tracked together
  • 10. DEMO Neosperience DCX Bot
 http://m.me/neosperience
  • 11. Architecture Facebook Bot Messenger Platform 1. send message 2. HTTP method call to REST 3. synch HTTP call to conversate 4.Context and answer 5. message sent back to Facebook 6. Message Messenger Hook Service
  • 12. Conversational engine How to setup? • Create a project • Create entities • Train AI algorithm • Predict answers
  • 13. Configure Messenger App How to setup? • Create a Facebook Page (chat bots live inside Pages) • Create a Facebook App (optional) • Setup webhooks: Messenger will send here the messages of the user • Security considerations: verify token and page access token • Subscribe app to page events (eg. new message) • Receive messages and postbacks, and send structured response https://developers.facebook.com/docs/messenger-platform/
  • 14. Serverless How to setup? • Start with serverless create • Write API Gateway endpoint • Write Lambda handler (use proxy integration) • Persist chat context data (i.e. using DynamoDB) • Implement REST calls to NLP platform
  • 15. Anatomy of a service JSON Request Event JSON Response Event Request to Api.ai Response from Api.ai
  • 16. Anatomy of a service • When the webhook is called by Facebook, the lambda is invoked • Parses Messenger payload and extracts user message • Assembles conversate message requests and sends it to REST api endpoint • Parses conversate including recognized intent and bot response • Assembles Messenger response and sends it back to Messenger • Administrative functions (verify token authentication, page subscription)
  • 17. Chatbots are channels, Serverless technologies allow fast prototyping and rollout to production, microservices enable assembling systems in no time… An use case for a Loyalty Chatbot Build a chatbot to support loyalty programs adoption by users. Loyalty programs are a powerful tool to enhance customer fidelization, but have to overcome the acquisition limit. Apps are suitable for continuous usage, but have a considerable friction because require installation. Chatbots could be an easy and fast way to avoid users the need to install apps and provide support for loyalty logics, rewards retrieval and action performing.
  • 19. Architecture Facebook Bot Messenger Platform 1. send message 2. HTTP method call to REST 3. synch HTTP call to conversate 4.Context and answer 5. message sent back to Facebook 6. Message Gamification / Loyalty Actions Services Gamification / Loyalty Reward Services Messenger Hook Service
  • 20. The good… • Fast time to market • Modularity by design • Functions can run locally • Everything is contained and versioned • Serverless avoids a lot of boilerplate • Incremental deployments • Supports CI • Cost-effective (if you already have APIs)
  • 21. …the bad… • Architecture has to be enforced (no opinionated view: your code is as good as the developer who writes it) • Testing is unavoidable, TDD is encouraged • Every deploy hits the cloud • Avoid Lambda cold start issue • Not everything is supported by CloudFormation • Many pieces stored in different places
  • 22. …the ugly • Testing sometimes is a pain (no Facebook support) • Users are not logged into the system • Unclear approval process rules
  • 23. Slides available on Slideshare
 http://bit.ly/thm-20170420 Have questions? drop me an e-mail! luca.bianchi@neosperience.com