Servitor Assistant
March 18, 2026
🇺🇸 English versionUm assistente de voz dividido entre duas máquinas: um PC faz todo o trabalho pesado — reconhecimento de fala, inferência do LLM, síntese de voz — e um Raspberry Pi serve como interface física, ouvindo pelo microfone, reproduzindo a resposta nos alto-falantes e pulsando um LED enquanto aguarda.
O assistente tem personalidade de Adeptus Mechanicus do Warhammer 40k. Fala como um Magos do Imperium — breve, curioso, levemente perturbador.
Por baixo dos panos, a fala é transcrita offline com Vosk, enviada a um agente LangChain com um modelo local Ollama, e a resposta é sintetizada com Piper TTS. O áudio passa pelo SoX no Pi para adicionar overdrive e reverb que combinam com o efeito de voz. Há também um frontend de chat web em React que faz stream das respostas via SSE e pode opcionalmente acionar o mesmo pipeline de TTS no Pi.
O agente tem acesso a ferramentas via servidor MCP: clima de Campina Grande, gerenciador de tarefas completo com suporte a tarefas recorrentes em SQLite, e matemática básica. Um loop de lembretes verifica a cada minuto e envia um alerta de áudio ao Pi quando uma tarefa vence.
Tudo isso está dentro de uma caveira impressa em 3D.
Stack: Python, FastAPI, LangChain, FastMCP, Ollama (llama3.2), Vosk, Piper TTS, SoX, React + Vite + TypeScript, SQLite, Raspberry Pi, RPi.GPIO.
Technologies: Python, FastAPI, LangChain, Ollama, Vosk, Piper TTS, React, Raspberry Pi