Fork of Priler/jarvis (CC BY-NC-SA 4.0) https://github.com/Priler/jarvis
Find a file
2023-04-19 23:20:00 +05:00
.idea some reformat 2023-04-16 16:59:18 +05:00
custom-commands Revert "Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine" 2023-04-16 15:56:20 +05:00
model_small some reformat 2023-04-16 16:59:18 +05:00
sound Revert "Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine" 2023-04-16 15:56:20 +05:00
utils Revert "Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine" 2023-04-16 15:56:20 +05:00
.gitignore some reformat 2023-04-16 16:59:18 +05:00
commands.yaml some reformat 2023-04-16 16:59:18 +05:00
config.py some reformat 2023-04-16 16:59:18 +05:00
dev.env chat-gpt-3.5-turbo fix 2023-04-16 17:24:05 +05:00
main.py chat-gpt-3.5-turbo fix 2023-04-17 16:02:33 +03:00
README.md some reformat 2023-04-16 16:59:18 +05:00
requirements.txt some reformat 2023-04-16 16:59:18 +05:00
tts.py some reformat 2023-04-16 16:59:18 +05:00

Kesha v3.0 very early (aka Jarvis update)

Simple Voice Assistant made as an experiment using Silero & Vosk.
Later on Picovoice Porcupine Wake Word Detection & ChatGPT was added.

image

The code has NOT been polished and is provided "as is". There are a lot of code that are redundant and there are tons of improvements that can be made.

Installation

First, install the requirements, the requirements.txt file is just an output of pip freeze from my test venv 'k.
Second, check config.py and set required values (api key, device index).
Next, run the main.py script and Voilà, as simple as that.

And don't forget to put models of Vosk to main folder.
You can get the latest from the official website.
The one I was using is small.
p.s. If you don't understand how to install or where to put the Vosk model, I've made a screenshot for you.

Python version

I was using Python 3.8.3, but it should work on any newer version.

ToDo

  • Адекватная архитектура кода, собрать всё и переписать from the ground up.
  • Задержка воспроизведения звука на основе реальной длительности .wav файла (прогружать при запуске?)
  • Speech to intent?
  • Отключать self listening protection во время воспроизведения с наушников.
  • Указание из списка или по имени будет реализовано позже.

Author

(2022) Abraham Tugalov