(El bueno) 2021LM – Sobre la traducción con IA (I)

Crónica de mis problemas al usar un software de traducción con IA. Desde fallos con LLMs locales hasta errores con la API de Gemini. Una historia de bugs.

Este texto ha sido generado por Gemini 2.5/3.1 a partir del audio del autor. El contenido y las ideas son íntegramente del autor; la redacción ha sido asistida por IA.


¿Qué pasa, gallinicas mías? Aquí vuestro reportero más dicharachero de barrio Sésamo, grabando este audio directamente desde un S24 Ultra. ¿La razón? Pues que a uno se le olvidó poner a cargar el iPhone anoche y esta mañana andaba con la batería justa para ir a la compra. Ya sabéis que los viernes no trabajo, así que me tocaba a mí hacer los recados del fin de semana.

La cosa es que tuve que ir dos veces. La primera fui demasiado temprano y, claro, Inconveniente me recordó que faltaban las tortas para los burritos. Así que, vuelta al súper. Y fue justo ahí, en mitad del segundo viaje, cuando me di cuenta del percal de la batería. Menos mal que los iPhone son como son: te dicen que no tienen batería, pero con un 1% aguantan medio día. Una pequeña odisea matutina que no era más que el preludio de la odisea tecnológica que os vengo a contar.

Porque, como siempre, primero viene el hype, la expectación, y luego llega el tío de la rebaja. Hoy os voy a hablar de una aplicación de traducción que, sinceramente, tiene más pegas que un colegio en septiembre. Pero antes, un pequeño inciso.

Paréntesis Kafkiano: Una Charla con Gemini

Próximamente vais a ver un par de «pataticas» (mis pequeños experimentos sonoros) muy estrambóticos, creados con Notebook LM de Google. Resulta que el otro día, mientras esperaba una llamada, me lié en una conversación surrealista con Gemini. Empecé preguntando por la constante de la gravitación universal y terminamos debatiendo sobre el sentido de la vida. Una locura.

Publicaré la conversación completa en mi blog, rfog.es, para que veáis lo kafkiano que puede llegar a ser un LLM cuando está de dulce. Y que conste, para los que se quejan, que a mí Gemini me está funcionando de cojones, tanto en lo personal como en el trabajo. Sin ir más lejos, el otro día me salvó el culo con una API REST. Estaba convencido de que el fallo era del servidor, pero Gemini me generó un script curl y encontró el problema en mi código: un valor que, según la documentación, tenía que ser ‘1’ aleatoriamente. ¡Toma ya!

La Herramienta de Traducción: Un Pozo de Problemas

Volvamos al lío. El programa de traducción del que os hablaba es un desastre. Para empezar, se queda colgado sin motivo aparente. Simplemente se para, sin errores en el log ni nada. Sospecho que se queda esperando una respuesta del LLM local que nunca llega, y la única solución es matar el proceso del navegador y todas las consolas abiertas. Un simple reinicio no basta, hay que aniquilarlo todo.

Pensé que podría ser culpa de mi LLM local. Aunque uso un modelo potente de 7 u 8 billones de parámetros, a veces falla diciendo que los placeholders no funcionan bien y que necesitaría un modelo superior. Probé con uno de 109 billones de parámetros y… el mismo fallo. El problema no es el modelo; es el software que no recoge bien la respuesta, porque yo veo en la consola de LM Studio que la respuesta se ha generado. Un bug de esos que los barbudos dejan para el final por lo complicados que son.

Plan B: ¿Y si Pagamos por la API de Gemini?

Cansado del LLM local, decidí probar con la API de Google. Me generé un token y a correr. El primer modelo de Gemini que probé estaba obsoleto. ¿Me avisó el programa? No. Tuve que descubrirlo yo mirando la consola después de media hora. El segundo modelo que elegí, más moderno, daba otro error críptico en un campo que impedía su uso. De nuevo, cero feedback en la interfaz.

Finalmente, con Gemini 1.5 Lite, la cosa empezó a funcionar. ¡Aleluya! Pero la alegría duró dos minutos. La API empezó a devolver mensajes de «estoy muy ocupado, prueba en otro momento». ¡Pero si estoy pagando tokens, coño! Me da igual que tardes más o menos, ¡estoy gastando dinero! ¿Encima de que pago, no funciona? Venga, hombre, no me toques los cojones.

