Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Chatbot MSC

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 30

PROFORMA FOR THE APPROVAL PROJECT PROPOSAL

PNR No.: Roll No:

1. Name of the Student

2. Title of the Project

3. Name of the Guide

4. Teaching experience of the Guide

5. Is this your first Submission? Yes No

Signature of the Student Signature of the Guide

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

2.1 Visual Studio 12

2.2 Dot Net 12

2.3 SQL Server 15

Literature Review 18
3 Requirements and Analysis 21

3.1 Problem Definition 21

3.2 Software and Hardware Requirements 23

3.3 Details of Proposed System 24

3.4 Preliminary Product Description 27


3.5 Conceptual Models 28

4 System Design 35

4.1 Basic Modules 35


4.2 Data Design 36
5 Conclusion

6 Reference

4
SR.NO. LIST OF FIGURES PAGE NO.
.Net Framework Class Library (FCL)
Fig.1. 15

Fig.2. User Mode and Kernel Mode Switching 16

Fig.3. Software Architecture 26

Fig.4. Dataflow Diagram 29

Fig.5. Flowchart 31

Fig.6. Use Case Diagram 33

Fig.7. Activity Diagram 34

5
ACKNOWLEDGEMENT

I would like to express my special thanks of gratitude to my


teachers who gave me the golden opportunity to do this wonderful project on
the topic “Chatbot Application” which also help me in doing a lot of Research
and I came to know about so many new things I am really thankful to them. I
am being over helmed in all humbleness and gratefulness to acknowledge my
depth to all those who have help me to put these ideas, well above the level
of simplicity and into something concrete. Any attempt at any level can’t be
satisfactorily completed without the support and guidance of my parents and
friends.

I would like to thank my parents who help me a lot in


gathering information, collecting data and guiding me from time in making this
project, despite of their busy schedules, they give me different ideas for the
project.

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.

It is a layer on top, or a gateway to, a service. Sometime it is powered by machine


learning (The chatbot gets smarter the more you interact with it). Or more commonly,
it is driven using intelligent rule

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.

Why use chatbots?


Chatbots are used to help humans interact with technology and automate tasks. Improvements in
AI, machine learning, data science, and natural language processing have enabled the proliferation
of chatbots by making it easier to build conversational bots for a variety of applications that
benefit companies, their customers, and their employees.

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

Circumscribed Clearly defined knowledge sources and


comprehensive resources available (a database
etc.)

Complex If you could develop a simple FAQ then it would


not be useful with a QA system.
There has to be some level of complexity in the
domain while still being able to meet the
circumscribed criteria.

Practical Should be of use to a large group of people in


the domain and take into account: how the
users will formulate questions, what is commonly
asked and how detailed the answers should be.

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:

A chatbot can communicate with a real person behaving like a human.


Let’s list down objectives and purpose of chatbots.

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

 A real estate business

 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.

Python is dynamically typed and garbage-collected. It supports multiple


programming paradigms, including structured (particularly procedural),
object-oriented and functional programming. It is often described as a
"batteries included" language due to its comprehensive standard library.

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 includes both high level recipes and low-level interfaces to


common cryptographic algorithms such as symmetric ciphers, message digests,
and key derivation functions. For example, to encrypt something with
cryptography’s high level symmetric encryption recipe

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:

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

Understanding module, responsible for the comprehension of user questions.


The NLU model is prepared with an appropriately selected word vectorization
type and a Deep Neural Network classifier. During their experiment, they have
tentatively investigated fast text and Bert embeddings.

According to research chatbot technologies and challenges they gave an outline


of the innovations that drive chatbot including Information Extraction and deep
learning. they have additionally examined the contrasts between conversational
and transactional chatbots. the former is defined manually on free form chat
logs while the last is characterized physically to accomplish a particular
objective like booking a flight. they have likewise given an outline of commercial
tools and platforms that can help in creating and deploying chatbot. at last, they
have introduced the limitations and future work difficulties around here.

According to research Accessible conversational user interfaces consideration


for design scope of current guidance and flow direction, reports, exploration
and writing on an open plan for various disability groups of incorporating clients
with psychological well-being issues, mental imbalance, medical issue,
intellectual incapacities, dyslexia, or learning challenges, and tangible, versatility
or ability weaknesses. they grouped the component from this assortment of
16
directions that seem applicable to the plan of available CUIs, and cases where
direction presents issues that are less decisive and require further investigation.

According to research Ensemble-based, deep reinforcement learning for


chatbots trainable chatbots that show familiar and human-like discussions
remain a major challenge in artificial intelligence. Deep Reinforcement Learning
is promising for tending to this test, however, its fruitful application remains an
open inquiry. This article portrays a novel ensemble-based methodology applied
to esteem-based DRL chatbots which utilize limited activity sets as a type of
importance portrayal. In their methodology, while exchange activities are
obtained from sentence clustering, the training datasets in our ensemble are
obtained from discourse clustering. they latter plan to induce specific agents
that figure out how to communicate in a specific style

