Salta al contenuto

recensioni

Handy, dettatura vocale open source e completamente offline

·

Dettare a voce invece di scrivere è una di quelle comodità che, una volta prese, diventano difficili da abbandonare. Il problema è che quasi tutti gli strumenti decenti in circolazione funzionano mandando l’audio a un server remoto, con abbonamento annesso. Handy prova a fare la stessa cosa al contrario: tutto in locale, niente account, licenza MIT. Nasce da un’esigenza concreta, visto che lo sviluppatore l’ha messo insieme dopo essersi rotto un dito e non aver trovato nulla di open source che potesse modificare a piacimento.

Come funziona

Il meccanismo è volutamente elementare. Premete una scorciatoia da tastiera, parlate, la ripremete e il testo trascritto viene incollato nel campo in cui si trova il cursore, qualunque esso sia: browser, editor, chat, terminale. Le combinazioni predefinite cambiano a seconda del sistema operativo, ma possono essere tutte rimappate dalle impostazioni facendo clic sulla scorciatoia e premendo quella che preferite. Le azioni sono tre e distinte: trascrizione normale, trascrizione con post-processing e annullamento, assegnato al tasto Esc. In alternativa c’è la modalità push-to-talk, in cui la registrazione dura finché tenete premuti i tasti.

Alla base c’è Tauri, con interfaccia in React e backend in Rust, e un filtro VAD basato su Silero che elimina i silenzi prima di passare l’audio al modello. Nessun pezzo di questa catena esce dalla vostra macchina.

I modelli e le lingue disponibili

Qui sta la parte interessante. Handy vi fa scegliere il motore di riconoscimento al primo avvio e potete cambiarlo quando volete. Parakeet V3 di NVIDIA è quello consigliato: circa 478 MB, veloce, accurato e capace di gestire 25 lingue europee, italiano compreso, con rilevamento automatico della lingua parlata. Il suo difetto è che scrive i numeri per esteso invece che in cifre.

Se preferite un controllo più fine, o se vi serve una lingua fuori dal perimetro europeo, ci sono i modelli Whisper, che coprono oltre 99 lingue, restituiscono i numeri in cifre e permettono di selezionare manualmente la lingua. In mezzo trovate anche Canary, che aggiunge la traduzione tra lingue europee, GigaAM per il russo, SenseVoice per le lingue asiatiche e i piccolissimi Moonshine, che partono da 31 MB ma parlano solo inglese.

Vale la pena spendere due parole in più su Parakeet, perché è lui a fare il lavoro pesante per chi non scrive in inglese. Nei benchmark indipendenti resta a un soffio da Whisper Large V3 sul multilingua, con un vantaggio pratico che si nota subito nell’uso quotidiano: la sua architettura può restituire un output vuoto, mentre Whisper è costretto a produrre testo comunque. In sostanza sono molto più rare le allucinazioni da momenti di silenzio, quelle in cui un microfono aperto su una pausa vi regala frasi ripetute o sottotitoli inventati dal nulla.

Una precisazione sull’hardware: i modelli Whisper sfruttano l’accelerazione GPU (Metal su macOS, Vulkan su Windows e Linux), mentre tutti gli altri girano solo su CPU.

Le rifiniture

Al di là della trascrizione pura, ci sono un paio di opzioni che tornano utili quotidianamente. La prima è il dizionario delle parole personalizzate, dove indicate i termini che il modello sbaglia sistematicamente, ad esempio nomi propri o gergo tecnico, e la relativa correzione; funziona, ma gli stessi sviluppatori ammettono che è tutt’altro che perfetto. La seconda è l’auto-submit, che simula la pressione di Invio dopo aver incollato il testo: comodo nelle chat e nel terminale.

C’è poi il post-processing, ancora in alpha e nascosto dietro le funzioni sperimentali: fa passare la trascrizione attraverso un modello linguistico prima di incollarla, per sistemare punteggiatura, riformattare o tradurre al volo. Potete collegarlo ai soliti provider cloud, ma anche a un endpoint locale compatibile con le API OpenAI, per esempio LM Studio, restando così coerenti con la filosofia offline del resto dell’applicazione.

Ma funziona bene per davvero?

Handy funziona bene, e il consenso attorno al progetto è ampio: trentamila stelle su GitHub, valutazioni alte ovunque e commenti positivi anche da parte di chi ha provato le alternative commerciali a pagamento. Detto questo, ci sono alcuni limiti che è meglio conoscere prima di installarlo.

Il primo è la latenza in avvio. Diversi utenti segnalano un paio di secondi tra la pressione della scorciatoia e l’inizio effettivo della registrazione, abbastanza da costringervi a fare una pausa prima di parlare. Nella maggior parte dei casi la colpa è del Bluetooth, tanto che lo sviluppatore stesso consiglia di usare il microfono interno del computer anche quando indossate cuffie wireless.

Il secondo è che l’output è volutamente grezzo: Handy trascrive quello che avete detto e basta, senza riscritture, senza adattamenti di tono, senza formattazione. Chi arriva da strumenti commerciali che rifiniscono il testo in automatico questa differenza la nota, e per colmarla dovrete configurare il post-processing a mano. Il terzo è che si tratta di un’applicazione esclusivamente per desktop: non esiste una versione per smartphone.

Su Linux serve qualche attenzione in più

Handy è disponibile per macOS (Intel e Apple Silicon), Windows x64 e Linux x64, con pacchetti anche via Homebrew e winget. Su Windows tenete presente che l’installer scarica WebView2 come dipendenza.

Su Linux, invece, mettete in conto un po’ di configurazione. Per un input di testo affidabile servono xdotool su X11 oppure wtype o dotool su Wayland, e l’overlay di registrazione è disattivato per impostazione predefinita perché alcuni compositor lo trattano come finestra attiva, impedendo l’incollaggio. Sempre su Wayland, le scorciatoie globali vanno registrate dal vostro ambiente desktop richiamando i flag da riga di comando dell’app.

Il progetto è dichiaratamente in evoluzione, con rilasci ogni due settimane circa e uno sviluppatore che risponde in prima persona alle segnalazioni pubbliche. Gli stessi problemi aperti sono documentati apertamente nel repository, a partire da alcuni crash dei modelli Whisper su certe configurazioni Windows e Linux. Un’ultima nota: il codice è MIT, ma nome, logo e asset del marchio no, quindi eventuali fork devono presentarsi con un’identità propria.

Trovate tutto su handy.computer e su GitHub.

Da leggere anche