Victoria Pírrica y Fallos Inexcusables

Tras un sinfín de arranques, paradas y «mataciones» de procesos, conseguí traducir una revista de ciencia ficción de 200 páginas (lo que equivale a un libro de 400). El coste fue ridículo, unos 50 céntimos. Pero el proceso fue un infierno. El programa no reintenta bien los fallos y, para colmo, no hace algo tan básico como cambiar la etiqueta de idioma en los archivos XHTML de ‘en’ a ‘es’, lo que rompe la separación de sílabas y otras funciones en los lectores de eBooks.

Podría forquear el proyecto, que es Python, y arreglarlo. ¿Ganas? Pocas, o ninguna. Si tengo que hacerlo, me monto yo mi propia herramienta en C# y me aseguro de gestionar bien los errores. Como dice mi jefe, el 80% del desarrollo lo haces enseguida. Del 20% restante, el 10% cuesta bastante, el 5% cuesta mucho, y el último 5% es ese grano en el culo que no te deja sentarte durante semanas. Este programa se quedó en el 80%.

Sinceramente, ¿qué se puede esperar de Python? Esta mierda y esta basura. Tienes que estar encima constantemente. Y para eso, pues ya me diréis. En fin, no olvidéis esos hechos habitualizaros y recordad los «pataticas» kafkianos que se vienen.

¡Que no os la pique un pollo belga! Ademonio.

IA a céntimos y el misterio del Mac Studio sin internet

Descubre cómo he revolucionado mi blog con IA por céntimos y resuelve conmigo el misterio que dejó mi Mac Studio sin conexión a la red por culpa de Tailscale.

Este texto ha sido generado por Gemini 2.5/3.1 a partir del audio del autor. El contenido y las ideas son íntegramente del autor; la redacción ha sido asistida por IA.


¿Qué pasa, gallinicas mías? Aquí vuestro reportero más dicharachero para contaros un par de batallas. Si habéis seguido las últimas entradas del blog, habréis notado un cambio de calidad más que absoluto en los textos generados a partir de los audios. Antes de desvelar el secreto detrás de esta mejora, permitidme que os cuente una de esas historias del abuelo Cebolleta que tanto nos gustan.

Una historia de terror en la red: Cuando el Mac Studio se negó a conectar

Desde hace varios días, mi Mac Studio sufría una conexión de red terriblemente lenta. No hablo de un pequeño lag, sino de una velocidad de entre 1 y 2 kilobytes por segundo. La situación llegó a un punto crítico este domingo por la tarde, cuando la red local dejó de funcionar por completo. Olvidaos de internet; ni siquiera podía comunicarme con mi Synology. El Synology Drive iba a paso de tortuga y compartir la pantalla con el Mac Mini en alta calidad era una misión imposible, a pesar de que todo está conectado por cable a través del router y switches.

Bastante mosqueado, empecé el ritual de solución de problemas: revisé las prioridades de red, desconecté y conecté el WiFi, cambié los cables de red entre el Mac Mini y el Mac Studio, conecté el equipo directamente al router… Nada. El rendimiento de la red del Mac Studio era, sencillamente, asqueroso. Me negaba en rotundo a reinstalar macOS otra vez, así que estaba a punto de tirar la toalla.

En un acto de desesperación, le pregunté a Gemini, que me dio una serie de pasos estructurados para encontrar la solución. Aunque ninguna de sus sugerencias directas funcionó, me pusieron en el camino correcto. Mientras investigaba, mi subconsciente me gritaba que mirara algo que tenía delante de las narices. Y de repente, lo vi: ¿qué demonios hacía la VPN de Tailscale activada sin ningún icono en la barra de menús?

Fue hacer clic en «desactivar» y, como por arte de magia, todo volvió a la vida. Las ventanas que cargaban con una lentitud exasperante hicieron «frrrr, roca» y la velocidad se disparó de nuevo a los 800 Mbps. El culpable era el maldito Tailscale. Según me confirmó Gemini, es un problema que puede ocurrir, sobre todo si se activa el «exit node». Parece que se enreda con las IPs locales (las del tipo 100.x.x.x) y no es capaz de resolver las DNS correctamente, colapsando toda la conexión.

