skip to main content
10.1145/3007203.3007217acmconferencesArticle/Chapter ViewAbstractPublication PagesmiddlewareConference Proceedingsconference-collections
research-article

Building a Chatbot with Serverless Computing

Published:12 December 2016Publication History

ABSTRACT

Chatbots are emerging as the newest platform used by millions of consumers worldwide due in part to the commoditization of natural language services, which provide provide developers with many building blocks to create chatbots inexpensively. However, it is still difficult to build and deploy chatbots. Developers need to handle the coordination of the cognitive services to build the chatbot interface, integrate the chatbot with external services, and worry about extensibility, scalability, and maintenance. In this work, we present the architecture and prototype of a chatbot using a serverless platform, where developers compose stateless functions together to perform useful actions. We describe our serverless architecture based on function sequences, and how we used these functions to coordinate the cognitive microservices in the Watson Developer Cloud to allow the chatbot to interact with external services. The serverless model improves the extensibility of our chatbot, which currently supports 6 abilities: location based weather reports, jokes, date, reminders, and a simple music tutor.

References

  1. Weizenbaum, Joseph. "ELIZA---a computer program for the study of natural language communication between man and machine." Communications of the ACM 9.1 (1966): 36--45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Facebook Messenger Platform, https://messengerplatform.fb.comGoogle ScholarGoogle Scholar
  3. AskTanmay, https://github.com/tanmayb123/AskTanmay.Google ScholarGoogle Scholar
  4. Watson Developer Cloud, https://www.ibm.com/watson/developercloud/Google ScholarGoogle Scholar
  5. OpenWhisk, https://github.com/openwhisk/openwhiskGoogle ScholarGoogle Scholar
  6. Shawar, Bayan Abu, and Eric Atwell. "Chatbots: are they really useful?." LDV Forum. Vol. 22. No. 1. 2007.Google ScholarGoogle Scholar
  7. Yu, Jin, et al. "Understanding mashup development." IEEE Internet computing 12.5 (2008): 44--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Tai, Stefan, Rania Khalaf, and Thomas Mikalsen. "Composition of coordinated web services." ACM/IFIP/USENIX International Conference on Distributed Systems Platforms and Open Distributed Processing. Springer Berlin Heidelberg, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Alexa Skills Set SDK, https://developer.amazon.com/appsandservices/solutions/alexa/alexa-skills-kit.Google ScholarGoogle Scholar
  10. Baldini, I., Castro, P., Cheng, P., Fink, S., Ishakian, V., Mitchell, N., ... & Suter, P. (2016, May). Cloud-native, event-based programming for mobile applications. In Proceedings of the International Workshop on Mobile Software Engineering and Systems (pp. 287--288). ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Hendrickson, Scott, et al. "Serverless Computation with OpenLambda." 8th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 16). 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. AWS Lambda, https://aws.amazon.com/lambda/Google ScholarGoogle Scholar
  13. Obie Fernandez, Serverless: Patterns of Modern Application Design Using Microservices (Amazon Web Services Edition), in preparation, https://leanpub.com/serverlessGoogle ScholarGoogle Scholar

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    MOTA '16: Proceedings of the 1st International Workshop on Mashups of Things and APIs
    December 2016
    34 pages
    ISBN:9781450346696
    DOI:10.1145/3007203

    Copyright © 2016 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 12 December 2016

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article
    • Research
    • Refereed limited

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader