🎙 Episodio 55. La Inteligencia Artificial no es gratis

En el episodio de hoy de Un podcast ninja sobre Big Data vamos a hablar de la huella de carbono que van dejando los modelos de Inteligencia Artificial. 👣

Hace unos meses se publicaba en Business Insider que tener en funcionamiento a ChatGPT le cuesta a OpenAI unos $700 000 diarios debido a la cantidad de energía que consumen estos modelos.

Y ya no hablamos de su entrenamiento sino de tener el modelo desplegado y listo para responder las consultas de los usuarios.

Imaginaos la factura de la luz.

¿Pero por qué los modelos de Machine Learning consumen tanta energía? 

El principio detrás de los modelos de Machine Learning

Pues bien, un modelo de Machine Learning, incluso el más complejo, no es más que unas cuantas operaciones matemáticas que se hacen sobre los datos de entrada para obtener el resultado que buscamos.

Supongamos el caso de la regresión lineal más sencilla en la que queramos predecir el precio de una vivienda en función de lo grande que es, por ejemplo.

Nuestra intuición nos dice que cuanto más grande sea la casa más alto será el precio.

O sea que podría llegar a ser una relación lineal.

Nuestra intuición también nos dice que el precio depende de otras variables, como el barrio, el estado de la casa, si es exterior o interior, si tiene ascensor… pero vamos que simplificando casi al absurdo podríamos tener un modelo de Machine Learning que con un par de multiplicaciones y alguna suma predijera el precio de una casa si sabemos los metros cuadrados.

Esto, una vez que ya tenemos el modelo entrenado. Porque para entrenarlo, tendríamos que mapear los datos de entrada de nuestro dataset de entrenamiento con sus correspondientes precios de este mismo dataset.

Y esto también implica más multiplicaciones y sumas.

Igual este modelo de regresión lineal hiper sencillo que predice el precio de la vivienda a partir de los metros cuadrados solo tiene un par de parámetros y no consume mucha energía.

Tampoco la Inteligencia Artificial está en boca de todo el mundo por modelos tan pequeños y probablemente tan poco precisos.

Peeero el principio es el mismo detrás de un modelo de más de un billón de parámetros, o sea un millón de millones de parámetros,  como podría ser GPT-4.

Y el principio también es el mismo detrás de los modelos que está utilizando Uber para predecir el tiempo que va a tardar nuestra cena en llegar o para asignarnos un conductor que nos recoja y nos lleve al aeropuerto.

Igual no serán modelos tan grandes como GPT-4 pero de seguro que son mucho muuucho más complejos que una regresión lineal.

Lo que implica más operaciones matemáticas. 

El papel de las GPUs en el consumo de energía

Todos estos cálculos se hacen generalmente en GPUs que viven en los centros de datos de la empresa en cuestión, digamos en Uber, o en la nube… que la nube en realidad no es más que los centros de datos de Google, Amazon, Microsoft o el proveedor de servicios en la nube que sea.

Vamos que son centros de datos también pero con la gracia de que se benefician de las economías de escala.

Así que tenemos GPUs enchufadas en centros de datos haciendo cálculos para entrenar modelos o directamente para usarlo una vez que ha sido entrenado. Gastando energía y agua.

Sí, agua también, porque los servidores de estos data centers tienen que estar refrigerados que si no de tanto calcular se sobrecalientan y se estropean.

Y este gasto de energía y agua tiene, por supuesto, un impacto medioambiental.

Impacto medioambiental de la Inteligencia Artificial 🌱

Incluso en la era pre-chatGPT el crecimiento de la Inteligencia Artificial ya repercutía directamente en el crecimiento de los centros de datos.

Amazon, Google, Microsoft y Meta han estado construyendo cada vez más centros de datos para ser capaces de seguir en esta carrera de la IA.

De hecho, las emisiones de carbono asociadas a centros de datos se duplicaron entre 2017 y 2020.

Estas emisiones, dependen por supuesto de cómo se está generando la energía que alimenta al data center en cuestión. 

No es lo mismo un centro de datos que obtiene su energía de una planta de carbón o de gas natural que uno que se alimenta de energía renovables.

La huella de carbono que provoca el entrenamiento y uso de un modelo de Machine Learning puede multiplicarse hasta por 10 dependiendo de la fuente de energía del centro de datos, incluso para centros de datos de una misma empresa en un mismo país.

Vamos a poner unos números que publicaron en Bloomberg para que nos hagamos una idea…