La solución fue drástica pero necesaria. Desinstalé Tailscale del NAS, para lo cual tuve que activar momentáneamente el acceso SSH, ejecutar los comandos de borrado y volver a desactivarlo. Hice lo mismo en el Mac y en el iPhone, y para rematar, entré en la web de Tailscale y eliminé toda mi configuración. No quiero que dentro de una semana se reactive solo y me vuelva a dejar tirado. Así que, una y no más, Santo Tomás. Y si ahora sale el de siempre a decir «pues a mí me va bien», le diré: cojonudo para ti.

El dilema: ¿IA local o en la nube? Un análisis de costes

Ahora sí, vamos al meollo del asunto: el salto de calidad en las entradas del blog. Todo empezó con un profundo estudio económico. Estuve barajando la idea de comprar un nuevo Mac Studio con 128 GB de RAM y 4 TB de disco duro para ejecutar modelos de IA en local. El capricho, entregando mi equipo actual, se iba a unos 5.000 euros.

Haciendo números, si mi gasto actual en tokens de API es de unos 20 euros al mes, necesitaría 20 años para amortizar esos 5.000 euros. Como bien me dijo Gemini, «cuando pasen los 20 años, ese Mac Studio será un pisapapeles muy caro que fue muy caro en su momento». La lógica era aplastante, así que decidí optimizar mi flujo de trabajo usando APIs online.

Mi nuevo flujo de trabajo y el ridículo coste de la calidad

Mi proceso ahora es un híbrido. La eliminación de ruido del audio la hago con una red neuronal en local, que es prácticamente instantánea. La transcripción también la realizo en local, aunque curiosamente en el Mac Studio va superlenta, mientras que en mi viejo iMac Intel es siete veces más rápida. El paso final, la creación del texto del blog, es donde entra en juego la API de Gemini.

Para que os hagáis una idea, he procesado tres podcasts con este nuevo sistema, incluyendo la reescritura de la entrada sobre Roma y una nueva sobre otro libro. El consumo total fue de 19.000 tokens. ¿El coste? Preparaos: cuatro céntimos de euro. Por cuatro céntimos, estoy obteniendo una calidad de texto espectacular, y eso que podría usar un modelo más caro. Me he puesto un límite de 10 euros al mes para esto, y a este ritmo, me va a durar meses.

También exploré los costes de traducción. Una traducción decente para uso interno sale por un euro y medio cada 100.000 palabras, lo que equivale a un libro de 200-300 páginas. Gemini me calculó que traducir una obra como Guerra y Paz (que, de forma un poco inquietante, sabía que estaba leyendo en papel) costaría entre 8 y 10 euros. Luego caí en la cuenta de que lo sabía porque se lo mencioné en una de las transcripciones que le pasé para analizar. ¡Qué memoria tiene el bicho!

La IA, la traducción y una imitación fallida de Dune

Hablando de traducir, no creo que vaya a usar la API para traducir 200 libros al mes. Normalmente leo en inglés, pero hace poco traduje la novela El Imperio del Silencio porque su estilo de escritura me resultaba extraño y no lograba concentrarme. Más tarde descubrí que la comunidad de fans ya había traducido toda la saga.

Aunque dicen que es como Dune, mi opinión es muy distinta. Intenta imitar ese tono místico-mesiánico, pero no se le acerca ni a la suela de los zapatos. Me resulta aburrida y demasiado explicativa. El autor te cuenta la historia dos veces: primero narra la acción y luego te detalla el proceso interno de decisión del personaje. Es redundante y no termina de cuajarme.

En fin, el futuro pasa por seguir afinando este sistema. Quizás el próximo paso sea usar una voz sintética para limpiar las grabaciones de repeticiones y muletillas, pero eso ya será para otra reencarnación. Por ahora, el salto cualitativo y económico es innegable.

Así que ya sabéis, no olvidéis sospechosos habitualizaros, que no os la pique un pollo belga. ¡A demonio demoníaco!