Skip to content

d33pster/Friday

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

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.

Table of Contents

Mechanism

  • Speech to Text

    • Friday needs a vosk 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 of vosk.

    • The output from vosk is processed by a custom NLP server running in the local host, that returns the properly processed command back to Friday. This NLP server has been made using rasa platform.

    • Both vosk model and NLP server are part of Friday's "Brain" and are a vital part of Friday's response.

  • Text to Speech

    • Friday's speaking abilities are powered by Google Text To Speech client, which was used to write Friday's TTS library in rust (for speed).

    • Apart from that, Friday uses threads to speak, which further enhances Friday's voice control.

  • Overall Integration

    • Friday's overall integration is a result of simultaneous working of several components altogether.

Requirements

  • Mandatory conda

    conda must be installed in the system and enabled.

  • Mandatory python v3.12

    rasa uses python v3.9 and it will be installed in a separate conda env automatically by Friday

  • Mandatory maturin

    can be installed using $ pip install maturin

  • ffmpeg

    ffmpeg is not a mandatory requirement but if Friday encounters some errors related to it, download it.

Installation

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 .

Usage

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 wake Friday up. and then a command.