Grazie a RelfWolf per aver mostrato come un computer immaginario possa diventare un progetto interattivo da realizzare in casa. Nel suo video sulla realizzazione di Dr. Arnim Zola, combina un involucro stampato, ZimaBoard 2, Ollama e Home Assistant per creare un terminale che risponde alle domande vocali nei panni del personaggio.
Il progetto riunisce diversi sistemi separati. Ollama esegue il modello linguistico sull'hardware locale, Home Assistant coordina la conversazione e un dispositivo basato su ESP fornisce microfono e altoparlante. Un volto animato sullo schermo conferisce una presenza fisica a quelle risposte.
Questa combinazione rende il progetto interessante anche al di là di un oggetto di scena ispirato alla Marvel. Esplora come un piccolo server domestico possa supportare un'interfaccia vocale, cosa accade quando un'integrazione sovraccarica un modello di piccole dimensioni e perché la voce più convincente non è sempre la scelta più utilizzabile.
Prima di iniziare: Guarda il video completo per seguire la sequenza di assemblaggio e debug. Consideralo il resoconto di una realizzazione sperimentale, non un kit pronto per l'installazione; le dimensioni dell'involucro, le impostazioni dei dispositivi e gli indirizzi di rete dipendono dai componenti utilizzati.
Informazioni su questo progetto: Il resoconto qui sotto segue la dimostrazione di RelfWolf, comprese le modifiche apportate dopo i test. La sua configurazione conversazionale locale non utilizza ChatGPT, mentre gli elementi visivi vengono creati separatamente con strumenti di IA per immagini e video. Il terminale finito rimane un prototipo, con ulteriori interventi previsti per l'involucro, la voce e i tempi di risposta.
Cosa fa davvero il terminale IA di Dr. Zola di RelfWolf
Il terminale trasforma la voce in una risposta generata da un modello linguistico ospitato localmente. Home Assistant riceve l'audio dal dispositivo microfonico, invia le parole trascritte a Ollama e trasmette la risposta generata tramite sintesi vocale prima di restituire l'audio all'altoparlante.
RelfWolf fornisce all'agente conversazionale un prompt di sistema che descrive il personaggio. Configura inoltre una frase di attivazione personalizzata e una schermata che alterna animazioni di ascolto e conversazione, così l'interazione sembra collegata al terminale anziché a un'interfaccia per computer separata.
Durante una conversazione, il sistema:
- Rileva la frase di attivazione personalizzata e avvia l'ascolto tramite il microfono.
- Converte il messaggio pronunciato in testo per l'agente conversazionale.
- Utilizza Ollama su ZimaBoard 2 per generare una risposta e converte tale risposta in voce.
- Riproduce l'audio passando contemporaneamente il display all'animazione vocale.
Dopo la riproduzione, lo schermo torna al suo ciclo di inattività. Le spie del pannello rendono visibili le varie fasi, indicando quando il terminale è acceso, sta ascoltando, sta elaborando una richiesta o sta parlando.
Cosa ti serve prima di iniziare
Il progetto di RelfWolf richiede preparazione per l'involucro, la rete e il software vocale. I componenti mostrati includono:
- Uno ZimaBoard 2 con 16 GB di RAM che esegue ZimaOS
- Ollama e un modello linguistico scaricato localmente
- Un'installazione funzionante di Home Assistant con una pipeline vocale configurata
- Un dispositivo con microfono e altoparlante basato su ESP e che utilizza ESPHome
- Un display, interruttori del pannello di controllo, pulsanti e LED indicatori
- Un involucro stampato, componenti di montaggio, cablaggio e altoparlanti adatti al case
Il flusso di lavoro dipende dalla capacità del dispositivo microfono, di Home Assistant e del server Ollama di comunicare tra loro. Testa questi collegamenti prima di installare l'elettronica nell'involucro e verifica le dimensioni del display e la posizione dei connettori rispetto ai componenti effettivi che intendi utilizzare.
Perché ZimaBoard 2 è adatto a questo tipo di terminale IA locale
RelfWolf sceglie ZimaBoard 2 come computer all'interno del terminale. La configurazione da 16 GB gli offre una piattaforma compatta su cui testare un modello linguistico locale, gestire Ollama tramite ZimaOS e controllare il display del personaggio senza basare il progetto su un computer desktop.
La dimostrazione mostra anche perché la sola capacità di memoria non determina l'esperienza. Il carico di lavoro del modello, il raffreddamento, la configurazione di Home Assistant e la generazione vocale influiscono tutti sul tempo di attesa dell'utente per una risposta.
Parte 1: costruisci l'involucro del terminale e il pannello di controllo
La prima parte dà all'assistente una forma fisica. RelfWolf progetta un involucro per computer retrò attorno a uno schermo e a un pannello di controlli, quindi prepara i componenti stampati per l'assemblaggio.
Passaggio 1: progetta e stampa l'involucro
Crea l'involucro sulla base delle dimensioni effettive del display e dell'hardware interno. L'esperienza di RelfWolf mostra perché la posizione dei connettori è importante quanto le dimensioni visibili dello schermo: un modello di display leggermente diverso può creare in seguito un problema imprevisto di spazio per i cavi durante l'assemblaggio.
Passaggio 2: prepara i comandi e i punti di fissaggio
Monta interruttori, pulsanti, LED e cablaggio sul pannello di controllo prima di chiudere il case. Gli inserti filettati consentono di fissare il pannello con le viti e di rimuoverlo nuovamente durante i test dei componenti elettronici.
Passaggio 3: installa il display e controlla lo spazio per il cavo
Testa il collegamento HDMI con lo schermo nella posizione prevista. Quando il cavo entra in conflitto con l'involucro, RelfWolf usa un adattatore HDMI ad angolo retto per adattare il collegamento, evitando di dover riprogettare subito l'involucro e affrontare un altro lungo ciclo di stampa.
Passaggio 4: fissa il pannello anteriore
Inserisci il pannello di controllo preparato nella parte anteriore del terminale e fissalo con le viti negli inserti. Lascia accessibili i componenti elettronici interni finché software, audio e display non sono stati testati insieme.
Il guscio assemblato definisce l'aspetto del terminale, ma è ancora solo l'involucro. Il compito successivo è fare in modo che il computer generi risposte localmente e collegare tali risposte al microfono e all'altoparlante.
Parte 2: esegui un agente conversazionale locale con ZimaOS e Ollama
A 6:01, RelfWolf presenta l'hardware per l'IA locale. Prima testa il modello dalla riga di comando, poi passa all'interfaccia di ZimaOS e collega Ollama a Home Assistant.
Passaggio 1: testa Ollama su ZimaBoard 2
Inizia con uno scambio diretto di testo prima di aggiungere la pipeline vocale. RelfWolf riceve una risposta rapida nel test dalla riga di comando, confermando che la scheda è in grado di eseguire il modello prima di coinvolgere le integrazioni aggiuntive.
Questo risultato iniziale diventa un utile riferimento in seguito. Quando lo stesso progetto rallenta tramite Home Assistant, può verificare cosa aggiunge l'integrazione alla richiesta, invece di presumere che la scheda non sia in grado di eseguire affatto l'IA locale.
Passaggio 2: configura Ollama tramite ZimaOS
Usa l'interfaccia delle applicazioni di ZimaOS per installare e gestire Ollama come mostrato nel video. Il modello deve essere disponibile e rispondere prima che un altro servizio possa utilizzarlo come backend per le conversazioni.
L'obiettivo di RelfWolf è eseguire il modello di conversazione sul proprio hardware. ZimaOS fornisce l'interfaccia per la gestione delle applicazioni, mentre Ollama gestisce il modello locale e le relative risposte.
Passaggio 3: collega Home Assistant al server Ollama
Aggiungi l'integrazione di Ollama in Home Assistant e indirizzala all'indirizzo locale del server. Crea un agente Assist che utilizzi Ollama per la conversazione, in modo che i messaggi inseriti tramite Home Assistant raggiungano il modello in esecuzione su ZimaBoard 2.
Passaggio 4: configurare il personaggio e ridurre il lavoro non necessario
Imposta un prompt di sistema che definisca il comportamento del personaggio, quindi esegui un test digitando un messaggio.
Nel primo test integrato di RelfWolf, l'utilizzo della CPU raggiunge il 100%, le temperature superano gli 80 °C e la risposta richiede molto più tempo del previsto. Una piccola ventola riduce la temperatura, ma il JSON restituito rivela un altro problema: le informazioni sul controllo della casa intelligente sovraccaricano il modello. Disabilitando l'opzione di controllo associata, la conversazione funziona in modo più efficace.
Passaggio 5: confermare la conversazione prima di aggiungere la voce
Ripeti il test testuale tramite Home Assistant e verifica che la risposta segua il prompt del personaggio. In questo modo separi l'integrazione del modello linguistico dalla configurazione del microfono, della parola di attivazione e dell'altoparlante, che verrà eseguita successivamente.
Il miglioramento è specifico per questa configurazione e per il suo utilizzo incentrato sulla conversazione. RelfWolf non ha bisogno che il personaggio controlli i dispositivi della sua casa intelligente, quindi la rimozione di questo compito aggiuntivo consente al modello di concentrarsi sulle risposte.
Parte 3: aggiungere la parola di attivazione, la voce e il volto animato
L'ultima parte collega l'agente conversazionale funzionante al terminale fisico. ESPHome espone il microfono e l'altoparlante a Home Assistant, mentre un modello openWakeWord personalizzato consente a RelfWolf di attivare l'assistente pronunciando il nome del personaggio. Addestra la frase di attivazione, scarica i file risultanti e li aggiunge alla configurazione di Home Assistant.
Poi testa Kokoro per ottenere un parlato più naturale e crea due brevi loop visivi: un'animazione inattiva e un'animazione parlante. Un piccolo programma riproduce il loop inattivo all'avvio e cambia clip in risposta all'attività di riproduzione di Home Assistant. ESPHome collega inoltre gli indicatori del pannello allo stato dell'assistente, mentre altoparlanti più grandi da 5 W sostituiscono il piccolo altoparlante di prova.
L'assemblaggio completo rivela problemi che non erano evidenti nei test separati. Spostare il cavo Ethernet sull'altra porta di rete modifica l'indirizzo della scheda e interrompe le connessioni. Inoltre, il display avvia il ciclo del parlato prima che inizi l'audio udibile. Dopo aver regolato il trigger di riproduzione, RelfWolf torna al modello vocale originale più veloce, perché Kokoro aggiunge un ritardo sufficiente a portare l'attesa complessiva oltre i 20 secondi.
Voce di base, Kokoro e configurazione finale
| Configurazione vocale | Vantaggio principale | Limitazione principale | Ruolo nella realizzazione |
|---|---|---|---|
| Modello vocale originale | Generazione vocale più veloce nella dimostrazione | La voce iniziale suona generica | Primi test e terminale funzionante finale |
| Kokoro | Opzioni vocali più naturali | Aggiunge circa nove secondi di ritardo nella generazione vocale nel test registrato | Esperimento sulla qualità della voce |
| Configurazione integrata finale | Combina la voce più veloce con il prompt del personaggio, la frase di attivazione e lo schermo | La qualità della voce e il tempo di risposta devono ancora essere migliorati | Dimostrazione del prototipo completato |
Limiti importanti di prestazioni, rete e sincronizzazione
La conversazione completata dimostra che i componenti possono funzionare insieme, ma non stabilisce un tempo di risposta fisso per ogni modello o installazione. I test di RelfWolf mostrano che un'integrazione può aggiungere un carico di lavoro considerevole e che la generazione vocale può rimanere lenta anche dopo che il modello linguistico ha terminato di rispondere.
- Misura la conversazione completa. L'utente attende il riconoscimento vocale, l'inferenza del modello e la generazione vocale prima di sentire una risposta.
- Controlla le attività assegnate all'agente. Informazioni non necessarie sul controllo della casa intelligente hanno causato problemi in questa particolare configurazione della conversazione.
- Monitora il raffreddamento sotto carico. La ventola aggiunta ha abbassato la temperatura indicata fino alla fascia dei 60 °C durante un test successivo.
- Mantieni coerenti gli indirizzi dei server. La modifica della porta di rete ha interrotto le connessioni utilizzate dal terminale.
- Sincronizza l'animazione con la riproduzione audio. Un evento iniziale dell'altoparlante non significava che la voce generata fosse già in riproduzione.
- Scegli la qualità vocale tenendo conto della latenza. RelfWolf ha preferito il modello originale più veloce per l'interazione finale.
Risoluzione dei problemi di un terminale vocale IA locale
Se il terminale non funziona dopo l'assemblaggio, controlla gli stessi tre collegamenti che hanno causato problemi durante i test di RelfWolf:
- Verifica che Home Assistant punti ancora all'indirizzo corretto del server Ollama, soprattutto dopo aver spostato i cavi di rete.
- Controlla la configurazione dell'agente conversazionale quando un modello prima rapido diventa lento o restituisce un output strutturato imprevisto.
- Controlla i log dell'audio e della riproduzione quando il volto inizia a muoversi prima che l'altoparlante produca il suono.
Confronta anche il momento in cui il modello termina la risposta con quello in cui l'audio inizia effettivamente. Nei log mostrati, si trattava di ritardi distinti. Testa ogni componente singolarmente, poi ripeti una conversazione parlata completa con tutto installato all'interno dell'involucro.
Un server domestico compatto dà voce a un terminale immaginario
Il progetto di RelfWolf trasforma un involucro ispirato a un personaggio in un'interfaccia IA locale funzionante. Il risultato dipende dai collegamenti tra il modello, la pipeline vocale, i controlli fisici e il display tanto quanto dal case stampato.
ZimaBoard 2 fornisce la piattaforma di calcolo locale, ZimaOS supporta la gestione delle applicazioni e Home Assistant coordina l'interazione. Le lezioni più utili derivano dalle modifiche apportate durante i test: ridurre il carico dell'agente conversazionale, verificare gli indirizzi di rete, correggere i tempi di riproduzione e scegliere un modello vocale più veloce.
Guarda la realizzazione completa di Dr. Zola di RelfWolf per seguire la fabbricazione, il debugging e la conversazione finale. La sua valutazione conclusiva lascia spazio a revisioni dell'involucro, una qualità di stampa migliore e ulteriori miglioramenti alla voce e ai tempi di risposta.
Se stai sperimentando con l'IA locale, costruendo un terminale vocale o combinando l'hardware Zima con Home Assistant, visita la community ZimaSpace per condividere la tua configurazione e discutere dei componenti che vorresti migliorare in seguito.
Centro Campagne Zima
Altro da leggere

Come Rez Tech costruisce il proprio cloud personale con ZimaBoard 2
Rez Tech crea un cloud personale con ZimaBoard 2, due unità locali, RAID 1 e ZimaOS, quindi testa l'accesso ai file, i contenuti multimediali...

Silicon Steak riduce il suo homelab con ZimaBoard 2
Silicon Steak analizza se ZimaBoard 2 può sostituire una macchina homelab molto più grande, testando lo storage, la riproduzione multimediale, Minecraft, Pi-hole, le app...

Come Smart Life costruisce un cloud privato con ZimaBoard 2
Smart Life trasforma ZimaBoard 2 in una destinazione domestica per le foto e i video del telefono, mostrando la configurazione hardware, l’impostazione dello spazio...


