Jarvis è l'assistente vocale italiano ad alte prestazioni definitivo. Progettato per il controllo locale e l'elaborazione vocale in tempo reale, offre una scelta unica: la potenza del cloud con Google Gemini o la privacy del locale con Ollama. Tutto questo con una sintesi vocale ultra-rapida grazie a VibeVoice.
| Caratteristica | Descrizione |
|---|---|
| Doppia IA | Scegli tra Gemini (per bassa potenza locale) o Ollama (per privacy e controllo totale). |
| Tempo Reale | ASR (Faster-Whisper) e TTS (VibeVoice) garantiscono un tempo di risposta vocale minimo. |
| Memoria | Utilizza ChromaDB per la memoria contestuale e a lungo termine. |
| Microfono | Selezione interattiva del microfono al primo avvio per la massima compatibilità hardware. |
Jarvis è un sistema a tre componenti che devono essere attivi contemporaneamente:
- Server LLM/Brain: L'intelligenza (Gemini Cloud o Ollama Locale).
- Server TTS (VibeVoice): Il server vocale locale sulla porta
8000(richiede GPU). - Jarvis Client: L'applicazione Python che gestisce microfono, ASR, e riproduzione audio.
- Python 3.10+ installato e nel PATH.
- Git installato.
- GPU NVIDIA con driver aggiornati (Raccomandata la serie RTX 30/40).
- (Solo per Versione Ollama): Ollama installato e un modello base (es.
llama3) scaricato (ollama pull llama3).
L'installazione è centralizzata in un unico script e gestisce tutte le dipendenze Python e VibeVoice.
-
Clona la Repository o scarica lo ZIP e apri il terminale nella cartella principale.
-
Avvia il Setup: Esegui lo script:
python setup_jarvis.py
-
Segui i Passaggi: Lo script guiderà l'utente attraverso la selezione della versione, la configurazione delle chiavi API (necessarie per Gemini, opzionali per Ollama) e l'installazione automatica di VibeVoice.
Lancia i server nell'ordine corretto in terminali separati:
| Terminale | Comando (Esempio) | Ruolo |
|---|---|---|
| #1 | ollama serve (SOLO se usi OLLAMA) |
Server LLM Locale |
| #2 | python VibeVoice/demo/vibevoice_realtime_demo.py --model_path microsoft/VibeVoice-Realtime-0.5B --port 8000 |
Server TTS VibeVoice (Bloccante) |
| #3 | python jarvis_client.py |
Jarvis Client (Ascolto e Interazione) |
- Dual AI Backbone: Choose between Gemini (for low local power) or Ollama (for total privacy and local control).
- Real-Time Performance: Faster-Whisper (ASR) and VibeVoice (TTS) ensure minimal voice response latency.
- Memory: Uses ChromaDB for powerful contextual and long-term memory management.
- Microphone Setup: Interactive microphone selection on first run for maximum hardware compatibility.
(The rest of the English guide follows the same clean structure as the Italian section.)
Se incontri problemi o hai domande sul progetto, sentiti libero di scrivermi, cerca su LinkedIn Francesco Gruner: