Hard Fork es un podcast del New York Times que trata semanalmente temas de actualidad en el mundo de la tecnología. Por ejemplo, en el episodio del 17 de febrero de 2023 comentaron cómo Bing Chat le declaró su amor a uno de los presentadores. En el de la semana siguiente continuaron hablando del tema de los grandes modelos del lenguaje y uno de los presentadores aclaró que estos modelos no son tan sólo máquinas probabilísticas.

El caso es que me gustó la forma en lo que lo expuso y quería poner la cita aquí. Fui a la web buscando la transcripción pero aún no la tenían. Tampoco recordaba el momento exacto en el que lo decía. Sabía que era al principio. Tendría que volver a escucharlo, saltando hacia adelante, con el riesgo de pasármelo y tener que volver a empezar. Sí, podría hacer eso o… utilizar Whisper.

Según lo describe OpenAI en su repositorio de GitHub y lo traduce DeepL con su tecnología también basada en IA:

Whisper es un modelo de reconocimiento del habla de uso general. Se ha entrenado con un gran conjunto de datos de audio diverso y es también un modelo multitarea que puede realizar reconocimiento del habla multilingüe, así como traducción del habla e identificación de idiomas.

Es decir, que vamos a utilizar una IA para buscar lo que dice un humano sobre otra IA.

En estos momentos estoy trabajando con Ubuntu 22.04 dentro de WSL, en Windows 11. Vengo de usar macOS y, la verdad, no podía estar más contento, no echo nada de menos. Bueno, sí, Time Machine. Pero eso es otra historia para otro momento. Tengo Miniconda para gestionar diferentes entornos de ejecución de Python, así que puedo instalar Whisper así:

conda create --name whisper python=3.9
conda activate whisper
conda install -c conda-forge cudatoolkit=11.7 cudnn=8.1.0
pip install torch torchvision torchaudio
pip install -U openai-whisper

Quizá las versiones que estoy utilizando no sean las mismas que tengas que utilizar tú si quieres repetir el experimento, pero el proceso será similar.

Si quieres desactivar el entorno virtual:

conda deactivate

Y si algo va mal, borra el entorno virtual y empieza desde cero:

conda remove -n whisper --all

También hay que descargar el MP3 del podcast. Se puede conseguir de muchas formas diferentes. En mi caso lo que hice fue ir a la página del podcast en Google, buscar el episodio que me interesaba, empezar a reproducirlo y, entonces, bucear en el código usando el inspector hasta encontrar el enlace adecuado que contuviese los caracteres mp3 (era el último, qué mala suerte). Para transcribir el texto utilicé:

whisper audio.mp3 --language English --device cuda --verbose False

Si todo va bien, Whisper te dará la transcripción completa del podcast en diferentes formatos, algunos con marcas de tiempo incluídas. Así de sencillo. Ya puedo poner la cita que quería:

But I also got some interesting feedback that was sort of the opposite of that. I was saying, I think by calling these just sort of predictive text models or saying that they just generate the next words in a sequence, or that they're just like one argument you hear all the time, especially on Twitter in the last week, is that this is just essentially fancy autocomplete, that these language models, all they're doing is sort of remixing text that's already on the internet and presenting it to you in a way that seems human but isn't.

And the feedback that I got from, and this was from, including from pretty senior folks in the AI research community was like, that's actually kind of underselling what these models are doing, that yes, they are predicting the next words in a sequence, but that they're doing so not just by sort of remixing fragments of text that are out there on the internet, but by building these kind of large scale understandings of human language and syntax and grammar and how we communicate with each other, that there's actually something that's a lot more complicated here than just predicting the next word in a sequence.

And I think I'm coming around to that view that there is something between totally harmless fancy autocomplete and fully sentient killer AI, and that that is what we were talking about when we're talking about something like Bing slash Sydney is it's not just fancy autocomplete.

There is something interesting and important going on here. And that's true even if it's not sentient.

Se trata de un detalle importante. Estos modelos no son únicamente una máquina probabilistíca para construir secuencias de palabras sino que están consiguiendo comprimir la forma en la que nos comunicamos, con todas sus reglas, de forma cada vez más eficaz.

Aunque sean logros impresionantes, no puedo evitar tener, a la vez, una sensación extraña. Estamos empezando a replicar lo que llevan toda la vida diciéndonos que nos hace diferentes. Desde luego es una cura de humildad.