Llms

Una lectura muy esclarecedora sobre la prelación entre ciencia e ingeniería

Hay gente que discute a veces sobre cuál es el carro y cuál es el burro en el binomio ciencia-ingeniería. Mi opinión al respecto es irrelevante porque no va a cambiar nunca nada en ninguna parte. Pero aquél que quiera asentar la suya, debería leer con atención y desde esa perspectiva Will We Ever Get Fusion Power?.

Lectura de la que extraigo (y, por el camino, traduzco):

El entusiasmo por los tokamaks coincidió con un alejamiento de la teoría y un retorno a la investigación basada en el “constrúyelo y mira a ver qué aprendes”. Nadie sabía realmente por qué los tokamaks lograban resultados tan impresionantes. Los soviéticos no progresaron desarrollando un fundamento teórico sólido, sino simplemente siguiendo lo que parecía funcionar sin entender por qué. En lugar de un modelo detallado del comportamiento subyacente del plasma, el progreso en la fusión comenzó a producirse mediante la aplicación de “leyes de escala”, relaciones empíricas entre el tamaño y la forma de un tokamak y varias medidas de rendimiento. Los tokamaks más grandes funcionaban mejor: cuanto mayor el tokamak, más grande era la nube de plasma y más tiempo tardaba una partícula de esa nube en escapar de la zona de contención. De duplicarse el radio del tokamak, el tiempo de confinamiento podía cuatriplicarse. Con tantos tokamaks de diferentes configuraciones en construcción, los contornos de estas leyes de escala iban a poder explorarse en profundidad: cómo variaban con la forma, la fuerza del campo magnético y otros innumerables variables.

Estimaciones, intervalos de confianza y todas esas cosas... ¿qué significan realmente?

Hace unos años argumenté sobre estimaciones e intervalos de confianza alrededor de

Speed of light

que muestra estimaciones históricas de la velocidad de la luz. Pero

Lifetime neutron

(extraído de aquí) es todavía mucho más jugoso:

  • Por un lado, como en el otro caso, ¿qué significan realmente los intervalos de confianza?
  • Pero, además, las estimaciones se arraciman en el tiempo, y eso refleja… ¿dependencia de la tecnología disponible en el tiempo? ¿Estimaciones rebaño?

Muy instructivo sobre la verdad de las cosas.

Pero, ¿cuánto consumen los LLMs?

I.

En los años 50 y 60 se hicieron muchas predicciones acerca de cómo sería el mundo de hoy. Eran los años en que se popularizó la ciencia ficción y, además, el cambio de milenio estaba a la vuelta de la esquina.

Puede que alguien se sienta tentado de recopilar predicciones —y elucubraciones— sobre innovaciones técnicas realizadas en esa época y analizar su grado de acierto. Que sepa que llega tarde. Un análisis de ese tipo aparece en (el muy extravagante libro) Where Is My Flying Car?: A Memoir of Future Past. Si uno realizase un análisis discriminante con el objetivo de separar ambas clases —las tecnologías de las que hoy disponemos de las que siguen siendo una ensoñación— observaría que la variable más relevante es la intensidad del uso de la energía: no viajamos regularmente a la luna o nos desplazamos en coches voladores: eso consume mucha energía; sin embargo, realizamos videollamadas y tenemos a un click de distancia prácticamente toda la información disponible el mundo: energéticamente, es casi gratis. Dicen que una búsqueda en Google consume 0.3 Wh (o lo hacía en 2011); tendría que hacer más de 300 búsquedas en una hora para gastar en eso más de lo que quemo yo sentado mientras las realizo.

Embeddings, LLMs y algunas de sus aplicaciones a mediados de 2024

I.

Están apareciendo herramientas basadas en LLMs para industrializar la investigación. Tengo recopiladas, por el momento, cuatro: Consensus, Zotero, Elicit, Tavily y FutureSearch. De vez en cuando pruebo Consensus para valorar cómo va mejorando. Y le queda: la última vez, al preguntarle sobre el procedimiento científico para reproducir la dipladenia por esquejes, me sugirió algo así como aplicarle rayos gamma (!).

II.

Unos cuantos enlaces sobre aplicaciones reales —en la economía real— de los LLMs (y los LMMs) en diversas áreas, como el vídeo (vía sora), la música (vía suno), la programación (vía devin) o el RAG y/o Finetuning.

Wolfram sobre los LLMs (y otras cuatro historias relacionadas con el asunto)

I.

Stephen Wolfram ha escrito What Is ChatGPT Doing … and Why Does It Work? explicando el funcionamiento de las redes neuronales en general y de ChatGPT en particular.

Me gusta especialmente: tiene una perspectiva mucho más afín a la mía que la de muchas otras introducciones al asunto que no aciertan a separar como Wolfram los aspectos conceptuales y abstractos de los detalles concretos de la implementación.

Y rescato del texto —¡muy largo!— dos párrafos que pudiera haber escrito yo —e, igual, si reviso, las he escrito realmente—. Sobre las redes neuronales con estructura como las convolucionales, los transformers, etc., dice:

Cortos - LLMs

I.

Mi LLM favorito, el que usaba en mi tinglado doméstico habida cuenta de su precio, calidad y disponibilidad era Mixtral-8x7B-Instruct (del que existen versiones pixeladas que ocupan solo 36GB y corren en local, según esto).

Pero ya no: he migrado a Command-R+.

II.

Obsoleto.

(Aquí había dejado unos días atrás unas notas sobre algo relevante sobre los LLMs para su publicación, pero al revisarlo hoy he visto que ya ha quedado obsoleto.)

III.

Todo sobre el function calling, posiblemente la aplicación más poderosa y con más recorrido de los LLMs.

Más cortos sobre LLMs

I.

Aquí se explica cómo es una mezcla de expertos, la arquitectura detrás de LLMs como Mixtral (el LLM que más uso, sobre todo en APIs). Curiosamente, la arquitectura está basada en ideas de este artículo… ¡de 1991!

II.

Aquí se tratan los LMMs (donde la L de language se ha reemplazado por la M de multimodal). Se dice:

A muy alto nivel, un sistema multimodal consta de los siguientes componentes:

  1. Un codificador para cada modo de datos que genere los embeddings correspondientes.
  2. Un procedimiento para alinear los embeddings de los diferentes modos en el mismo espacio.
  3. [Solo para modelos generativos] Un modelo de lenguaje para generar respuestas textuales. Como las entradas pueden contener tanto texto como elementos visuales, hace falta desarrollar técnicas para condicionar el modelo de lenguaje no solo al texto sino también a los elementos visuales.

El segundo punto me recuerda a lo de aquellos ratones que acordaron ponerle un cascabel al gato.

Cortos (sobre LLMs)

I.

Does GPT-2 Know Your Phone Number? discute dos asuntos distintos:

  • Métodos para identificar y estimar el número de textos literales que aprende un LLM.
  • Un análisis ya irrelevante de cómo afectaba a GPT-2.

Obviamente, quiero que los LLMs sepan recitar literalmente la primera frase del Quijote o la última de Cien años de soledad. Y tal vez no (¿seguro que no?) información confidencial sobre alguien. Entre ambos extremos, ¿dónde está la frontera?

Mi última aplicación de los LLMs en producción

Esta entrada bien podría llamarse también Mi primera aplicación de los LLMs en producción, siendo que ninguna versión falta a la verdad. También es cierto que no es la primera que construyo —pero sin que haya trascendido—; y que hay que cualificar la expresión en producción siendo que corre en mi servidor doméstico y para mis propios fines personales.

Contexto

Estoy industrializando mi proceso de lectura. Central en él es Pocket, una herramienta que permite archivar enlaces y acceder a ellos vía API.

Chocolatada informacional

Supongamos que el vector $u$ codifica cierta información A y el vector $v$ (de la misma dimensión), la información B. Hay quien sostiene que, entonces, el vector $u + v$ codifica simultáneamente A y B. En esta entrada voy a demostrar que la afirmación anterior es falsa. Luego, también, que es cierta. Terminaré explicando por qué el asunto es relevante.

Que es falsa es obvio: si $u$ y $v$ tienen dimensión 1, $u = 2$ y $v = 3$, a partir de la suma $u + v = 5$ es imposible recomponer los vectores originales.

¿Qué precio debería tener una hora de GPU?

Advertencia previa: esta entrada está plusquamcondicionada por la fecha de publicación. Quien aterrice en ella meses o años después, habrá de saber que lo que sigue únicamente tiene, tirando por alto, interés paleontológico.

Alguna vez, para mis experimentos, he alquilado una GPU —técnicamente, he contratado una instancia con GPUs—. Por razones que no vienen al caso, —y esto no es una recomendación de compra— mi proveedor habitual para estas cosas es OVH y los precios de las distintas opciones que ofrece pueden consultarse aquí.

Cuidado con ChatGPT (advertencia núm. 232923423)

I.

Cuando éramos críos e íbamos al colegio, todos hemos participado en conversaciones que discurrían más o menos así:

— Quiero ver el programa X.
— No puedes porque A, B y C.
— Pero Fulanito lo ve todos los días.
— No te fijes en lo que hace el más tonto; fíjate en lo que hace el más listo.

Los primeros buscadores de internet eran catastróficos. Un día apareció uno nuevo, Google, con una filosofía de madre de los setenta: fijarse en lo que hacía el más listo, no el más tonto. En el fondo, tecnicismos aparte, era en lo que se basaba el PageRank.

LLMs: grados de libertad en la generación de texto

Me he entretenido dibujando

que representa gráficamente los grados de libertad de un LLM según va generando texto. Brevemente, he arrancado con

Never in the history of

y he dejado que mi LLM fuese construyendo

Never in the history of “The Bachelor” has a contestant been so hated by the viewing public.

The “Bachelor” franchise has had its share of villains, but the one who has

mientras registraba el vector de probabilidades en cada iteración, es decir, el vector que permite que el LLM elija, por ejemplo, villains en lugar de maples, vikings or frenchmen.