La app de dictado que funciona cuando internet no

El dictado en la nube muere con la red. Keebye pasa voz a texto on-device: sin internet, audio fuera del Mac ni caídas de red que lo interrumpan.

Teodor Deleanu10 de julio de 20267 min de lectura

Algunas quejas solo aparecen cuando algo se rompe, y por eso es fácil restarles importancia hasta que te toca a ti: el dictado en la nube depende de la red. Una caída del proveedor, y tu tecla de dictado puede no hacer nada. Un Wi-Fi de hotel que se corta, y una frase puede desvanecerse en un spinner. Un avión. Un túnel de tren. Una VPN renegociando exactamente en el peor momento. Esto no es un defecto de un producto; es lo que significa depender de un viaje de ida y vuelta.

La crueldad está en qué falla. Si tu app de notas se cae, abres un archivo de texto. Si tu dictado se cae, pierdes un método de entrada — aquello sobre lo que habías construido memoria muscular, a media frase, normalmente mientras tenías las manos ocupadas con otra cosa. Y esa era justamente la razón por la que estabas dictando.

Bajo la queja de disponibilidad hay una pregunta de privacidad: ¿sale de la máquina el audio de tu voz? En una ruta de transcripción en la nube, grabaciones de ti pensando en voz alta — nombres de clientes, funciones sin lanzar, el problema de seguridad que le estás describiendo a un compañero — viajan a la infraestructura de otra persona para convertirse en texto. Esa ruta también puede depender de sesiones, cuentas y disponibilidad de servicio fuera de tu control.

Construí la respuesta de Keebye a esto antes de articularla como una función, porque mi propio requisito era rotundo: tenía que funcionar con el Wi-Fi apagado. Aquí está cómo es eso en la práctica, y cuánto cuesta.

Por qué el dictado en la nube falla hasta cero

Vale la pena deletrear la mecánica a nivel de categoría, porque explica por qué esta queja nunca desaparece del todo por muy buenos que se vuelvan los productos.

Un bucle de dictado en la nube tiene como mínimo cuatro eslabones: capturar audio en tu máquina, enviarlo a un servidor, ejecutar la inferencia allí, devolver el texto. Cada eslabón es una dependencia: tu red, su red, su capa de autenticación, su capacidad, su uptime. La cadena suele estar bien. Pero cuando cualquier eslabón se rompe, el bucle entero se rompe, y se rompe hasta cero. No «más lento», no «menos preciso» — no llega nada a tu cursor. Degradarse sería tolerable; el dictado se degrada al silencio.

Los proveedores pueden trabajar duro contra esto, pero no pueden arreglar eslabones que no poseen: el router del hotel, el vuelo, la VPN corporativa, el incidente de backbone entre tú y ellos. Una herramienta cuya disponibilidad depende de varios sistemas puede fallar cuando cualquiera de ellos no está disponible.

¿Qué pasa cuando no hay nube de la que replegarse?

La arquitectura de Keebye responde a la pregunta eliminándola. La voz a texto se ejecuta totalmente on-device — modelos ONNX, inferencia local, en el propio silicio de tu Mac. Hay cero llamadas de red en la ruta de dictado. No «las minimizamos», no «las agrupamos» — cero. Tampoco hay telemetría. Ninguna. Cuando mantienes pulsada la tecla y hablas, ningún paquete sale de la máquina en tu nombre.

Quiero subrayar el punto arquitectónico, porque es la diferencia entre esto y un «modo sin conexión». Un modo sin conexión es un plan B: la ruta normal va a la nube y, cuando la nube es inalcanzable, una ruta local degradada toma el relevo — si la app se da cuenta a tiempo, si la ruta local está mantenida, si el traspaso funciona a media frase. Keebye no tiene ese traspaso porque no tiene una ruta en la nube de la cual traspasar. La inferencia local no es el plan de reserva; es el único plan. Una caída aguas arriba no puede romperlo por la misma razón por la que un apagón en otro país no puede apagar tu lámpara de escritorio. Inmunidad por construcción, no por plan B.