17
CHAPTER 3

Requirements and Analysis

Problem Definition:

The problem at hand is the development of an AI chatbot that can revolutionize


conversational interactions with users. This advanced chatbot needs to overcome the
limitations of traditional rule-based systems by leveraging cutting-edge natural language
processing (NLP) techniques and machine learning algorithms. The chatbot should possess
the ability to comprehend and interpret user queries, even in the presence of complex
sentence structures, slang, and contextual references.

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.

Types of Chat Bots:

1. Menu/button-based chatbots

Menu/button-based chatbots are the most basic type of chatbots currently


implemented in the market today. In most cases, these chatbots are glorified
decision tree hierarchies presented to the user in the form of buttons.
Similar to the automated phone menus we all interact with on almost a daily
basis, these chatbots require the user to make several selections to dig
deeper towards the ultimate answer. ‍

2. Linguistic Based (Rule-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

Unlike menu-based chatbots, keyword recognition-based chatbots can listen


to what users type and respond appropriately. These chatbots utilize
customizable keywords and an AI application - Natural Language Processing
(NLP) to determine how to serve an appropriate response to the user.

4. Machine Learning chatbots

Ever wondered what is a contextual chatbot? A contextual chatbot is far


more advanced than the three bots discussed previously. These types of
chatbots utilize Machine Learning(ML) and Artificial Intelligence (AI) to
remember conversations with specific users to learn and grow over time.
Unlike keyword recognition-based bots, chatbots that have contextual
awareness are smart enough to self-improve based on what users are asking
for and how they are asking it.

5. The hybrid models

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

To make conversational interfaces even more vernacular, businesses are now


beginning to use voice-based chatbots or voice bots. Voice bots have been on
the rise for the last couple of years, with virtual assistants like Apple’s Siri, to
Amazon’s Alexa, and why? Because of the convenience they bring. It’s much
easier for a customer to speak rather than type. A voice-activated chatbot
brings frictionless experiences directly to the end customer.

Software and Hardware Requirements:

As a result, careful study of the obligation of developing this project and


as per the requirements of the project, the needs are determined to
organization. The needs are being categorized as Hardware and Software
Requirements individually.

19
Hardware Requirements:

Hardware interface represents the physical and logical characteristics of


each interface between the hardware components and the software
product of the system.

PROCESSOR: Dual Core / i3


HARD DISK: 500 GB
RAM: 4 GB
MONITOR: Standard LED Monitor
INPUT DEVICES: Keyboard, Optical Mouse, Headphones

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.

FRONT-END Design: Python


BACK-END Database: MySQL
Operating System: Windows 7/8/10

Details of Proposed System:

This chatbot system is a web-based application that gives responses to user


queries. The system architecture of the chatbot system is shown in the first
chatbot responds to the user by greeting him or her and then asks a user to
login into the system by providing his or her mail. then the user finds the button
in the UI which corresponds to the different categories. after going through the
buttons, the chatbot system asks the user is it helpful or not with the response.
If the user is not able to find the required response he or she can continue the
chat with the chatbot system by briefly elaborating their queries. Then chatbot
system applies an ML algorithm to break down the user queries.

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.

Preliminary Product Description:

The product description is being explained between two requirements


as follows:

 Functional Requirement
 Non-functional Requirement

Functional Requirement:

Chatbots are conversational tools that perform routine tasks efficiently.


People like them because they help them get through those tasks quickly so
they can focus their attention on high-level, strategic, and engaging activities
that require human capabilities that cannot be replicated by machines.

Non-Functional Requirement:

 Protect access of personal information or data (user’s details).


 24 X 7 availability.
 Better component design to acquire better presentation at peak
time.
 Flexible service-based architecture will be highly beneficial
for future expansion.

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.

While the 'chatterbot.logic.MathematicalEvaluation' helps the chatbot


solve mathematics problems, the ` helps it select the perfect match from
the list of responses already provided.

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

System vulnerabilities are weakness which can be exploited by an attacker, to cross


privilege boundaries (i.e., perform unauthorized actions) within a computer system.42
The system is vulnerable when it has weak coding, lacks current drivers on the
hardware side, has a weak firewall, and so forth. Human errors mostly cause system
vulnerabilities. SDL (Security Development Lifecycle) helps to avoid such errors.43 As
many chatbots use cloud computing services, which have threats and vulnerabilities
very well handled, to store the data,5 the following text is focused on the
communication part and different aspects of data manipulation. Companies not using
cloud services usually also handle previous topics during the implementation phase of
the chatbot system.

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.

[6] Y. Yorozu, M. Hirano, K. Oka, and Y. Tagawa, “Electron spectroscopy studies on


magneto-optical media and plastic substrate interface,” IEEE Transl. J. Magn. Japan, vol.
2, pp. 740–741, August 1987 [Digests 9th Annual Conf. Magnetics Japan, p. 301, 1982].

[7] M. Young, The Technical Writer’s Handbook. Mill Valley, CA: University Science, 1989

31

You might also like