A Single Personalised Voice Assistant for Multiple users.
Alexa listens to all and functions to their voice, but lacks the personalised results.
But this overcamed that issue.
- Functions on every ones voice.
- Gives pesonalised results when triggred to.
You first have to train the Model for the recognisation of the speakers, which you may train from the SkyDocs Speaker Identification Repo.
And save the model.h5
file locally.
For the working of the Voice Assistant, get the model.h5
you trained from the Speaker Identificatio Repo.
And now put the model.h5
file and the noise folder from dataset in the Personalised-voice-assistant folder.
Now you have got to modify the files in the users folder.
You may personalise the functions and the users files to match the numbers of the users.
For example if you have trained the model for 3 users, then keep/edit the user_0.py
, user_1.py
, user_2.py
and keep the user_new.py
, this for the unknown/ new users.
Install the requirements by running:
pip install -r requirements.txt
or pip3 install -r requirements.txt
Change the path to noise dataset in predict.py
file to your own path to noise folder.
After installing the requirements and doing the necessary changes.
This is work in progress. I am porting it cloud so that, we all can use it via all out devices.
Server Side (Test Only): python voice_assistant_server.py
Client Side:
The main working is to send a post request to the server running with audio command of the user in base64 encoded format along with the user-id.
json format
{"user_audio":"**base64 encoded string of voice command**", "user_id":"**user id, default is 0**"}
An exmaple script for this same is voice_assistant_front_end.py
It does all of the things, just run the script and get on-board.
Clone the repo and then change the branch to local-only, via git checkout local-only
And then run:
python voice_assistant_cli.py
or python3 voice_assistant_cli.py
And here you go.
Have a general Voice Assistant or say "recognise" to trigger the recognition process.
Say a few phrases when prompted. And Boom!
You got your own Personalised Voice Assistant Triggred.
This is a Purely open-source project, and feel free to suggest the changes.
To contribute: Fork it, make the changes and push a pull request and we will get back to you.
Watch the demo video.
This project is selected for the Finals for Sony's Dreams To Reality contest.
Licensed under GNU General Public License v3.0