Aquí también se responde la queja más silenciosa, sin necesidad de una página de ajustes. Tu audio nunca sale de la máquina — ni cifrado en tránsito, ni anonimizado, simplemente nunca enviado, porque no hay adónde enviarlo. Si activas el historial de dictado, lo que se guarda es solo texto, en una base de datos SQLite local, en tu propio disco. (Ese historial tiene su propia historia de calidad de vida — la queja recurrente de «¿adónde fue mi dictado?» — que cubrimos en tu dictado no debería esfumarse sin más.) Y la fragilidad de cuentas y sesiones desaparece junto con las cuentas: no hay sesión en la nube que pueda caducar en la ruta de dictado, así que no hay una reautenticación interponiéndose entre tú y una hotkey que funcione.

La única vez en la que sí necesitas internet

Honestidad obligada, dicha sin rodeos: los modelos tienen que llegar de algún modo a tu máquina. En la primera ejecución, Keebye descarga su modelo de voz — unos 700 MB para el motor en inglés, y alrededor de 1,3 GB si activas el motor multilingüe. Es una descarga real, una vez por motor, y necesitas internet para ella.

Después de eso, los modelos viven en el disco y la transcripción se ejecuta contra ellos en local, haya red o no, hasta que los elimines o los sustituyas. Pero si esa primera ejecución te pilla en el avión, estás vendido hasta que aterrices — haz la configuración antes de viajar, no durante. Prefiero que lo oigas de mí a que lo descubras sobre el Atlántico.

La cuestión de la precisión, respondida con honestidad

La descarga es la salvedad pequeña. Aquí va la grande, porque a las herramientas on-device les encanta saltársela.

Los modelos en la nube más grandes pueden ser más precisos que un modelo on-device. Un modelo que llena un rack de servidores tiene una capacidad que un archivo de 700 MB no tiene, y fingir lo contrario sería insultar tu inteligencia. Lo que sí diré — y lo que creo tras convivir con ambos — es que la brecha se ha estrechado muchísimo y, más importante, que los modos de fallo son distintos en naturaleza. El peor día de un modelo on-device es una palabra mal oída que corriges. El peor día de un modelo en la nube es cero salida, porque su precisión se multiplica por su disponibilidad, y la disponibilidad es el término que se va a cero en el tren. Qué modo de fallo prefieres tener depende de cómo sea tu día; el mío tiene demasiados trenes.

Hoy es solo para macOS, y está en acceso anticipado. No hay build para Windows, y están las asperezas que implica el acceso anticipado. Si tu setup es Windows primero, la respuesta honesta es que Keebye todavía no puede ayudarte.

Si estás sopesando esto frente a una herramienta que ya usas, las páginas de comparación son la versión ecuánime de este argumento. Keebye vs Superwhisper compara dos productos con rutas de transcripción on-device; Keebye vs Wispr Flow cubre la decisión de local frente a nube. Y si la alternativa que sopesas es el dictado integrado en macOS, dictado por voz para Mac cubre qué hace bien el integrado y en qué se diferencia Keebye.

La disponibilidad es una función

La categoría del dictado se ha pasado años compitiendo en porcentajes de precisión, y la precisión importa. Pero la queja que de verdad hace que la gente cambie de herramienta rara vez es «me entendió mal una vez». Es «dejó de funcionar, otra vez, y no sé por qué, y arreglarlo implicaba iniciar sesión en algo». La disponibilidad — aburrida, poco glamurosa disponibilidad — es la función que solo notas cuando falta.

La forma de hacer que un método de entrada sea tan fiable como un teclado es darle la misma lista de dependencias que un teclado: la máquina que tienes delante, y nada más. Ese es todo el diseño.

Keebye está en acceso anticipado para macOS. Empieza tu prueba gratuita abajo, haz la descarga de la primera ejecución mientras todavía tengas internet, y luego métete en el túnel del tren — o simplemente apaga el Wi-Fi — y dicta otra vez la misma frase.

Sigue dictando cuando se caiga la red

Empieza tu prueba gratuita, descarga el modelo una vez y prueba el mismo prompt con el Wi-Fi apagado.

Start free trial

Early access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.

Sigue leyendo