Jarvis
- is a voice assistant made as an experiment using neural networks for things like STT/TTS/Wake Word/NLU etc.
The main project challenges we try to achieve is:
- 100% offline (no cloud)
- Open source (full transparency)
- No data collection (we respect your privacy)
Our backend stack is 🦀 Rust with ❤️ Tauri.
For the frontend we use ⚡️ Vite + 🛠️ Svelte.
Other libraries, tools and packages can be found in source code.
This are the neural networks we are currently using:
- Speech-To-Text
- Text-To-Speech
Silero TTS(currently not used)Coqui TTS(currently not used)WinRT(currently not used)gTTS(currently not used)SAM(currently not used)
- Wake Word
- Rustpotter (Partially implemented, still WIP)
- Picovoice Porcupine via official SDK (requires API key)
- Vosk Speech Recognition Toolkit via Vosk-rs (very slow)
- [
Snowboy] (currently not used)
- NLU
- Nothing yet.
- Chat
ChatGPT(coming soon)
Currently, only Russian language is supported.
But soon, Ukranian and English will be added for the interface, wake-word detection and speech recognition.
cd app
bash helpers/get-deps.bash
bash helpers/get-vosk-models.bash
cargo build
cargo run jarvis-app
target/debug/jarvis-app.exe
cargo install
cd gui
npm install
npm install --save-exact --save-dev esbuild
npm run dev
Abraham Tugalov
Old version of Jarvis was built with Python.
The last Python version commit can be found here.
Attribution-NonCommercial-ShareAlike 4.0 International
See LICENSE.txt file for more details.