Limpieza y diccionario
Qué le pasa a tu transcripción entre la voz a texto y la inserción: el diccionario, la limpieza basada en reglas, las excepciones por app y el pulido opcional con LLM local.
Cada dictado pasa por la misma cadena corta en tu Mac. Nada de esto usa la red.
La cadena
Voz a texto con el motor seleccionado.
Reemplazos del diccionario personalizado, siempre se aplican.
Limpieza — basada en reglas, o con el LLM local si lo has activado — solo cuando la limpieza está activada para la app en primer plano.
Inserción por pegado o por tecleo.
Limpieza basada en reglas
Este es el conjunto completo de reglas. La limpieza no elimina arranques fallidos ni la palabra "like".
- Elimina "um", "uh" y "erm" cuando van sueltos, y el "you know" de dos palabras, siempre como tokens completos.
- Colapsa las repeticiones inmediatas de una palabra, así que "the the" pasa a "the".
- Colapsa los espacios en blanco.
- Pone la primera letra en mayúscula.
- Añade un punto si el texto termina en letra o dígito.
Excepciones por app
Settings › Enhancement › "Clean up transcripts by default" está activado. Las excepciones se guardan por el bundle id de la app. "Add current app…" añade la última app que no fuera Keebye que hayas usado, con el valor contrario al de por defecto. Cada entrada tiene una casilla y un botón "Remove".
Diccionario personalizado
Settings › Dictionary: "Replace spoken words with fixed spellings." Escribe lo que Keebye oye en "heard as…" y la grafía que quieres en "write as…", y pulsa Add (Enter también funciona). Remove borra una entrada. El estado vacío dice "No replacements yet."
- Coincide solo con palabras completas, nunca dentro de una palabra más larga.
- La coincidencia no distingue mayúsculas de minúsculas; el reemplazo conserva las mayúsculas que escribiste.
- Las claves pueden tener varias palabras. Gana la coincidencia más larga.
- Se aplica a todos los dictados, esté o no activada la limpieza para la app.
Pulido con LLM local (opcional)
Keebye puede pasar la transcripción a un modelo de lenguaje local en lugar de la limpieza basada en reglas. El modelo es Qwen3-1.7B (Q4_K_M GGUF, unos 1,28 GB) ejecutado con llama.cpp y Metal. Usa muestreo greedy con el razonamiento desactivado, un límite de 64 tokens y un plazo de 2 segundos. Cualquier fallo cae de vuelta a la limpieza basada en reglas.
Una salvaguarda de fidelidad revisa la salida del LLM antes de usarla: debe conservar al menos la mitad de las apariciones de palabras de la entrada, no superar el doble del número de palabras de la entrada más cuatro, no contener ninguna frase ni secuencia de cuatro palabras repetida tres veces o más, y no estar vacía. Si no, la salida del LLM se descarta.