Pongamos que la energía que gasta Google en IA está alrededor del 10 - 15% de todo el consumo eléctrico de la compañía.

Este consumo en 2021 fue de 18.3 terawattios hora por lo que podríamos aproximar que el gasto energético en IA de Google fue de unos 2.3 terawattios hora en todo el año.

Este consumo de energía equivale al gasto energético de todas las viviendas de una ciudad de unos 500 000 habitantes.

Evidentemente todas estas grandes empresas afirman su intención de alcanzar cero emisiones en sus operaciones antes de 2030.

De hecho, muchas utilizan modelos de Machine Learning para controlar su gestión energética de la manera más eficiente posible y afirman tener como objetivo utilizar únicamente energía libre de emisiones.

Peeero por otro lado estas empresas tampoco son muy abiertas en cuanto a reconocer el gasto energético de los centros de datos en los que se entrenan y sirven modelos de Machine Learning y mucho menos de las emisiones que todo esto supone. 

Así que para hacernos una idea sobre lo que le cuesta al medio ambiente en términos de emisiones atmosféricas cada vez que le hacemos una consulta a un cacho de modelo del lenguaje, de estos de miles de millones de parámetros pues tenemos que echar mano de la comunidad de código abierto, que tiene menos secretos…

La huella de carbono de entrenar a BLOOM 🌸

A finales de 2022 se publicó un estudio que estimaba la huella de carbono de un gran modelo del lenguaje de código abierto llamado BLOOM con 176 mil millones de parámetros.

En tamaño estaría en la escala de GPT-3 de OpenAI con 175 mil millones de parámetros.

Entrenamiento de BLOOM

BLOOM se entrenó sobre 1.6 terabytes de datos durante algo más de 118 días, lo que supone un poco más de un millón de horas de procesamiento de GPUs Nvidia A100.

Este modelo se entrenó en el cluster de computación Jean Zay del instituto IDRIS en Francia.

En ese millón de horas de entrenamiento la energía consumida por el cluster fue de 433196 kWh.

Teniendo en cuenta que la red eléctrica que alimenta al cluster tiene unas emisiones aproximadas de 57 grs de CO2 equivalente por cada KWh, las emisiones resultantes de entrenar a BLOOM en el cluster de computación Jean Zay fueron de 24 toneladas de CO2 equivalente.

Os hablo de CO2 equivalente porque en realidad es una medida estándar para unificar todos los gases que se emiten (metano, CO2, etc…) con respecto al potencial que tienen para el calentamiento global.

Por ejemplo, si el metano tiene un potencial en el tiempo de provocar calentamiento global 25 veces superior al CO2 pues se representa como 25 unidades de CO2 equivalente.

Es para poder sumar todos los gases con efecto invernadero juntos básicamente.

Pues 24 toneladas de CO2 para la atmósfera para entrenar a BLOOM. Solo en entrenamiento.

Si os habéis quedado igual que estabais con la cifra de 24 toneladas de CO2, pensad que supone 25 veces la cantidad de emisiones que genera un pasajero al volar desde Nueva York a San Francisco.

BLOOM consumió durante su entrenamiento energía suficiente para alimentar una vivienda media durante más de 120 años.

Huella de carbono durante el uso de BLOOM

A la hora de utilizar el modelo lo desplegaron en la nube de Google en una instancia con 16 GPUs Nvidia A100 y analizaron el consumo de energía de esta instancia durante 18 días.

En la era pre-chatGPT el grueso del consumo del modelo se producía durante el entrenamiento porque luego el uso no era tan masivo como el que puede tener un modelo del lenguaje como ChatGPT que está recibiendo peticiones continuamente.

BLOOM, un modelo mucho menos mainstream que ChatGPT, recibía unas 558 peticiones por hora lo que supuso un consumo de 914 kWh.

De esto, el 75% iba para que las GPUs hicieran sus cálculos.

Como el centro de datos de Google en el que se encontraba físicamente la instancia en la que estaba desplegado BLOOM estaba en Iowa y las emisiones de este datacenter eran de 394 gramos de CO2 equivalente por cada kWh.

Durante el experimento se emitieron casi 20 kg de CO2 equivalente al día.

Tened en cuenta que estos 20 kg de CO2 equivalente diarios para usar BLOOM vienen de un uso de unas 500 consultas por hora al día, aproximadamente unas 12000 peticiones.

