Join the conversation

Join the community of Machine Learners and AI enthusiasts.

Sign Up
mrs83 
posted an update 9 days ago
Post
3193
🚀 Just released a PoC: Kurtis-E1 MLX Voice Agent

An offline, privacy-first voice assistant built for macOS (Apple Silicon), designed for empathetic, short-form interactions.

🧠 Powered by:
- Whisper (via MLX) for speech-to-text: https://pypi.org/project/mlx-whisper/
- Kurtis-E1 (a custom SmolLM2 LLM) via Ollama
- Coqui-TTS XTTSv2 for multilingual TTS
- Optional translation layer via TowerInstruct-13B-v0.1 for non-English voice input/output: Unbabel/TowerInstruct-13B-v0.1

🎧 Everything runs entirely on-device (Mac Mini M4 Max - 24gb) — no cloud, no remote API calls, no data leakage.
💡 Code is fully handcrafted (no AI-generated code), and designed to showcase what’s possible with local models, even on laptops.
🛠️ Open to contributions, ideas (e.g., LM Studio for MLX inference, MLX worker subprocess, optimize for latency and VRAM usage).

👉 Video demo (Italian): https://www.youtube.com/watch?v=8-1PcmUStaI

PoC: https://github.com/ethicalabs-ai/Kurtis-E1-MLX-Voice-Agent
Kurtis-E1: ethicalabs/kurtis-e1-67a9148e0836885c44c7902c
Kurtis-E1 WebGPU: ethicalabs/Kurtis-E1-WebGPU

Che bella cosa, Massimo! Hai creato un sistema sul tuo computer locale che interagisce con l'utente. Eccellente!

Ho preparato il video per te affinché possa vedere che anche Wisper CPP consente già qualcosa di simile, potrebbe esserti d'aiuto nello sviluppo successivo.

https://www.youtube.com/watch?v=063LvbMKHXs

Testing it right now with https://huggingface.co/Unbabel/TowerInstruct-7B-v0.2

Text is translated from German to English, sent to the LLM and translated back from English to German

https://www.youtube.com/watch?v=nhoPJGXM3vQ