Chatbot Technology PDF
Chatbot Technology PDF
Chatbot Technology PDF
Jnana-Sangama, Belagavi-590018
A Seminar Report on
“CHATBOT TECHNOLOGY”
In partial fulfilment for the award of degree
BACHELOR OF ENGINEERING
In
COMPUTER SCIENCE & ENGINEERING
Submitted by
EXAMINERS:
1
2
ACKNOWLEDGEMENT
02 HISTORY
05 TYPES OF CHATBOTS
07 CONCLUSION
08 REFERENCES
CHATBOT TECHNOLOGY
1. Introduction
Artificial Intelligence (AI) increasingly integrates our daily lives with the
creation and analysis of intelligent software and hardware, called intelligent agents.
Intelligent agents can do a variety of tasks ranging from labor work to sophisticated
operations. A chatbot is a typical example of an AI system and one of the most
elementary and widespread examples of intelligent Human-Computer Interaction
(HCI). It is a computer pro- gram, which responds like a smart entity when
conversed with through text or voice and understands one or more human
languages by Natural Language Processing (NLP).
In the lexicon, a chatbot is defined as “A computer program designed to
simulate con- versation with human users, especially over the Internet” Chatbots
are also known as smart bots, interactive agents, digital assistants, or artificial
conversation entities.Chatbots.
They became so popular because there are many advantages of chatbots
for users and developers too. Most implementations are platform-independent
and instantly available to users without needed installations. Contact to the
chatbot is spread through a user’s social graph without leaving the messaging app
the chatbot lives in, which provides and guarantees the user’s identity. Moreover,
payment services are integrated into the messaging system and can be used safely
and reliably and a notification system re-engages inactive users. Chatbots are
integrated with group conversations or shared just like any other contact, while
multiple conversations can be carried forward in parallel. Knowledge in the use of
one chatbot is easily transferred to the usage of other chatbots, and there are
limited data requirements. Communication reliability, fast and uncomplicated
development iterations, lack of version fragmentation, and limited design efforts
for the interface are some of the advantages for developers too
The rest of the paper is organized as follows. In Sect. 2, we briefly present
the history of chatbots and highlight the growing interest of the research
community. In Sect. 3, some issues about the association with chatbots are
discussed, while in Sect. 4, essential concepts relevant to chatbot technology are
described. Next, in Sect. 5, we present a classification of existing chatbots while in
Sect. 6, we present the underlying chatbot architecture and the leading platforms
for their development. Finally, Sect. 7 reports conclusions and highlights further
research topics.
2. History
Alan Turing in 1950 proposed the Turing Test (“Can machines think?”), and it
was at that time that the idea of a chatbot was popularized. The first known
chatbot was Eliza, developed in 1966, whose purpose was to act as a
psychotherapist returning the user utterances in a question form. It used simple
pattern matching and a template- based response mechanism. Its conversational
ability was not good, but it was enough to confuse people at a time when they were
not used to interacting with computers and give them the impetus to start
developing other chatbots. An improvement over ELIZA was a chatbot with a
personality named PARRY developed in 1972. In 1995, the chatbot ALICE was
developed which won the Loebner Prize, an annual Turing Test, in years 2000,
2001, and 2004. It was the first computer to gain the rank of the “most human
computer”. ALICE relies on a simple pattern-matching algorithm with the
underlying intelligence based on the Artificial Intelligence Markup Language
(AIML) , which makes it possible for developers to define the building blocks of the
chatbot knowledge . Chatbots, like SmarterChild in 2001, were developed and
became available through messenger applications. The next step was the creation
of virtual personal assistants like Apple Siri, Microsoft Cortana, Amazon Alexa,
Google Assistant and IBM Watson.
As shown in Fig. 1 according to Scopus , there was a rapid growth of
interest in chatbots especially after the year 2016. Many chatbots were developed
for industrial solutions while there is a wide range of less famous chatbots
relevant to research and their applications.
4. Essential Concepts
Below are some fundamental concepts related to chatbot technology.
Pattern Matching is predicated on representative stimulus-response blocks. A sen-
tence (stimuli) is entered, and output (response) is created consistent with the user
input. Eliza and ALICE were the first chatbots developed using pattern recognition
algo- rithms. The disadvantage of this approach is that the responses are entirely
predictable, repetitive, and lack the human touch. Also, there is no storage of past
responses, which can lead to looping conversations.
The Artificial Intelligence Markup Language (AIML) was created from 1995
to 2000, and it is based on the concepts of Pattern Recognition or Pattern
Matching technique. It is applied to natural language modeling for the dialogue
between humans and chatbots that follow the stimulus-response approach. It is
an XML-based markup language and it is tag-based. As shown in Fig. 2, AIML is
based on basic units of dialogue called categories (tag <category>) which are
formed by user input patterns (tag <pattern>) and chatbot responses (tag
<template>).
Latent Semantic Analysis (LSA) may be used together with AIML for the
develop- ment of chatbots. It is used to discover likenesses between words as vector
representation. Template-based questions like greetings and general questions
can be answered using AIML while other unanswered questions use LSA to give
replies.
Chatscript, being the successor of the AIML language, is an expert system,
which consists of an open-source scripting language and the engine that runs it. It is
comprised of rules which are associated with topics, finding the best item that
matches the user query string and executing a rule in that topic.. It is also case-
sensitive, widening the possible responses that can be given to the same user input
based on the intended emotion, as uppercase is typically used in conversations to
indicate emphasis.
5. Types of Chatbots
Chatbots can be classified using different parameters: the knowledge domain,
the service provided, the goals, the input processing and response generation
method, the human-aid, and the build method.
Classification based on the knowledge domain considers the knowledge a
chatbot can access or the amount of data it is trained upon. Open domain chatbots
can talk about general topics and respond appropriately, while closed domain
chatbots are focused on a particular knowledge domain and might fail to respond
to other questions.
Classification based on the service provided considers the sentimental
proximity of the chatbot to the user, the amount of intimate interaction that
takes place, and it is also dependent upon the task the chatbot is performing.
Interpersonal chatbots lie in the domain of communication and provide services
such as Restaurant booking, Flight booking, and FAQ bots. They are not companions
of the user, but they get information and pass them on to the user. They can have a
personality, can be friendly, and will probably remember information about the
user, but they are not obliged or expected to do so. Intrapersonal chatbots exist
within the personal domain of the user, such as chat apps like Messenger, Slack,
and WhatsApp. They are companions to the user and understand the user like a
human does. Inter-agent chatbots become omnipresent while all chatbots will
require some inter-chatbot communication possibilities. The need for protocols
for inter-chatbot communication has already emerged. Alexa-Cortana integration
is an example of inter-agent communication.
Classification based on the goals considers the primary goal chatbots aim to
achieve. Informative chatbots are designed to provide the user with information
that is stored beforehand or is available from a fixed source, like FAQ chatbots.
Chat- based/Conversational chatbots talk to the user, like another human being,
and their goal.
Classification based on the input processing and response generation method
takes into account the method of processing inputs and generating responses.
There are three models used to produce the appropriate responses: rule-based
model, retrieval- based model, and generative model.
Rule-based model chatbots are the type of architecture which most of the
first chatbots have been built with, like numerous online chatbots. They choose
the system response based on a fixed predefined set of rules, based on recognizing
the lexical form of the input text without creating any new text answers. The
knowledge used in the chatbot is humanly hand-coded and is organized and
presented with conversational patterns. A more comprehensive rule database
allows the chatbot to reply to more types of user input. However, this type of
model is not robust to spelling and grammatical mistakes in user input. Most
existing research on rule-based chatbots studies response selection for single-turn
conversation, which only considers the last input message. In more human- like
chatbots, multi-turn response selection takes into consideration previous parts of the
conversation to select a response relevant to the whole conversation context.
A little different from the rule-based model is the retrieval-based model, which
offers more flexibility as it queries and analyzes available resources using APIs. A
retrieval-based chatbot retrieves some response candidates from an index before
it applies the matching approach to the response selection
The generative model generates answers in a better way than the other three
models, based on current and previous user messages. These chatbots are more
human-like and use machine learning algorithms and deep learning techniques.
However, there are difficulties in building and training them.
Another classification for chatbots considers the amount of human-aid in their
com- ponents. Human-aided chatbots utilize human computation in at least one
element from the chatbot. Crowd workers, freelancers, or full-time employees can
embody their intel- ligence in the chatbot logic to fill the gaps caused by limitations
of fully automated chat- bots. While human computation, compared to rule-based
algorithms and machine learn- ing, provides more flexibility and robustness, still,
it cannot process a given piece of information as fast as a machine, which makes it
hard to scale to more user requests. Chatbots can also be classified according to the
permissions provided by their devel- opment platform. Development platforms can
be of open-source, such as RASA, or can be of proprietary code such as
development platforms typically offered by large compa- nies such as Google or
IBM. Open-source platforms provide the chatbot designer with the ability to
intervene in most aspects of implementation. Closed platforms, typically act as
black boxes, which may be a significant disadvantage depending on the project
requirements. However, access to state-of-the-art technologies may be considered
more immediate for large companies. Moreover, one may assume that chatbots
developed based on large companies’ platforms may be benefited by a large
amount of data that these companies collect, Of course, chatbots do not exclusively
belong to one category or another.
its data sources, which may be a database, known as the Knowledge Base of the
chatbot, or external resources that are accessed through an API call.
Upon retrieval, the Response Generation Component uses Natural Language
Gener- ation (NLG) to prepare a natural language human-like response to the user
based on the intent and context information returned from the user message
analysis component. The appropriate responses are produced by one of the three
models mentioned in Sect. 5 of the paper: rule-based, retrieval based, and
generative model.
A Dialogue Management Component keeps and updates the context of a
conversation which is the current intent, identified entities, or missing entities
required to fulfill user requests. Moreover, it requests missing information,
processes clarifications by users, and asks follow-up questions. For example, the
chatbot may respond: “Would you like to tell me as well an example sentence
with the word environment?”.
Many commercial and open-source options are available for the
development of a chatbot. The number of chatbot-related technologies is already
overwhelming and grow- ing each day. Chatbots are developed in two ways: using any
programming language like Java, Clojure, Python, C++, PHP, Ruby, and Lisp or using
state-of-the-art platforms. At this time, we are distinguishing six leading NLU cloud
platforms that developers can use to create applications able to understand
natural languages: Google’s DialogFlow, Facebook’s wit.ai, Microsoft LUIS, IBM
Watson Conversation, Amazon Lex, and SAP Conversation AI . All these platforms
are supported by machine learning. They share some standard functionality (they
are cloud-based, they support various programming and natural languages) but
differ significantly in other aspects. Other known chatbot development platforms
are RASA, Botsify, Chatfuel, Manychat, Flow XO, Chatterbot, Pandorabots, Botkit,
and Botlytics.
7. Conclusions
Minimal human interference in the use of devices is the goal of our world of
technology. Chatbots can reach out to a broad audience on messaging apps and be
more effective than humans are. At the same time, they may develop into a
capable information-gathering tool. They provide significant savings in the
operation of customer service departments. With further development of AI and
machine learning, somebody may not be capable of understanding whether he
talks to a chatbot or a real-life agent.
We consider that this research provides useful information about the basic
principles of chatbots. Users and developers can have a more precise understanding
of chatbots and get the ability to use and create them appropriately for the
purpose they aim to operate. Further work of this research would be exploring in
detail existing chatbot platforms and compare them. It would also be interesting
to examine the degree of ingenuity and functionality of current chatbots. Some
ethical issues relative to chatbots would be worth studying like abuse and
deception, as people, on some occasions, believe they talk to
real humans while they are talking to chatbots.
References
1. Bansal, H., Khan, R.: A review paper on human computer interaction. Int. J. Adv. Res.
Comput. Sci. Softw. Eng. 8, 53 (2018). https://doi.org/10.23956/ijarcsse.v8i4.630
2. Khanna, A., Pandey, B., Vashishta, K., Kalia, K., Bhale, P., Das, T.: A study of today’s
A.I. through chatbots and rediscovery of machine intelligence. Int. J. u- e-Serv. Sci.
Technol. 8, 277–284 (2015). https://doi.org/10.14257/ijunesst.2015.8.7.28
3. chatbot | Definition of chatbot in English by Lexico Dictionaries.
https://www.lexico.com/en/ definition/chatbot
4. Abu Shawar, B.A., Atwell, E.S.: Chatbots: are they really useful? J. Lang. Technol.
Comput. Linguist. 22, 29–49 (2007)
5. Klopfenstein, L., Delpriori, S., Malatini, S., Bogliolo, A.: The rise of bots: a survey of
con- versational interfaces, patterns, and paradigms. In: Proceedings of the 2017
Conference on Designing Interactive Systems, pp. 555–565. Association for Computing
Machinery (2017)
6. Turing, A.M.: Computing machinery and intelligence. Mind 59, 433–460 (1950).
https://doi. org/10.1093/mind/LIX.236.433
7. Weizenbaum, J.: ELIZA—a computer program for the study of natural language
communi- cation between man and machine. Commun. ACM 9, 36–45 (1966).
https://doi.org/10.1145/ 365153.365168
8. Brandtzaeg, P.B., Følstad, A.: Why people use chatbots. In: Kompatsiaris, I., et al. (eds.)
Internet Science, pp. 377–392. Springer, Cham (2017). https://doi.org/10.1007/978-3-
319- 70284-1_30
9. Colby, K.M., Weber, S., Hilf, F.D.: Artificial paranoia. Artif. Intell. 2, 1–25 (1971).
https:// doi.org/10.1016/0004-3702(71)90002-6
10. Wallace, R.S.: The anatomy of A.L.I.C.E. In: Epstein, R., Roberts, G., Beber, G. (eds.) Parsing
the Turing Test: Philosophical and Methodological Issues in the Quest for the Thinking
Computer, pp. 181–210. Springer, Cham (2009). https://doi.org/10.1007/978-1-4020-
6710- 5_13
11. Marietto, M., et al.: Artificial intelligence markup language: a brief tutorial. Int. J.
Comput. Sci. Eng. Surv. 4 (2013). https://doi.org/10.5121/ijcses.2013.4301
12. Molnár, G., Zoltán, S.: The role of chatbots in formal education. Presented at the 15
September 2018
13. Siri. https://www.apple.com/siri/
14. Personal Digital Assistant - Cortana Home Assistant – Microsoft.
https://www.microsoft. com/en-us/cortana
15. What exactly is Alexa? Where does she come from? And how does she work? https://www.
digitaltrends.com/home/what-is-amazons-alexa-and-what-can-it-do/
16. Google Assistant, your own personal Google. https://assistant.google.com/
17. IBM Watson. https://www.ibm.com/watson
18. Scopus - Document search. https://www.scopus.com/search/form.uri?display=basic
19. Colace, F., De Santo, M., Lombardi, M., Pascale, F., Pietrosanto, A., Lemma, S.: Chatbot
for e-learning: a case of study. Int. J. Mech. Eng. Robot. Res. 7, 528–533 (2018).
https://doi.org/ 10.18178/ijmerr.7.5.528-533
20. Ranoliya, B.R., Raghuwanshi, N., Singh, S.: Chatbot for university related FAQs. In:
2017 International Conference on Advances in Computing, Communications and
Informatics (ICACCI), Udupi, pp. 1525–1530 (2017)
21. da Costa, P.C.F.: Conversing with personal digital assistants: on gender and
artificial intelligence. J. Sci. Technol. Arts 10, 59–72 (2018).
https://doi.org/10.7559/citarj.v10i3.563
22. Xu, A., Liu, Z., Guo, Y., Sinha, V., Akkiraju, R.: A new chatbot for customer service on
social media. In: Proceedings of the 2017 CHI Conference on Human Factors in
Computing Systems, pp. 3506–3510. ACM, New York (2017)
23. Følstad, A., Nordheim, C.B., Bjørkli, C.A.: What makes users trust a chatbot for customer
service? An exploratory interview study. In: Bodrunova, S.S. (ed.) INSCI 2018. LNCS,
vol. 11193, pp. 194–208. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-
01437-7_16
24. Go, E., Sundar, S.S.: Humanizing chatbots: the effects of visual, identity and
conversational cues on humanness perceptions. Comput. Hum. Behav. 97, 304–316
(2019). https://doi.org/ 10.1016/j.chb.2019.01.020
25. Sannon, S., Stoll, B., DiFranzo, D., Jung, M., Bazarova, N.N.: How personification and
interactivity influence stress-related disclosures to conversational agents. In: Companion
of the 2018 ACM Conference on Computer Supported Cooperative Work and Social
Computing, pp. 285–288. ACM, New York (2018)
26. Fernandes, A.: NLP, NLU, NLG and how Chatbots work. https://chatbotslife.com/nlp-
nlu- nlg-and-how-chatbots-work-dd7861dfc9df
27. Dale, R.: The return of the chatbots. Nat. Lang. Eng. 22, 811–817 (2016).
https://doi.org/10. 1017/S1351324916000243
28. Ramesh, K., Ravishankaran, S., Joshi, A., Chandrasekaran, K.: A survey of design
techniques for conversational agents. In: Kaushik, S., Gupta, D., Kharb, L., Chahal, D.
(eds.) ICICCT 2017. CCIS, vol. 750, pp. 336–350. Springer, Singapore (2017).
https://doi.org/10.1007/978- 981-10-6544-6_31
29. Akma, N., Hafiz, M., Zainal, A., Fairuz, M., Adnan, Z.: Review of chatbots design techniques.
Int. J. Comput. Appl. 181, 7–10 (2018). https://doi.org/10.5120/ijca2018917606
30. An e-business chatbot using AIML and LSA - Semantic Scholar. https://www.semanticscho
lar.org/paper/An-e-business-chatbot-using-AIML-and-LSA-
Thomas/906c91ca389a29b47a 0ec072d54e23ddaa757c88
31. Artificial Intelligence Scripting Language - RiveScript.com. https://www.rivescript.com/
32. Jung, S.: Semantic vector learning for natural language understanding. Comput. Speech
Lang. 56, 130–145 (2019). https://doi.org/10.1016/j.csl.2018.12.008
33. Canonico, M., Russis, L.D.: A comparison and critique of natural language
understanding tools. Presented at the (2018)
34. Nimavat, K., Champaneria, T.: Chatbots: an overview types, architecture, tools and
future possibilities. Int. J. Sci. Res. Dev. 5, 1019–1024 (2017)
35. Kucherbaev, P., Bozzon, A., Houben, G.-J.: Human-aided bots. IEEE Internet Comput.
22, 36–43 (2018). https://doi.org/10.1109/MIC.2018.252095348
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
K.C.T ENGINEERING COLLEGE, KALABURAGI Page 12
CHATBOT TECHNOLOGY
36. Hien, H.T., Cuong, P.-N., Nam, L.N.H., Nhung, H.L.T.K., Thang, L.D.: Intelligent assis-
tants in higher-education environments: the FIT-EBot, a chatbot for administrative and
learn- ing support. In: Proceedings of the Ninth International Symposium on Information
and Communication Technology, pp. 69–76. ACM, New York (2018)
37. Wu, Y., Wu, W., Xing, C., Zhou, M., Li, Z.: Sequential Matching Network: A New Architecture
for Multi-turn Response Selection in Retrieval-based Chatbots. arXiv:1612.01627 [cs]
(2016)
38. Augello, A., Gentile, M., Dignum, F.: An overview of open-source chatbots social skills.
In: Diplaris, S., Satsiou, A., Følstad, A., Vafopoulos, M., Vilarinho, T. (eds.) INSCI 2017.
LNCS, vol. 10750, pp. 236–248. Springer, Cham (2018). https://doi.org/10.1007/978-3-
319-77547- 0_18
39. Zumstein, D., Hundertmark, S.: Chatbots – an interactive technology for personalized
communication, transactions and services. IADIS Int. J. WWW/Internet 15, 96–109 (2017)
40. Fern, A., et al.: The Best Open Source Chatbot Platforms in 2019 (2019). https://blog.ver
loop.io/the-best-open-source-chatbot-platforms-in-2019/
41. Singh, S., Darbari, H., Bhattacharjee, K., Verma, S.: Open source NLG systems: a survey
with a vision to design a true NLG system. 9, 4409–4421 (2016)
42. Nayyar, D.A.: Chatbots and the Open Source Tools You Can Use to Develop Them
(2019). https://opensourceforu.com/2019/01/chatbots-and-the-open-source-tools-you-
can-use-to-develop-them/
43. Dialogflow. https://dialogflow.com/
44. Wit.ai. https://wit.ai/
45. LUIS (Language Understanding) – Cognitive Services – Microsoft Azure.
https://www.luis. ai/home
46. Amazon Lex – Build Conversation Bots. https://aws.amazon.com/lex/
47. SAP Conversational AI | Automate Customer Service With AI Chatbots.
https://cai.tools.sap
48. Rasa: Open source conversational AI. https://rasa.com/
49. Botsify: Botsify - Create Automated Chatbots Online for Facebook Messenger or
Website. https://botsify.com
50. Chatfuel. https://chatfuel.com/
51. ManyChat – Chat Marketing Made Easy. https://manychat.com/
52. AI Online Chatbot Software, Live Chat on Websites. https://flowxo.com/
53. About ChatterBot — ChatterBot 1.0.2 documentation.
https://chatterbot.readthedocs.io/en/ stable/
54. Pandorabots: Home. https://home.pandorabots.com/home.html
55. Botkit: Building Blocks for Building Bots. https://botkit.ai/
56. Botlytics. https://www.botlytics.co/