ChatGPT igual recibe del orden de millones de peticiones diarias.

Según el Instituto para la Diversificación y el ahorro de la energía por cada litro de gasolina consumido un coche emite 2,35 kg de CO2 y por cada litro de gasóleo unos 2,64 kg de CO2.

Como veis es bastante energía y bastante CO2.

Consumo de agua de la Inteligencia Artificial 💧

Pero es que además está el tema del agua.

Las GPUs cuando se ponen a realizar los cálculos necesarios se calientan. Y si se calientan mucho pues se estropean por lo que hay que mantener los centros de datos refrigerados.

Muy importante.

Esta refrigeración se realiza mediante circuitos de agua.

Durante el proceso de refrigeración hay parte de este agua que se evapora y esta sería la parte del agua que se da como consumida.

Por ejemplo, los centros de datos de Google en los EEUU consumieron 12700 millones de litros de agua en 2021 durante estos procesos de refrigeración. 

Para el proceso de refrigeración no vale cualquier agua sino que tiene que ser agua dulce y limpia para evitar la corrosión de las tuberías del sistema de refrigeración, que se atasquen o que se deterioren por la aparición de bacterias.

De nuevo es complicado saber con precisión cuánto agua se consume en el entrenamiento y uso de modelos de Machine Learning porque depende de la eficiencia del sistema de refrigeración e incluso de la ubicación física del centro de datos.

No tiene las mismas necesidades de refrigeración un centro de datos en el desierto de Nevada que uno en Alaska.

Y no es necesaria la misma refrigeración en invierno que en verano.

Y, por tanto, el consumo de agua no es el mismo.

Además, las empresas propietarias de estos modelos no son muy transparentes con esta información así que los estudios que hay se basan en estimaciones y aproximaciones.

Por ejemplo, si asumimos, como hacen en un estudio de la universidad de California, que se usan en refrigeración 1.8L por cada kWh consumido (la media americana),  entrenar a GPT-3 que fueron unos 1287 MWh habría consumido casi 3 millones de litros de agua.

Lo mismo durante el uso del modelo.

A partir de varias estimaciones sobre la energía consumida en cada consulta y el agua consumida para refrigerar los equipos por kWh de energía consumido, podríamos llegar a la conclusión de que necesitamos una botellita de medio litro de agua para intercambiar unas 20 - 50 consultas con ChatGPT.

Eso cada uno de nosotros… que ChatGPT tiene millones de usuarios.

Pero bueno, como digo, son sólo estimaciones porque Microsoft, que es el dueño de los centros de datos dónde vive ChatGPT y OpenAI ni confirman ni desmienten.

Tened en cuenta que los modelos del lenguaje son los que consumen más recursos, tienen muchísimos más parámetros que cualquier otro modelo de Machine Learning.

Rollo órdenes de magnitud más. 

Seguramente modelos más pequeños como los que puede estar usando Uber para asignarnos un conductor, o predecir el tiempo de entrega de un pedido no consumen tantísimos recursos, que los consumen, sí.

Pero no no tantos.

¿Merece la pena el gasto de recursos naturales en IA?

Ahora bien, merece la pena el gasto de recursos energéticos y medioambientales en Inteligencia Artificial. Pues aquí sí que la respuesta es un DEPENDE mayúsculo.

Probablemente para un montón de chorradas para las que usamos ChatGPT y demás modelos del lenguaje, no…

Para otros muchos usos seguramente sí y para saber super precisamente cuánto va a tardar nuestra cena en llegar… pues Uber habrá llegado a la conclusión de que a sus usuarios les aporta más valor de lo que les cuesta calcularlo.

¿Vosotros qué opináis?

Así que espero que el episodio de hoy os sea de provecho y que aprendáis algo de valor. 

Si es así, no olvidéis dejar una valoración de 5 estrellas del podcast en Apple podcasts, en Spotify, en Ivoox, en Google podcast o donde quiera que escuchéis el podcast. 

Recordad que si tenéis cualquier duda o pregunta podéis contactar conmigo a través del formulario de contacto o podemos seguir la conversación en Twitter.

Muchas gracias por estar ahí y os espero en el próximo episodio de Un Podcast Ninja sobre Big Data.

Boletín Ninja

Suscríbete a la newsletter y recibe la guía ninja del Big Data y la Inteligencia Artificial.

Guía ninja del Big Data
Copyright © 2023  Â· Datos 🥷 · Todos los derechos reservados