Friday
is an AI assistant inspired from Tony Stark's replacement of Vision. Friday
uses vosk model
for speech recognition and a custom Natural Language Processing Server that runs in the local host, to identify commands.
Friday
can also speak, which is done using a custom library written in rust (using tts_rust crate), making use of GTTS
(Google Text to Speech) client. The rust lib is integrated into python with maturin
.
- Mechanism
- Requirements (
Manadatory
) - Installation
- Usage
-
-
Friday
needs avosk model
to recognize speech and convert it to text.Friday
particularly uses Indian english version of the model. Find it here along with several other versions ofvosk
. -
The output from
vosk
is processed by a custom NLP server running in the local host, that returns the properly processed command back toFriday
. This NLP server has been made using rasa platform. -
Both
vosk model
andNLP server
are part ofFriday
's "Brain" and are a vital part ofFriday
's response.
-
-
-
Friday
's speaking abilities are powered byGoogle Text To Speech
client, which was used to writeFriday
's TTS library in rust (for speed). -
Apart from that,
Friday
uses threads to speak, which further enhancesFriday
's voice control.
-
-
Friday
's overall integration is a result of simultaneous working of several components altogether.
-
Mandatory
condaconda
must be installed in the system and enabled. -
Mandatory
python v3.12rasa
uses python v3.9 and it will be installed in a separate conda env automatically byFriday
-
Mandatory
maturincan be installed using
$ pip install maturin
-
ffmpeg
ffmpeg
is not a mandatory requirement but ifFriday
encounters some errors related to it, download it.
To install Friday
, clone this repository.
git clone https://github.com/d33pster/Friday.git
then, move into the directory with cd
.
cd Friday
then, install it using pip.
maturin
needs to be installed before this step.
pip install .
To use Friday
, open two terminals.
in terminal 1
friday server
and wait for it show, rasa server is up and running!
after that, in terminal 2
friday
After
Friday
is online, just call "Friday!" to wakeFriday
up. and then a command.