Virtual Assistant Alexa
Virtual Assistant Alexa
AN ARTIFICIAL INTELLIGENCE
CONTENTS
Abstract
Introduction
System Design
Working
Conclusion
ABSTRACT
As we know Python is an emerging language so it becomes easy to write a script for Voice Assistant in Python.
The instructions for the assistant can be handled as per the requirement of user.
Speech recognition is the process of converting speech into text.
This is commonly used in voice assistants like Alexa, Siri, etc.
In Python there is an API called SpeechRecognition which allows us to convert speech into text.
It became easier to send emails without typing any word, Searching on Google without opening the browser, and
performing many other daily tasks like playing music, opening our favorite IDE with the help of a single voice command.
In the current scenario, advancement in technologies are such that they can perform any task with same effectiveness or
can say more effectively than us.
By making this project, I realized that the concept of AI in every field is decreasing human effort and saving time.
ABSTRACT
Assistive Technology has come a long way since the Braille typewriter.
In today's world of intelligent voice assistants, smart homes and gesture
The beautiful world around us - with all its captivating visual stimuli - is out of some people's reach.
How do we use the technology available to us today to make their lives not just simpler but also more meaningful?
Maybe the answer lies in AI.
Maybe we can use machine vision to help others to see and understand the world around us.
WHERE DO WE STARTS ?
We are familiar with many existing voice assistants like Alexa, Siri, Google Assistant, Cortana which uses concept
of language processing, and voice recognition. They listens the command given by the user as per their
requirements and performs that specific function in a very efficient and effective manner.
As these voice assistants are using Artificial Intelligence hence the result that they are providing are highly
accurate and efficient. These assistants can help to reduce human effort and consumes time while performing any
task, they removed the concept of typing completely and behave as another individual to whom we are talking and
asking to perform task. These assistants are no less than a human assistant but we can say that they are more
effective and efficient to perform any task. The algorithm used to make these assistant focuses on the time
complexities and reduces time.
But for using these assistants one should have an account (like Google account for Google assistant, Microsoft
account for Cortana) and can use it with internet connection only because these assistants are going to work with
internet connectivity. They are integrated with many devices like, phones, laptops, and speakers etc.
INTRODUCTION – PROPOSED SYSTEM
It was an interesting task to make my own assistant. It became easier to send emails without typing any word, Searching on Google
without opening the browser, and performing many other daily tasks like playing music, opening your favorite IDE with the help of
a single voice command. Jarvis is different from other traditional voice assistants in terms that it is specific to desktop and user does
not need to make account to use this, it does not require any internet connection while getting the instructions to perform any
specific task. T
he IDE used in this project is PyCharm. All the python files were created in PyCharm and all the necessary packages were easily
installable in this IDE. For this project following modules and libraries were used i.e. pyttsx3, SpeechRecognition, Datetime,
Wikipedia, Smtplib, pywhatkit, pyjokes, pyPDF2, pyautogui, pyQt etc. I have created a live GUI for interacting with the JARVIS as
it gives a design and interesting look while having the conversation.
With the advancement ALEXA can perform any task with same effectiveness or can say more effectively than us. By making this
project, I realized that the concept of AI in every field is decreasing human effort and saving time. Functionalities of this project
include, It can send emails, It can read set an alarm, It can send text on WhatsApp, It can open command prompt, our favorite IDE,
notepad etc., It can play music, It can do Wikipedia searches for you, It can open websites like Google, YouTube, etc., in a web
browser, It can tweet on twitter account, It can have some basic conversation. etc..
AI is the main tool behind new-age Generalized AI is worth thinking about
innovation and discoveries like because it stretches our imaginations
driverless cars or disease detecting and it gets us to think about our core
algorithm values and issues of choice
The system is designed using the concept of Artificial Intelligence and with the help of necessary packages of
Python. Python provides many libraries and packages to perform the tasks, for example pywhatkit can be used to
send whatsapp messages. The details of these packages are mentioned in Chapter 4 of this report.
The data in this project is nothing but user input, whatever the user says, the assistant performs the task
accordingly. The user input is nothing specific but the list of tasks which a user wants to get performed in human
language i.e. English
SYSTEM DESIGN – ARCHITECTURE OVERVIEW
4.1 PYCHARM :
It is an IDE
i.e. Integrated Development Environment which has many features like it supports scientific tools(like matplotlib,
numpy, scipy etc) web frameworks (example Django,web2py and Flask) refactoring in Python, integrated python
debugger, code completion, code and project navigation etc. It also provides Data Science when used with
Anaconda.
SOFTWARE IMPLEMENTATION DETAILS - PYCHARM
SAPI 5
The Speech Application Programming Interface or SAPI is an API developed by Microsoft to allow the use of
speech recognition and speech synthesis within Windows applications.
To date, a number of versions of the API have been released, which have shipped either as part of a Speech SDK
or as part of the Windows OS itself.
Applications that use SAPI include Microsoft Office, Microsoft Agent and Microsoft Speech Server.
SOFTWARE IMPLEMENTATION DETAILS - PYTHON LIBRARIES
4.4 FUNCTIONS
4.4.1. takecommand( ) : The function is used to take the command as input through microphone of user and returns the
output as string.
4.4.2. wish( ) : This function is used to greets the user according to the time like “Good Morning, Good Afternoon, Good
Evening”.
4.4.3. TaskExecution( ) : This is the function which contains all the necessary task execution like “open google, open
notepad, play music, open youtube, open command prompt, etc..”
4.4.4. news( ) : This function is used show current news.
4.4.5. sendEmail( ) : This function is used to send mails.
4.4.6. alarm( ) : This function is used to set alarm as requirements
4.4.7. speak( ) : This function is used to give output as a voice mode.
WORKING
WORKING
Any Virtual Assistant basically consists of three layers.
1. Speech to text
2. Text Analysing
3. Interpret commands
WORKING
1
2 3
IMPLEMENTATION & TESTING
The system testing is done on fully integrated system to check whether the requirements are matching or not.
The system testing for ALEXA desktop assistant focuses on the following four parameters:
1. Functionality
2. Usability
3. Security
4. Stability
IMPLEMENTATION & TESTING - FUNCTIONALITY
For this we checked the functionality of the system whether the system performs the task which it was intended to
do.
To check the functionality of each function was checked and run, if it is able to execute the required task correctly
then the system passes in that particular functionality test.
For example to check whether ALEXA can search on Google or not, as we can see in the figure 5.1, user said
“Open Wikipedia”, then Alexa asked, ”About What?” then user said, “Python”, Then Alexa open Wikipedia and
searched for the required input.
IMPLEMENTATION & TESTING - FUNCTIONALITY
Usability of a system is checked by measuring the easiness of the software and how user friendly it is for the user to
use, how it responses to each query that is being asked by the user.
It makes it easier to complete any task as it automatically do it by using the essential module or libraries of Python,
in a conversational interaction way. Hence any user when instruct any task to it, they feel like giving task to a human
assistant because of the conversational interaction for giving input and getting the desired output in the form of task
done.
The desktop assistant is reactive which means it know human language very well and understand the context that is
provided by the user and gives response in the same way, i.e. human understandable language, English. So user finds
its reaction in an informed and smart way.
The main application of it can be its multitasking ability. It can ask for continuous instruction one after other until
the user “QUIT” it. It asks for the instruction and listen the response that is given by user without needing any trigger
phase and then only executes the task.
IMPLEMENTATION & TESTING - SECURITY
Stability of a system depends upon the output of the system, if the output is bounded and specific to the bounded
input then the system is said to be stable.
If the system works on all the poles of functionality then it is stable
HOW ALEXA SKILLS ARE BENEFITING BUSINESSES
Alexa lends a helping hand at workstation- With Alexa, it becomes easier for an employee to keep track of
calendar, to-do list and set reminders.
Alexa brings agility to conference rooms- We can control conference room settings and the meetings with voice
commands. “Alexa start my meetings or Alexa check the inventory list,” this voice-based technology brings
flexibility at workplaces.
Alexa helps employees & visitors to understand workplace better- We can use custom Alexa skills to provide
directions, order new supplies, notify IT departments about an issue and many more.
Alexa, voice-enables the products or services- Alexa offer rich, interactive and personalized voice experience to
the customers.
CONCLUSION
ALEXA is a very helpful voice assistant without any doubt as it saves time of the user by conversational interactions, its
effectiveness and efficiency.
Virtual Assistants are very effective way to organize our schedule.
Now there are many Smart Personal Digital Assistant applications available in market for various device platforms.
These new Software Applications are performing really well than PDA (Personal Digital Assistant) devices as they
provided with all resources of our smartphone.
VAs (Virtual Assistants) are also reliable than Human Personal Assistant because, VAs are more portable and we can use it
anytime.
They also have lot of information than any assistant as they are connected with internet.
But while working on this project, there were some limitations encountered and also realized some scope of enhancement
in the future which are mentioned below:
CONCLUSIONS
LIMITATIONS
1. Security is somewhere an issue, there is no voice command encryption in this project.
2. Background voice can interfere
3. Misinterpretation because of accents and may cause inaccurate results.
4. ALEXA cannot be called externally anytime like other traditional assistants like Google Assistant can be called just by saying, “Ok Google!”