Susurros del futuro modular de AI
Por James Somers
Un día, a fines de diciembre, descargué un programa llamado Whisper.cpp en mi computadora portátil, con la esperanza de usarlo para transcribir una entrevista que había hecho. Le di un archivo de audio y, cada pocos segundos, producía una o dos líneas de transcripción inquietantemente precisa, escribiendo exactamente lo que se había dicho con una precisión que nunca antes había visto. A medida que se acumulaban las líneas, podía sentir que mi computadora se calentaba más. Esta fue una de las pocas veces en la memoria reciente que mi computadora portátil realmente calculó algo complicado; la mayoría de las veces solo la uso para navegar por Internet, mirar televisión y escribir. Ahora estaba ejecutando IA de vanguardia
A pesar de ser uno de los programas más sofisticados que jamás haya ejecutado en mi computadora portátil, Whisper.cpp también es uno de los más simples. Si mostrara su código fuente a los investigadores de IA desde los primeros días del reconocimiento de voz, podrían reírse de incredulidad o llorar; sería como revelarle a un físico nuclear que el proceso para lograr la fusión fría se puede escribir en una servilleta. Whisper.cpp es inteligencia destilada. Es raro que el software moderno no tenga prácticamente dependencias; en otras palabras, funciona sin la ayuda de otros programas. En cambio, son diez mil líneas de código independiente, la mayoría de las cuales hace poco más que aritmética bastante complicada. Fue escrito en cinco días por Georgi Gerganov, un programador búlgaro que, por su propia admisión, no sabe casi nada sobre reconocimiento de voz. Gerganov lo adaptó de un programa llamado Whisper, lanzado en septiembre por OpenAI, la misma organización detrás de ChatGPT y DALL-E. Whisper transcribe el habla en más de noventa idiomas. En algunos de ellos, el software es capaz de un rendimiento sobrehumano, es decir, en realidad puede analizar lo que alguien dice mejor que un ser humano.
Lo que es tan inusual acerca de Whisper es que OpenAI lo abrió, liberando no solo el código sino también una descripción detallada de su arquitectura. También incluyeron los "pesos del modelo" de suma importancia: un archivo gigante de números que especifican la fuerza sináptica de cada conexión en la red neuronal del software. Al hacerlo, OpenAI hizo posible que cualquiera, incluido un aficionado como Gerganov, modificara el programa. Gerganov convirtió Whisper a C++, un lenguaje de programación ampliamente compatible, para que sea más fácil de descargar y ejecutar en prácticamente cualquier dispositivo. Esto suena como un detalle logístico, pero en realidad es la marca de un cambio radical más amplio. Hasta hace poco, las IA líderes en el mundo, como Whisper, eran competencia exclusiva de las grandes empresas tecnológicas que las desarrollaron. Existían detrás de escena, potenciando sutilmente los resultados de búsqueda, las recomendaciones, los asistentes de chat y similares. Si se ha permitido que personas ajenas los usen directamente, su uso ha sido medido y controlado.
Ha habido algunas otras IA de código abierto en los últimos años, pero la mayoría de ellas han sido desarrolladas por proyectos patentados de ingeniería inversa. LeelaZero, un motor de ajedrez, es una versión colaborativa de AlphaZero de DeepMind, el mejor jugador de computadora del mundo; Debido a que DeepMind no lanzó los pesos modelo de AlphaZero, LeelaZero tuvo que ser entrenado desde cero por usuarios individuales, una estrategia que solo era viable porque el programa podía aprender jugando al ajedrez contra sí mismo. De manera similar, Stable Diffusion, que evoca imágenes a partir de descripciones, es un clon muy popular de DALL-E de OpenAI e Imagen de Google, pero entrenado con datos disponibles públicamente. Whisper puede ser la primera IA de esta clase que simplemente se regaló al público. En una era de software basado en la nube, cuando todos nuestros programas se alquilan esencialmente a las empresas que los fabrican, me parece un tanto electrizante que, ahora que descargué Whisper.cpp, nadie me lo pueda quitar. ni siquiera Gerganov. Su pequeño programa ha transformado mi computadora portátil de un dispositivo que accede a la IA a una especie de máquina inteligente en sí misma.
Hubo un tiempo en que los investigadores creían que el reconocimiento de voz a nivel humano podría ser "inteligencia artificial", su forma de describir un problema que era tan difícil que solo podía resolverse cuando las computadoras poseían inteligencia general. La idea era que había suficiente ambigüedad en el lenguaje hablado como para que la única forma de analizarlo fuera entendiendo realmente lo que querían decir los hablantes. La semana pasada, escuché algo en la radio que podría haber sonado, en una computadora, como "¿Puedes levantar un Ford?" Pero mi cerebro, conociendo el contexto de la conversación, lo resolvió a la perfección como "¿Puede Ucrania permitirse el lujo?". Los problemas de significado y contexto aseguraron que, durante décadas, el reconocimiento de voz se considerara una vara de medir para el campo de la IA en su conjunto. La única manera de entender el habla, decía el pensamiento, era entenderlo realmente.
En un influyente ensayo de 2019, el investigador de IA Richard Sutton explica que los primeros programas de reconocimiento de voz estaban repletos de conocimientos lingüísticos especializados, no solo sobre sintaxis, gramática y fonética, sino también sobre cómo la forma de la boca humana restringía los sonidos posibles. A pesar de su sofisticación, estos programas no funcionaron muy bien. En la década de 1970, hubo un giro hacia los métodos estadísticos, que abandonaron el conocimiento experto en favor de los patrones aprendidos de los datos, por ejemplo, sobre qué sonidos y palabras tendían a ir juntos. El éxito de ese enfoque se extendió al resto de la IA, lo que llevó al campo a centrar gran parte de su esfuerzo en estadísticas extraídas de grandes cantidades de datos. La estrategia dio sus frutos: en 1990, el estado del arte para el reconocimiento de voz del consumidor era un programa llamado DragonDictate, que funcionaba en tiempo real. Pero Dragon requería que los usuarios pronunciaran claramente y hicieran pausas entre cada palabra, y costaba nueve mil dólares. Una mejora importante se produjo en 1997, cuando la misma empresa lanzó Dragon NaturallySpeaking. Ya no tenías que hacer una pausa al hablar con él. Aún así, la precisión en el habla verdaderamente fluida o acentuada o técnica fue relativamente pobre. Recuerdo a mi padrino, uno de los pioneros perennes, mostrando el sistema de reconocimiento de voz en su automóvil en esta época; lo usó para llamar a casa desde el teléfono del coche. Habría sido más fácil marcar.
Los programas de reconocimiento de voz todavía eran demasiado defectuosos para ser perfectos. Fue una pérdida de tiempo corregir sus errores. Y, sin embargo, seguían siendo abrumadoramente complejos. Un libro de texto de 1999, que describía un sistema de reconocimiento de voz de última generación similar a Dragon NaturallySpeaking, tenía más de cuatrocientas páginas; para entenderlo, uno tenía que dominar matemáticas complicadas que a veces eran específicas del sonido: modelos ocultos de Markov, análisis espectral y algo llamado "compensación cepstral". El libro venía con un CD-ROM que contenía treinta mil líneas de código, muchas de ellas dedicadas a los caprichos del habla y el sonido. En su adopción de las estadísticas, el reconocimiento de voz se había convertido en un campo profundo y difícil. Parecía que el progreso vendría ahora solo de forma incremental, y con un dolor creciente.
Pero, de hecho, sucedió todo lo contrario. Como lo expresó Sutton en su ensayo de 2019, setenta años de investigación en IA revelaron que "los métodos generales que aprovechan la computación son, en última instancia, los más efectivos y por un amplio margen". Sutton llamó a esto "la lección amarga": era amarga porque había algo molesto en el hecho de que incluir más inteligencia y arcanos técnicos en los programas de IA no solo no era esencial para el progreso, sino que en realidad era un impedimento. Era mejor tener un programa más simple que supiera cómo aprender, ejecutándose en una computadora rápida, y encargarle que resolviera un problema complicado por sí mismo. La lección tenía que volver a aprenderse, escribió Sutton, porque meter todo lo que sabías en una IA a menudo producía mejoras a corto plazo al principio. Con cada nuevo conocimiento, su programa mejoraría marginalmente, pero, a la larga, la complejidad añadida dificultaría encontrar el camino hacia un progreso más rápido. Los métodos que dieron un paso atrás y eliminaron el conocimiento experto en favor del cálculo en bruto siempre ganaron. Sutton concluyó que el objetivo de la investigación de la IA debería ser crear "agentes que puedan descubrir como nosotros" en lugar de programas "que contengan lo que hemos descubierto". En los últimos años, los investigadores de IA parecen haber aprendido la amarga lección de una vez por todas. El resultado ha sido un desfile de asombrosos nuevos programas.
Desde que tuve cintas para mecanografiar, conferencias para transcribir, entrevistas para escribir, soñé con un programa que lo hiciera por mí. El proceso de transcripción tomó tanto tiempo, requiriendo tantos pequeños rebobinados, que mis manos y mi espalda se acalambraban. Como periodista, saber lo que me esperaba probablemente distorsionó mis reportajes: en lugar de conocer a alguien en persona con una grabadora, a menudo parecía más fácil simplemente hablar por teléfono, escribiendo las partes buenas en el momento. Hace unos cinco años, con una mezcla de vergüenza y alivio, comencé a pagarle a otras personas para que hicieran transcripciones por mí. Usé un servicio llamado Rev, que subcontrató el trabajo y tomó una parte. Era caro, alrededor de cien dólares por una sola entrevista, pero el precio atestiguaba la mano de obra involucrada. Rev tenía una opción de IA mucho más barata, pero, al igual que otros programas de transcripción que había probado, era lo suficientemente inexacto como para ser una molestia. Parecía que pasarías más tiempo corrigiendo la mala transcripción que solo tipeándola tú mismo.
Hace un año y medio, escuché sobre un servicio llamado Otter.AI, que era mucho mejor que todo lo que había antes, como para sugerir una diferencia de tipo. No era bueno en la puntuación, y aún tenía que corregirlo aquí y allá, pero fue el primer programa de transcripción que hizo innecesaria la tediosa reescucha. Me impresionó tanto que se convirtió en una parte habitual de mi flujo de trabajo. Un problema que alguna vez fue imposible parecía estar en la etapa casi completa.
A fines del año pasado, cuando Whisper apareció de la nada, resolvió mi problema para siempre. Whisper es básicamente tan competente como yo en la transcripción. El programa capta la jerga sutil, manejando palabras cuyos sonidos pueden confundirse fácilmente con los de otras palabras; por ejemplo, escucha correctamente a un ingeniero mecánico que dice: "Tomará tiempo CAD esto", incluso mayúsculas "CAD", un acrónimo de "diseño asistido por computadora", correctamente. Averigua cómo puntuar las autointerrupciones de una persona, como en "Casi vamos a enviar. Estamos a punto de enviar el próximo". Es gratis, se ejecuta en mi computadora portátil y es conceptualmente más simple, por asomo, que cualquier cosa anterior.
Hace casi una década, escribí un ensayo preguntándome qué pasaría si la transcripción del habla se volviera verdaderamente omnipresente. Por un lado, parece probable que veamos mucho más dictado. (Ya, aunque hablar con mi teléfono se siente poco natural, me encuentro haciéndolo cada vez más). Una vez que la tecnología alcanza un cierto nivel de calidad, la tarea del reportero judicial podría desaparecer; los archivistas podrían regocijarse cuando las grabaciones de discursos, reuniones, declaraciones y transmisiones de radio de hace mucho tiempo se pudieran buscar. Podría haber cambios aún mayores: hablamos mucho y casi todo se va al éter. ¿Qué pasaría si la gente grabara las conversaciones de manera rutinaria, hiciera transcripciones y las consultara de la misma forma en que ahora miramos hacia atrás a los mensajes de texto o correos electrónicos antiguos? Hay algo que me atrae en acumular charlas; hablar es fácilmente mi actividad favorita, y me encanta la idea de honrarla guardándola. Pero luego piensa en los anunciantes que pagan generosamente para examinar las menciones de sus marcas en una conversación natural. Te imaginas perder un amigo o un trabajo por un comentario estúpido. Realmente, la perspectiva es aterradora.
La historia de Whisper revela mucho sobre la historia de la IA y hacia dónde se dirige. Cuando una pieza de software es de código abierto, puede adaptarla a sus propios fines (es una caja de Legos en lugar de un juguete completamente formado) y el software que es flexible es notablemente duradero. En 1976, el programador Richard Stallman creó un programa de edición de texto llamado Emacs que todavía es muy popular entre los desarrolladores de software en la actualidad. Lo uso no solo para programar sino también para escribir: debido a que es de código abierto, he podido modificarlo para ayudarme a administrar las notas de mis artículos. Adapté el código que alguien había adaptado de otra persona, que lo había adaptado de otra persona: una cadena de retoques que se remontaba a Stallman.
Ya estamos viendo que sucede algo similar con Whisper. Un amigo mío, cineasta y desarrollador de software, ha escrito un envoltorio delgado alrededor de la herramienta que transcribe todos los archivos de audio y video en un proyecto documental para que le resulte más fácil encontrar extractos de entrevistas. Otros han creado programas que transcriben transmisiones de Twitch y videos de YouTube, o que funcionan como asistentes de voz privados en sus teléfonos. Un grupo de codificadores intenta enseñar a la herramienta a anotar quién habla. Gerganov, quien desarrolló Whisper.cpp, ha creado recientemente una versión basada en Web, para que los usuarios no tengan que descargar nada.
El reconocimiento de voz casi perfecto se ha convertido no solo en una aplicación, sino en un componente básico para las aplicaciones. Tan pronto como esto sucede, las cosas se mueven muy rápido. Cuando salió el programa de texto a imagen de OpenAI, DALL-E, causó sensación, pero esto no fue nada comparado con la ráfaga de actividad iniciada por su clon de código abierto, Stable Diffusion. DALL-E utilizó un modelo "freemium", en el que los usuarios podían pagar por imágenes adicionales y nadie podía modificar su código; generalmente demostró ser más potente y preciso que Stable Diffusion, porque fue entrenado en montañas de datos propietarios. Pero se ha visto obligado a competir con una gran cantidad y variedad de adaptaciones, complementos y remixes provenientes de la comunidad de código abierto. En cuestión de semanas, los usuarios habían adaptado Stable Diffusion para crear un modo de "imagen a imagen", en el que podían decirle al programa que modificara una imagen existente con un mensaje de texto. Al invocar repetidamente este modo, se hizo posible un nuevo método de ilustración, en el que un usuario podía componer iterativamente una imagen con palabras, como si estuviera mandando a un artista robot infinitamente paciente.
Esta apertura, más que cualquier avance específico en capacidades, está definiendo el momento actual en AI ChatGPT, el chatbot conversacional de OpenAI, es emocionante no porque sea particularmente inteligente, a menudo es una fuente de tonterías o banalidades, sino porque cualquier inteligencia que haga have está ahí, para que cualquiera lo use en cualquier momento. La disponibilidad del programa es quizás su característica más importante, ya que permite que la gente común descubra para qué sirve. Aun así, ChatGPT aún no está tan abierto como Whisper. Debido a que la escritura automatizada es tan potencialmente valiosa, OpenAI tiene interés en controlarla estrictamente; la compañía cobra por una versión premium, y sin duda pronto aparecerá un ecosistema de aplicaciones con fines de lucro que hacen poco más que envolver ChatGPT.
Eventualmente, sin embargo, alguien lanzará un programa que es casi tan capaz como ChatGPT y completamente de código abierto. Un aficionado emprendedor encontrará la manera de hacerlo funcionar gratis en su computadora portátil. La gente comenzará a descargarlo, remezclarlo, conectarlo, repensar y reimaginar. Las capacidades de la IA chocarán con nuestra inteligencia colectiva. Y el mundo comenzará a cambiar de formas que aún no podemos predecir. ♦