Chatbot MSC
Chatbot MSC
Chatbot MSC
Date: Date:
Signature of the
Coordinator Date:
SOFTWARE PIRACY PREVENTION SYSTEM
SR.NO. NAME OF TOPICS PAGE NO.
Acknowledgement 6
Abstract 7
1 Introduction 9
1.1 Background 9
1.2 Objectives 11
1.3 Purpose 11
2 Survey of Technologies 12
Literature Review 18
3 Requirements and Analysis 21
4 System Design 35
6 Reference
4
SR.NO. LIST OF FIGURES PAGE NO.
.Net Framework Class Library (FCL)
Fig.1. 15
Fig.5. Flowchart 31
5
ACKNOWLEDGEMENT
6
Abstract
The use of Chabot’s Application evolved rapidly in numerous fields in recent years, including
Marketing, Supporting Systems, Education, Health Care, Cultural Heritage, and Entertainment. In
this paper, we first present a historical overview of the evolution of the international community’s
interest in catboats. Next, we discuss the motivations that drive the use of Chabot’s, and we clarify
Chabot’ usefulness in a variety of areas. Moreover, we highlight the impact of social stereotypes
on Chatbots design. After clarifying necessary technological concepts, we move on to a Chatbots
classification based on various criteria, such as the area of knowledge they refer to, the need they
serve and others. Furthermore, we present the general architecture of modern Chatbots while also
mentioning the main platforms for their creation. Our engagement with the subject so far,
reassures us of the prospects of Chatbots and encourages us to study them in greater extent and
depth.
7
CHAPTER 1
Introduction
A Chatbot is a program that communicate with you.
Chatbots use artificial intelligence (AI) and natural language processing (NLP) to help users interact
with web services or apps through text, graphics, or speech. Chatbots can understand natural
human language, simulate human conversation, and run simple, automated tasks. Chatbots are
used in a variety of channels, such as messaging apps, mobile apps, websites, phone lines, and
voice-enabled apps.
Chatbots can be developed to handle just a few simple commands or to serve as complex digital
assistants and interactive agents. A chatbot can be a part of a larger application or be completely
stand-alone.
8
Background:
Chatbots has emerged as a hot topic in the latest years, and it is used by numerous companies
in various areas - help desk tools, automatic telephone answering systems, e-commerce and
so on. Even though the technology has been around since the 60’s (Atwell & Shawar, 2007).
Why are we suddenly so interested in this technology now? This can likely be explained by
the recent year's advancements in messaging applications and AI technology (Brandtzaeg &
Følstad, 2017).
In the article Chatbots: Are they really useful? Atwell and Shawar provide real-life examples of
different chatbots in different contexts. One of the examples is Sophia, a robot that was
developed to assist in mathematics at Harvard by answering student’s questions. This turned
out to be applicable in many other contexts. Living in Norway you have probably noticed
“Kommune Kari”. A chatbot that many of the municipality have available on their web-pages.
Kari is there to answer “easy” questions like “when will the garbage truck come?” and “where I
can find available jobs?”. Kari’s goal and the job are to provide information so that you as a user
don’t have to navigate the “massive information flow” (Schibevaag, 2017). This way of using a
chatbot is a part of the Question Answering (QA) field which a combination between AI and information
retrieval is (Molla & Vicedo, 2007). QA can be defined as:
“... the task whereby an automated machine (such as a computer) answers arbitrary questions formulated in
natural language. QA systems are especially useful in situations in which a user needs to know a very
specific piece of information and does not have the time—or just does not want—to read all the available
documentation related to the search topic in order to solve the problem at hand”. (Molla & Vicedo, 2007).
For a chatbot to be especially useful to a certain domain some criteria have to be met.
Minock (2005) proposes the following criteria for a domain to be successful in answering
domain-specific questions: a domain should be circumscribed, complex and practical. This
is summarized in the table below.
9
Criteria Description
When designing an intelligent system that provides decision support one must consider the
human as something outside the system, but also as an integrated system component that in
the end, will ultimately determine the success or the failure of the system itself (Cumming,
2004).
10
11
Objectives:
You can create chatbots for any business the same as you recruit a person
for any department of your company. Whether you are a:
Wedding Planner
Insurance Assistant
Education Consultant
Legal Assistant
Recruiter
Travel Agency
Hospital or a Beautician!
12
Purpose:
Firstly, customer service and support. Chatbots are one of the greatest tools in the modern-
day business world to help your business enable customer support and customer service.
Chatbots take the pressure of having all these people and staff members answering the
phones on a continual basis.
What does your customer service look like? Do you rely on lots of person-to-person
conversations on the phone, lots of hours, lots of shifts?
Or have you been able to outsource some of the work to automated responses that help you
get through the first set of questions to narrow down the service request?
13
CHAPTER 2
Survey of Technologies
Python:
Python is a high-level, general-purpose programming language. Its design
philosophy emphasizes code readability with the use of significant indentation
via the off-side rule.
Guido van Rossum began working on Python in the late 1980s as a successor
to the ABC programming language and first released it in 1991 as Python 0.9.0.
[37] Python 2.0 was released in 2000. Python 3.0, released in 2008, was a
major revision not completely backward-compatible with earlier versions.
Python 2.7.18, released in 2020, was the last release of Python 2.
Django:
Django is a high-level Python web framework that encourages rapid
development and clean, pragmatic design. Built by experienced developers, it
takes care of much of the hassle of web development, so you can focus on
writing your app without needing to reinvent the wheel. It’s free and open
source.
Ridiculously fast
Django was designed to help developers take applications from concept to
completion as quickly as possible.
Reassuringly secure
Django takes security seriously and helps developers avoid many common
security mistakes.
Exceedingly scalable.
Some of the busiest sites on the web leverage Django’s ability to quickly and
flexibly scale.
14
Cryptography:
cryptography is broadly divided into two levels. One with safe cryptographic
recipes that require little to no configuration choices. These are safe and easy to
use and don’t require developers to make many decisions.
The other level is low-level cryptographic primitives. These are often dangerous
and can be used incorrectly. They require making decisions and having an in-
depth knowledge of the cryptographic concepts at work. Because of the
potential danger in working at this level, this is referred to as the “hazardous
materials” or “hazmat” layer. These live in the cryptography. Hazmat package,
and their documentation will always contain an admonition at the top.
We recommend using the recipes layer whenever possible and falling back to
the hazmat layer only when necessary.
Django-crispy-forms provides you with a |crispy filter and {% crispy %} tag that
will let you control the rendering behavior of your Django forms in a very
elegant and DRY way. Have full control without writing custom form templates.
All this without breaking the standard way of doing things in Django, so it plays
nice with any other form application.
The best way to have Django DRY forms. Build programmatic reusable layouts
out of components, having full control of the rendered HTML without writing
HTML in templates. All this without breaking the standard way of doing things in
Django, so it plays nice with any other form application.
15
LITERATURE REVIEW:
According to the survey on Chatbot Implementation in Customer Service
Industry through Deep Neural Network, the strategies for creating rules for
chatbot have been advanced. strategy for creating chatbots has depended on
hand-written rules and templates. With the rise of deep learning these models
were quickly replaced by an end-to-end neural network. All the more
specifically DNN is a powerful generative-based model to take care of the
conversational response generation problems. This paper led an inside and out
the review of ongoing literature, examining more than 70 publications related
to chatbots published in the last 5 years. based on a literature survey this
examination made a comparison from chosen papers according to the strategy
adopted. This paper also introduced why current chatbot models fail to take
into account while generating responses and how this affects the quality of
conversation.
According to the research intent detection based Lithuanian chatbot created via
Automatic DNN hyper-parameter Optimization they handled a purpose
recognition issue for the Lithuanian language with the real supervised data. The
main principle of focus is on the upgrade of the NL
17
CHAPTER 3
Problem Definition:
It should deliver accurate and relevant responses by understanding user intent and extracting
relevant information from the conversation. Continuous learning and improvement, seamless
integration with various platforms, and a user-friendly interface are crucial requirements to
ensure the chatbot's effectiveness and usability.
1. Menu/button-based chatbots
If you can predict the types of questions your customers may ask, a linguistic
chatbot might be the solution for you. Linguistic or rules-based chatbots
create conversational automation flows using if/then logic. First, you have to
define the language conditions of your chatbots. Conditions can be created to
assess the words, the order of the words, synonyms, and more. If the
incoming query matches the conditions defined by your chatbot, your
customers can receive the appropriate help in no time.
18
3. Keyword recognition-based chatbots
Businesses love the sophistication of AI-chatbots, but don’t always have the
talents or the large volumes of data to support them. So, they opt for the
hybrid model. The hybrid chatbot model offers the best of both worlds- the
simplicity of the rules-based chatbots, with the complexity of the AI-bots.
6. Voice bots
19
Hardware Requirements:
Software Requirements:
Software interface relate the connections between this product and other
particular software components (version and name), involving databases,
operating systems, tools, libraries and integrated commercial components.
It relates the services required and the nature of connections.
20
Login: After clicking on the chatbot provided in the website. the chatbots
system greet the user and request the user to provide their mail ID. After that
chatbot start chatting with the user.
Botindex: When the user proceeds to choose chatbots to get an answer to his or
her query the chatbot display a page to select few options regarding and
identifies his or her category of query. If the user gets his query cleared and
then the task of chatbot is completed.
Asking Queries: If the user is not satisfied with the rule-based response then the
chatbot system request to enter his or her query in word and the suitable
response is given by the chatbot. the user query is first checked in the database.
if the query is valid then a suitable response is given to the user. If the query is
invalid then the chatbot request user to ask queries again.
Providing Feedback: After the chat, the chatbot takes feedback from the user.
feedback is taken in order to know the user's experience with the chatbot. if the
user gives feedback positively then the bot thanks the user and provides a box
to enter any further queries. if the user gives feedback negatively then the bot
asks the user to elaborate his or her query in order to respond. username of the
user is also stored and helps the admin to track user actions.
21
On the other end, the admin who is responsible for maintaining the chatbot
system up to date has several functions to perform such as adding the query to
the database modifying the data, deleting the data, viewing feedback given by
the user, and so on.
a. Login: System has only one Admin has to login by providing his or her
username and password entered password is encrypted using AHA-256
encryption algorithm. The login details are validated against the username and
password which are stored in the database and are encrypted using the AHA-1
encryption algorithm. if the details provided are matching with the database
then the admin can get access to the chatbot system.
Functional Requirement
Non-functional Requirement
Functional Requirement:
Non-Functional Requirement:
22
Conceptual Models:
Developers utilize these logs to analyses what clients are trying to ask. Developers
coordinate they’re with their client inquiries and reply with the best appropriate
answer with the blend of machine learning tools and models. Training a chatbot is
very much faster and also on a large scale as compared to human beings. A
customer support chatbot is filled with a very large number of conversation logs
which help the chatbot to understand what kinds of questions should be asked
and answers should be given. While a normal customer service representative is
given manual instructions which they have to go through with. The chatbots is
based on three methods:
Pattern Matches: The pattern matches group of texts is utilized by the bots and it
so it produces an appropriate response to the customers. The standard structure
model used for creation of these patterns is “Artificial Intelligence Markup
Language”.
Natural Language Understanding (NLU): Finding the way to convert the user’s
speech or text into structured data is called Natural Language Processing. It is
used to get relevant answers for the customers.
To develop a chatbot one must be very clear about what one wants from that
chatbot. Often, they are developed for business platforms like Net Banking sites to
handle costumer Q&A. Another type of chatbot is widely developed and used are
smart assistants like Google assistant, Siri, Alexa, Cortana etc.
23
CHAPTER 4
System Design
Basic Modules:
User Module:
When a user inserts a particular input in the chatbot, the bot saves the input
and the response for any future usage. This information (of gathered
experiences) allows the chatbot to generate automated responses every time a
new input is fed into it.
Enrollment Module:
The program picks the most appropriate response from the nearest enrolled
statement that matches the input and then delivers a response from the
already known choice of statements and responses. Over time, as the chatbot
indulges in more communications, the precision of reply progresses.
Training Module:
We train the bot in order to improve its performance. Training the bot
ensures that it has enough knowledge, to begin with, particular replies to
particular input statements.
Logic Module:
The first parameter, 'name', represents the name of the Python chatbot.
Another parameter called 'read-only' accepts a Boolean value that disables
(TRUE) or enables (FALSE) the ability of the bot to learn after the training.
We have also included another parameter named 'logic adapters' that
specifies the adapters utilized to train the chatbot.
24
Data Security and Constraints:
Secure messaging can be divided into two domains. The fist domain concerns security
in data transfers, that is, the secure transfer of messages, voice, and images to a
server on which the chatbot is hosted. The second domain deals with the user's data
on the server (backend), that is, how the data is processed, stored, and shared. Both
domains cover the lifecycle of the user's domain. There are several threats to user
messages in the first domain. The following text analyzes the methods to increase
security in chatbot communication. Not all of them are generally used, as it is not
necessary in many cases. If any company processes a user's data, most of the
following methods must be implemented. The following methods cover any
communication with the chatbot, such as a pop-up chat window in a web-browser or
mobile application.
Threats and vulnerabilities are the two main categories of security issues. A security
threat is defined as a risk by which an organization and its systems can be
compromised. Computer security threats40 are identified by a STRIDE model as
Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service, Elevation
of Privileges, and many more; every security threat should be reduced by protective
mechanisms ensuring the following properties as Authenticity, Integrity, Non-
repudiation, Confidentiality, Availability, Authorization, and many others.41
25
1. The UI
2. How to run
26
3. Home Page
4. Chat Page
27
5. Chat Screen
6. Login Page
28
7. Local Server
8. Registration Page
29
Conclusion:
In this project, we made chatbot system that can be custom and fits in an
education domain chatbot the addition of this chatbot system in the website will
make the webpage more user interactive as it responds to the user queries very
accurately as it is a domain-specific chatbot system, and furthermore we had
investigated our chatbot system design stages. a few different techniques by
which the precision of the chatbot system can be made better. gathering feedback
from the potential user can be helpful in developing the Chatbot system
ultimately servicing the user queries in conclusion we have made a chatbot in
python that can understand user queries and reply accordingly. In the intent file of
our chatbot on we can add more patterns and improve patterns which will be
helpful when replying to the users and improve the accuracy of our chatbot DL
enabled chatbots are becoming more and more popular because of their
applications and they can tackle all the problem. it can also be very helpful in
teaching and has a lot of applications in teaching the visually impaired.
References
[1] G. Eason, B. Noble, and I. N. Sneddon, “On certain integrals of Lipschitz-Hankel type
involving products of Bessel functions,” Phil. Trans. Roy. Soc. London, vol. A247, pp. 529–
551, April 1955. (references)
[2] J. Clerk Maxwell, A Treatise on Electricity and Magnetism, 3rd ed., vol. 2. Oxford:
Clarendon, 1892, pp.68–73.
[3] I. S. Jacobs and C. P. Bean, “Fine particles, thin films and exchange anisotropy,” in
Magnetism, vol. III, G. T. Rado and H. Suhl, Eds. New York: Academic, 1963, pp. 271–350.
30
[4] K. Elissa, “Title of paper if known,” unpublished.
[5] R. Nicole, “Title of paper with only first word capitalized,” J. Name Stand. Abbrev., in
press.
[7] M. Young, The Technical Writer’s Handbook. Mill Valley, CA: University Science, 1989
31