Merci à RelfWolf d’avoir montré comment un ordinateur fictif peut devenir un projet interactif à la maison. Dans sa vidéo de construction du terminal Dr. Arnim Zola, il associe un boîtier imprimé, une ZimaBoard 2, Ollama et Home Assistant pour créer un terminal qui répond aux questions orales en incarnant le personnage.
Le projet réunit plusieurs systèmes distincts. Ollama exécute le modèle de langage sur du matériel local, Home Assistant coordonne la conversation et un appareil basé sur ESP fournit le microphone et le haut-parleur. Un visage animé à l’écran donne une présence physique à ces réponses.
Cette combinaison rend la réalisation intéressante au-delà d’un accessoire inspiré de Marvel. Elle montre comment un serveur domestique compact peut prendre en charge une interface vocale, ce qui se produit lorsqu’une intégration surcharge un petit modèle, et pourquoi la voix la plus convaincante n’est pas toujours la plus pratique à utiliser.
Avant de commencer : Regardez la vidéo complète pour suivre la séquence d’assemblage et de débogage. Considérez-la comme le compte rendu d’une réalisation expérimentale plutôt que comme un kit prêt à installer ; les dimensions du boîtier, les paramètres des appareils et les adresses réseau dépendent des composants utilisés.
À propos de cette réalisation : Le compte rendu ci-dessous suit la démonstration de RelfWolf, y compris les modifications qu’il effectue après ses tests. Sa configuration conversationnelle locale n’utilise pas ChatGPT, tandis que les éléments visuels sont créés séparément avec des outils d’IA pour l’image et la vidéo. Le terminal terminé reste un prototype, et d’autres travaux sont prévus sur son boîtier, sa synthèse vocale et son temps de réponse.
Ce que fait réellement le terminal IA Dr. Zola de RelfWolf
Le terminal transforme la parole en réponse grâce à un modèle de langage hébergé localement. Home Assistant reçoit l’audio du microphone, transmet les mots transcrits à Ollama, puis envoie la réponse générée à la synthèse vocale avant de restituer l’audio au haut-parleur.
RelfWolf attribue à l’agent conversationnel un prompt système qui décrit le personnage. Il configure également une phrase d’activation personnalisée et un écran qui alterne entre des animations d’écoute et de parole, afin que l’interaction semble liée au terminal plutôt qu’à une interface informatique distincte.
Au cours d’une conversation, le système :
- Détecte la phrase d’activation personnalisée et commence à écouter via le microphone.
- Convertit le message vocal en texte pour l’agent conversationnel.
- Utilise Ollama sur la ZimaBoard 2 pour générer une réponse et convertit cette réponse en parole.
- Lit l’audio tout en faisant passer l’écran à son animation de parole.
L’écran revient à sa boucle d’attente après la lecture. Les voyants du panneau rendent les étapes visibles et indiquent quand le terminal est sous tension, écoute, traite une requête ou parle.
Ce dont vous avez besoin avant de commencer
La réalisation de RelfWolf nécessite une préparation du boîtier, du réseau et des logiciels vocaux. Les composants présentés comprennent :
- Une ZimaBoard 2 avec 16 Go de RAM exécutant ZimaOS
- Ollama et un modèle de langage téléchargé localement
- Une installation fonctionnelle de Home Assistant avec un pipeline vocal configuré
- Un dispositif à microphone et haut-parleur basé sur ESP et utilisant ESPHome
- Un écran, des interrupteurs du panneau de commandes, des boutons et des voyants à LED
- Un boîtier imprimé, du matériel de montage, du câblage et des haut-parleurs adaptés au boîtier
Le fonctionnement dépend de la capacité du microphone, de Home Assistant et du serveur Ollama à communiquer. Testez ces connexions avant d’installer les composants électroniques dans le boîtier, puis vérifiez les dimensions de l’écran et la position des connecteurs par rapport aux composants réels que vous prévoyez d’utiliser.
Pourquoi la ZimaBoard 2 convient à ce type de terminal d’IA local
RelfWolf choisit la ZimaBoard 2 comme ordinateur intégré au terminal. La configuration de 16 Go lui fournit une plateforme compacte pour tester un modèle de langage local, gérer Ollama via ZimaOS et piloter l’affichage du personnage sans construire le projet autour d’un ordinateur de bureau.
La démonstration montre également pourquoi la capacité mémoire à elle seule ne détermine pas l’expérience. La charge de travail du modèle, le refroidissement, la configuration de Home Assistant et la génération vocale influent tous sur le temps d’attente de l’utilisateur avant d’obtenir une réponse.
Partie 1 : Construire le boîtier du terminal et le panneau de commandes
La première partie donne une forme physique à l’assistant. RelfWolf conçoit un boîtier d’ordinateur rétro autour d’un écran et d’un panneau de commandes, puis prépare les pièces imprimées pour l’assemblage.
Étape 1 : Concevoir et imprimer le boîtier
Créez un boîtier en fonction des dimensions réelles de l’écran et du matériel interne. L’expérience de RelfWolf montre pourquoi l’emplacement des connecteurs est aussi important que la taille visible de l’écran : un modèle d’écran légèrement différent peut créer plus tard un problème inattendu de dégagement pour le câble lors du montage.
Étape 2 : Préparer les commandes et les points de fixation
Assemblez les interrupteurs, les boutons, les LED et le câblage sur le panneau de commande avant de fermer le boîtier. Les inserts filetés permettent de fixer le panneau avec des vis et de le retirer à nouveau pendant les tests de l’électronique.
Étape 3 : Installer l’écran et vérifier le dégagement du câble
Testez la connexion HDMI avec l’écran dans sa position installée. Lorsque le câble gêne le boîtier, RelfWolf utilise un adaptateur HDMI coudé pour ajuster la connexion, évitant ainsi de devoir immédiatement repenser le boîtier et relancer un long cycle d’impression.
Étape 4 : Fixer le panneau avant
Installez le panneau de commande préparé à l’avant du terminal et vissez-le dans les inserts. Laissez l’électronique interne accessible jusqu’à ce que les logiciels, l’audio et l’affichage aient été testés ensemble.
La coque assemblée donne au terminal son apparence, mais elle n’est encore qu’une enveloppe. L’étape suivante consiste à faire générer les réponses localement par l’ordinateur et à connecter ces réponses au microphone et au haut-parleur.
Partie 2 : Exécuter un agent conversationnel local avec ZimaOS et Ollama
À 6:01RelfWolf présente le matériel d’IA locale. Il teste d’abord le modèle en ligne de commande, puis passe à l’interface de ZimaOS et connecte Ollama à Home Assistant.
Étape 1 : Tester Ollama sur ZimaBoard 2
Commencez par un échange textuel direct avant d’ajouter le pipeline vocal. RelfWolf reçoit une réponse rapide lors de son test en ligne de commande, confirmant que la carte peut exécuter le modèle avant l’ajout d’intégrations supplémentaires.
Ce premier résultat devient une référence utile par la suite. Lorsque le même projet ralentit via Home Assistant, il peut déterminer ce que l’intégration ajoute à la requête, plutôt que de supposer que la carte est incapable d’exécuter une IA locale.
Étape 2 : Configurer Ollama via ZimaOS
Utilisez l’interface des applications de ZimaOS pour installer et gérer Ollama comme indiqué dans la vidéo. Le modèle doit être disponible et répondre avant qu’un autre service puisse l’utiliser comme moteur conversationnel.
L’objectif de RelfWolf est d’exécuter le modèle conversationnel sur son propre matériel. ZimaOS fournit l’interface de gestion des applications, tandis qu’Ollama gère le modèle local et ses réponses.
Étape 3 : Connecter Home Assistant au serveur Ollama
Ajoutez l’intégration Ollama dans Home Assistant et indiquez-lui l’adresse locale du serveur. Créez un agent Assist qui utilise Ollama pour la conversation afin que les messages saisis dans Home Assistant parviennent au modèle exécuté sur le ZimaBoard 2.
Étape 4 : configurer le personnage et réduire le travail superflu
Définissez un prompt système qui décrit le comportement du personnage, puis testez-le en saisissant un message.
Lors du premier test intégré de RelfWolf, l’utilisation du processeur atteint 100 %, la température dépasse 80 °C et la réponse prend beaucoup plus de temps que prévu. Un petit ventilateur réduit la température, mais le JSON renvoyé révèle un autre problème : les informations de contrôle de la maison connectée submergent le modèle. La désactivation de l’option de contrôle associée rend la conversation plus efficace.
Étape 5 : confirmer la conversation avant d’ajouter la voix
Répétez le test de texte via Home Assistant et vérifiez que la réponse suit le prompt du personnage. Cela permet de distinguer l’intégration du modèle de langage de la configuration du microphone, du mot d’activation et du haut-parleur qui vient ensuite.
L’amélioration est spécifique à cette configuration et à son utilisation axée sur la conversation. RelfWolf n’a pas besoin que le personnage contrôle ses appareils domotiques ; la suppression de cette tâche supplémentaire permet donc au modèle de se concentrer sur les réponses.
Partie 3 : ajouter le mot d’activation, la voix et le visage animé
La dernière partie relie l’agent conversationnel fonctionnel au terminal physique. ESPHome expose le microphone et le haut-parleur à Home Assistant, et un modèle openWakeWord personnalisé permet à RelfWolf d’activer l’assistant en prononçant le nom du personnage. Il entraîne la phrase d’activation, télécharge les fichiers obtenus et les ajoute à sa configuration Home Assistant.
Il teste ensuite Kokoro pour obtenir une parole plus naturelle et crée deux courtes boucles visuelles : une animation au repos et une animation parlante. Un petit programme lance la boucle au repos au démarrage et change de clip en fonction de l’activité de lecture de Home Assistant. ESPHome relie également les voyants du panneau à l’état de l’assistant, tandis que des haut-parleurs plus grands de 5 W remplacent le petit haut-parleur de test.
L’assemblage complet révèle des problèmes qui n’étaient pas évidents lors des tests séparés. Déplacer le câble Ethernet vers l’autre port réseau modifie l’adresse de la carte et interrompt les connexions. L’écran démarre également sa boucle de parole avant le début de la parole audible. Après avoir ajusté le déclencheur de lecture, RelfWolf revient au modèle vocal d’origine plus rapide, car Kokoro ajoute suffisamment de délai pour faire dépasser l’attente globale 20 secondes.
Voix de base contre Kokoro et configuration finale
| Configuration vocale | Avantage principal | Limitation principale | Rôle dans la réalisation |
|---|---|---|---|
| Modèle vocal d’origine | Génération vocale plus rapide lors de la démonstration | La voix initiale semble générique | Premiers tests et terminal fonctionnel final |
| Kokoro | Options vocales plus naturelles | Ajoute environ neuf secondes de délai de génération vocale lors du test enregistré | Expérience sur la qualité vocale |
| Configuration intégrée finale | Combine la voix plus rapide avec le prompt de personnage, la phrase d’activation et l’écran | La qualité vocale et le temps de réponse doivent encore être améliorés | Démonstration du prototype terminé |
Limites importantes en matière de performances, de réseau et de synchronisation
La conversation terminée montre que les composants peuvent fonctionner ensemble, mais elle n’établit pas un temps de réponse fixe pour chaque modèle ou installation. Les tests de RelfWolf montrent qu’une intégration peut ajouter une charge de travail importante et que la génération vocale peut rester lente même après que le modèle de langage a fini de répondre.
- Mesurez la conversation dans son ensemble. L’utilisateur attend la reconnaissance vocale, l’inférence du modèle et la génération vocale avant d’entendre une réponse.
- Vérifiez les tâches attribuées à l’agent. Des informations inutiles sur le contrôle de la maison connectée ont causé des problèmes dans cette configuration de conversation particulière.
- Surveillez le refroidissement en charge. Le ventilateur ajouté a fait baisser la température affichée dans la plage du milieu des 60 °C lors d’un test ultérieur.
- Gardez les adresses des serveurs cohérentes. Le changement de port réseau a interrompu les connexions utilisées par le terminal.
- Synchronisez l’animation avec la lecture audio. Un événement précoce du haut-parleur ne signifiait pas que la parole générée était déjà en cours de lecture.
- Choisissez la qualité vocale en tenant compte de la latence. RelfWolf a préféré le modèle original plus rapide pour l’interaction finale.
Dépannage d’un terminal vocal d’IA locale
Si le terminal tombe en panne après l’assemblage, suivez les trois mêmes connexions qui ont causé des problèmes pendant les tests de RelfWolf :
- Vérifiez que Home Assistant pointe toujours vers la bonne adresse du serveur Ollama, notamment après avoir déplacé les câbles réseau.
- Vérifiez la configuration de l’agent conversationnel lorsqu’un modèle auparavant rapide devient lent ou renvoie une sortie structurée inattendue.
- Vérifiez les journaux audio et de lecture lorsque le visage commence à bouger avant que le haut-parleur ne produise du son.
Comparez également le moment où le modèle termine sa réponse avec celui où l’audio commence réellement. Dans les journaux présentés, ces deux délais étaient distincts. Testez chaque composant séparément, puis répétez une conversation vocale complète avec tout le matériel installé à l’intérieur du boîtier.
Un serveur domestique compact donne une voix fonctionnelle à un terminal fictif
Le projet de RelfWolf transforme un boîtier inspiré d’un personnage en une interface d’IA locale fonctionnelle. Le résultat dépend autant des liens entre le modèle, le pipeline vocal, les commandes physiques et l’écran que du boîtier imprimé.
ZimaBoard 2 fournit la plateforme de calcul locale, ZimaOS prend en charge la gestion des applications et Home Assistant coordonne l’interaction. Les enseignements les plus utiles viennent des modifications apportées pendant les tests : réduire la charge de l’agent conversationnel, vérifier les adresses réseau, corriger le timing de lecture et choisir un modèle vocal plus rapide.
Regardez la construction complète de Dr. Zola par RelfWolf pour suivre la fabrication, le débogage et la conversation finale. Son évaluation finale laisse place à des révisions du boîtier, à une meilleure qualité d’impression et à d’autres améliorations de la voix et du temps de réponse.
Si vous expérimentez l’IA locale, construisez un terminal vocal ou associez du matériel Zima à Home Assistant, rendez-vous sur la communauté ZimaSpace pour partager votre configuration et discuter des éléments que vous souhaiteriez améliorer ensuite.
Centre de Campagne Zima
Plus à lire

Comment Rez Tech construit son propre cloud personnel avec ZimaBoard 2
Rez Tech crée un cloud personnel avec ZimaBoard 2, deux disques locaux, RAID 1 et ZimaOS, puis teste l’accès aux fichiers, les contenus 4K...

Silicon Steak réduit son homelab avec ZimaBoard 2
Silicon Steak explore si le ZimaBoard 2 peut remplacer une machine de homelab bien plus imposante, en testant le stockage, la lecture multimédia, Minecraft,...

Comment Smart Life crée un cloud privé avec ZimaBoard 2
Smart Life transforme le ZimaBoard 2 en destination domestique pour les photos et vidéos du téléphone, en présentant la conception matérielle, la configuration du...


