curso
Pequeños modelos lingüísticos: Una guía con ejemplos
Los modelos lingüísticos pequeños (SLM) resuelven el problema de hacer que la IA sea más accesible y eficaz para quienes tienen recursos limitados, ya que son más pequeños, más rápidos y más fáciles de personalizar que los modelos lingüísticos grandes (LLM). los modelos lingüísticos grandes (LLM).
Los SLM tienen menos parámetros (normalmente menos de 10.000 millones), lo que reduce drásticamente los costes computacionales y el consumo de energía. Se centran en tareas específicas y se entrenan con conjuntos de datos más pequeños. Esto mantiene un equilibrio entre el rendimiento y la eficiencia de los recursos.
Fundamentos de OpenAI
¡Empieza a utilizar la API OpenAI y mucho más!
¿Qué son los modelos de lenguas pequeñas?
Los modelos lingüísticos pequeños son las versiones compactas y muy eficientes de los modelos lingüísticos grandes y masivos de los que tanto hemos oído hablar. Los LLM como el GPT-4o tienen cientos de miles de millones de parámetros, pero los SML utilizan muchos menos, normalmente entre millones y unos pocos miles de millones.
Las características clave de los SLM son
- Eficacia: Los SLM no necesitan la enorme potencia de cálculo que exigen los LLM. Esto los hace ideales para su uso en dispositivos con recursos limitados, como teléfonos inteligentes, tabletas o dispositivos IoT; obtén más información en este blog sobre IA de borde.
- Accesibilidad: Las personas con presupuestos limitados pueden implantar SLM sin necesidad de una infraestructura de gama alta. También son muy adecuadas para implantaciones locales en las que la privacidad y la seguridad de los datos son muy importantes, ya que no siempre dependen de la infraestructura basada en la nube.
- Personalización: Los SLM son fáciles de ajustar. Su menor tamaño significa que pueden adaptarse rápidamente a tareas de nicho y dominios especializados. Esto los hace muy adecuados para aplicaciones específicas como la atención al cliente, la sanidad o la educación (¡más adelante hablaremos de esto con más detalle!).
- Inferencia más rápida: Los SLM tienen tiempos de respuesta más rápidos porque tienen menos parámetros que procesar. Esto los hace perfectos para aplicaciones en tiempo real como chatbots, asistentes virtuales o cualquier sistema en el que sea esencial tomar decisiones rápidas. No tienes que esperar respuestas, lo que es estupendo para entornos en los que la baja latencia es imprescindible.
Ejemplos de pequeños modelos lingüísticos
El desarrollo de las SLM de 2019 a 2024 ha sido rápido, y se han creado muchos modelos nuevos para satisfacer la necesidad de una IA más eficiente. Comenzó con la GPT-2 en 2019, y con los años, los modelos se han vuelto más centrados y rápidos. En 2022, modelos como Bloom y Galactica podían manejar múltiples lenguajes y datos científicos, y en 2023, modelos como Pythia y Cerebras-GPT estaban diseñados para tareas como la codificación y el pensamiento lógico.
En 2024, se lanzaron aún más SLM, como LaMini-GPT, MobileLLaMA y TinyLlama, que están hechos para funcionar bien en dispositivos móviles y otros sistemas de bajo consumo. Empresas como Meta, Google y Microsoft lideran el desarrollo de estos modelos, algunos abiertos al público y otros privados.
Fuente: Lu et al., 2024
Los profesionales utilizan los SLM en muchas industrias porque son ligeros, rápidos y no necesitan muchos recursos para funcionar. Aquí tienes algunos de estos modelos con sus parámetros y características clave:
Nombre del modelo |
Parámetros |
Código abierto |
Características principales |
Qwen2 |
0,5B, 1B, 7B |
Sí |
Escalable, adecuado para diversas tareas |
Mistral Nemo 12B |
12B |
Sí |
Tareas complejas de PNL, despliegue local |
Llama 3.1 8B |
8B |
Sí*. |
Potencia y eficiencia equilibradas |
Pythia |
160M - 2,8B |
Sí |
Centrado en el razonamiento y la codificación |
Cerebras-GPT |
111M - 2,7B |
Sí |
Eficiente desde el punto de vista informático, sigue las leyes de escalado de Chinchilla |
Phi-3,5 |
3.8B |
Sí** |
Contexto de gran longitud (128K tokens), multilingüe |
StableLM-zephyr |
3B |
Sí |
Inferencia rápida, eficiente para sistemas de borde |
TinyLlama |
1.1B |
Sí |
Eficaz para dispositivos móviles y de borde |
MobileLLaMA |
1.4B |
Sí |
Optimizado para dispositivos móviles y de bajo consumo |
LaMini-GPT |
774M - 1,5B |
Sí |
Multilingüe, tareas de seguimiento de instrucciones |
Gemma2 |
9B, 27B |
Sí |
Despliegue local, aplicaciones en tiempo real |
MiniCPM |
1B - 4B |
Sí |
Rendimiento equilibrado, optimizado para inglés y chino |
OpenELM |
270M - 3B |
Sí |
Multitarea, baja latencia, eficiencia energética |
DCLM |
1B |
Sí |
Razonamiento de sentido común, deducción lógica |
Fox |
1.6B |
Sí |
Velocidad optimizada para aplicaciones móviles |
*Con restricciones de uso
**Sólo con fines de investigación
Obtén más información sobre estos modelos en este otro artículo que escribí sobre los mejores modelos lingüísticos pequeños.
Cómo funcionan los SLM
Entremos en cómo funcionan los modelos lingüísticos pequeños.
Siguiente palabra predicción
Al igual que los LLM, los SLM funcionan prediciendo la siguiente palabra en una secuencia de texto. Los SLM utilizan patrones del texto en el que han sido entrenados para adivinar lo que viene a continuación. Es un concepto sencillo pero poderoso que se encuentra en el corazón de todos los modelos lingüísticos.
Por ejemplo, dada la entrada "En la serie de Harry Potter, el mejor amigo del protagonista se llama Ron...". Un SLM analizaría este contexto y predeciría la siguiente palabra más probable: en este caso, "Weasley".
Arquitectura del transformador
El sitio arquitectura del transformador es clave para que los LLM y los SLM comprendan y generen lenguaje. Los transformadores pueden entenderse como el cerebro de los modelos lingüísticos. Utilizan autoatención para averiguar qué palabras de una frase son más relevantes entre sí. Esto ayuda al modelo a comprender el contexto; por ejemplo, reconocer que "París" se refiere a la ciudad o a la persona que conoces del trabajo.
Equilibrio entre tamaño y prestaciones
La potencia de los SLM reside en su capacidad para equilibrar tamaño y rendimiento. Utilizan muchos menos parámetros que los LLM, normalmente entre millones y unos pocos miles de millones, frente a los cientos de miles de millones de los LLM.
Con menos parámetros, los SLM requieren menos potencia de cálculo y datos para entrenarse, lo que los hace más accesibles si tienes recursos limitados. El tamaño compacto de los SLM hace que procesen la entrada y generen la salida más rápidamente, lo que es superimportante para aplicaciones en tiempo real como teclados móviles o asistentes de voz.
Puede que los SLM no sean tan versátiles ni tengan una comprensión tan profunda como los modelos grandes, pero realizan bien tareas específicas. Por ejemplo, un SLM formado para analizar textos jurídicos podría hacer un mejor trabajo que un LLM general en esa área.
Cómo se crean los SLM: Técnicas y enfoques
Los SLM utilizan técnicas como destilaciónla poda y la cuantificación para ser más pequeños, rápidos y eficientes.
Destilación
Se trata de una técnica para crear SLM transfiriendo conocimientos de un modelo "profesor" más grande a un modelo "alumno" más pequeño. El objetivo aquí es tomar lo que el modelo del profesor ha aprendido y comprimirlo en el modelo del alumno sin perder demasiado de su rendimiento.
Este proceso hace que los SLM conserven gran parte de la precisión de los modelos más grandes, al tiempo que son mucho más manejables en tamaño y necesidad computacional. Con esta técnica, el modelo más pequeño aprende no sólo las predicciones finales del profesor, sino también los patrones y matices subyacentes.
Existen varios métodos de destilación del conocimiento:
- Basado en la respuesta: El modelo del alumno aprende a replicar la capa de salida final del modelo del profesor, utilizando a menudo "objetivos blandos" para obtener información más matizada.
- Basado en características: Se centra en reproducir las capas intermedias del modelo del profesor, ayudando al alumno a extraer patrones similares de los datos.
- Basado en las relaciones: Entrena al alumno para que comprenda las relaciones entre las distintas partes del modelo del profesor, emulando procesos de razonamiento complejos.
Poda
Podar es como recortar lo que no se necesita. Durante la poda, se eliminan partes del modelo que no son tan importantes, como neuronas o parámetros que no contribuyen mucho al rendimiento global. Esta técnica ayuda a reducir el modelo sin afectar significativamente a su precisión. Sin embargo, la poda puede ser un poco delicada, porque si eres demasiado agresivo, corres el riesgo de recortar demasiado y perjudicar el rendimiento del modelo.
La poda puede reducir significativamente el tamaño del modelo manteniendo gran parte del rendimiento original, lo que la convierte en una técnica eficaz para crear SLM.
Cuantización
La cuantización consiste en utilizar menos bits para almacenar los números del modelo. Normalmente, un modelo puede utilizar números de 32 bits, pero con este método, esos números se reducen a valores de 8 bits, que son mucho más pequeños. Esto hace que el modelo ocupe menos espacio y permite que funcione más rápido. Lo mejor es que, aunque los números sean menos precisos, el modelo sigue funcionando bien con sólo un pequeño impacto en su precisión.
Imagina que almacenas valores de temperatura en una aplicación meteorológica. Los almacenarías con alta precisión (como números de 32 bits), que es más de lo que necesitas. Al reducir la precisión a 8 bits, puede que pierdas detalles, pero la aplicación seguirá siendo útil al tiempo que se ejecuta más rápido y utiliza menos memoria.
Esto es especialmente útil para desplegar la IA en dispositivos con memoria y potencia de cálculo limitadas, como los smartphones o los dispositivos periféricos.
La cuantificación es especialmente eficaz para desplegar modelos en dispositivos con recursos limitados, porque reduce los requisitos de memoria y mejora la velocidad de inferencia.
Aplicaciones de los pequeños modelos lingüísticos
La belleza de los SLM reside en su capacidad para ofrecer una IA potente sin necesidad de una infraestructura masiva o una conectividad constante a Internet, lo que abre muchísimas aplicaciones.
IA en el dispositivo
Pensemos en los asistentes móviles, esos asistentes de voz de tu teléfono que te ayudan a desenvolverte a lo largo del día. Los SLM lo hacen posible. Permiten la predicción de texto en tiempo real, los comandos de voz e incluso la traducción sin necesidad de enviar datos a la nube. Todo se hace localmente, lo que significa respuestas más rápidas e interacciones que preservan más la privacidad.
Por ejemplo, SwiftKey y Gboard utilizan SLM para proporcionar sugerencias de texto contextualmente precisas, lo que mejora la velocidad y la precisión de la escritura.
Esto también se extiende a las aplicaciones offline, en las que la IA puede seguir funcionando sin conexión a Internet, lo que la hace útil en zonas con conectividad limitada.
Google Translate, por ejemplo, ofrece funciones de traducción offline basadas en SLM, lo que facilita la comunicación en zonas con acceso limitado a Internet.
IA personalizada
Una de las grandes ventajas de los SLM es que pueden personalizarse para tareas específicas o preferencias del usuario. Imagina tener en tu empresa un chatbot perfeccionado específicamente para la atención al cliente o una IA que sepa exactamente cómo atenderte basándose en tus interacciones anteriores. Como estos modelos son más pequeños, son mucho más fáciles de ajustar e implantar en distintos sectores.
Veamos algunos ejemplos:
- Sanidad: Los SLM pueden personalizarse para el análisis de textos médicos con el fin de proporcionar seguimiento y asesoramiento sanitario en tiempo real en wearables inteligentes. Funcionan independientemente de la conectividad continua a la nube.
- Dispositivos domésticos inteligentes: Los SLM integrados en sistemas domésticos inteligentes pueden aprender las preferencias individuales de temperatura e iluminación, ajustando automáticamente la configuración para distintas horas del día u ocasiones concretas.
- Educación: Las apps educativas que utilizan SLM pueden adaptarse a los estilos y ritmos de aprendizaje individuales, lo que proporciona orientación y apoyo personalizados a los alumnos.
Internet de las cosas
Los SLM se ejecutan silenciosamente en segundo plano en dispositivos cotidianos como tu sistema doméstico inteligente u otros gadgets. Ayudan a estos dispositivos a entenderte y responderte directamente sin necesidad de conectarse a Internet, haciéndolos más rápidos e inteligentes.
Otras aplicaciones
Los SLM están encontrando aplicaciones en muchos otros ámbitos:
- Traducción de idiomas en tiempo real: Los SLM hacen posible la traducción instantánea, que es importante para la comunicación global. Algunas aplicaciones de viajes utilizan ahora SLM para traducir señales, menús o indicaciones habladas en tiempo real. Esto ayuda a los usuarios a navegar en lenguas extranjeras.
- Sistemas de automoción: En los coches, los SLM proporcionan navegación inteligente, dando actualizaciones del tráfico en tiempo real y sugiriendo las mejores rutas. También mejoran los comandos de voz, permitiendo a los conductores controlar la música, hacer llamadas o enviar mensajes sin usar las manos.
- Sistemas de entretenimiento: Los televisores inteligentes y las consolas de videojuegos utilizan los SLM para el control por voz y para sugerirte programas o juegos basándose en lo que has visto o jugado antes.
- Atención al cliente: Los SLM ayudan a las empresas a gestionar las preguntas de los clientes de forma más eficaz. Las tiendas minoristas utilizan el SLM para responder a preguntas sobre productos, el estado de los pedidos o las políticas de devolución. Esto lleva a reducir la necesidad de asistencia humana al cliente.
LLMs vs. SLMs
Ahora, hablemos de cuándo hay que ir a lo grande con los LLM y cuándo los SLM son la mejor opción.
Complejidad de la tarea
Para tareas muy complejas como la comprensión profunda, la creación de contenidos largos o la resolución de problemas complicados, los modelos grandes como GPT-4o suelen funcionar mejor que los SLM. Pueden encargarse de estas tareas porque extraen una gran cantidad de datos para dar respuestas más detalladas. Sin embargo, el inconveniente es que este nivel de sofisticación requiere mucha potencia de cálculo y mucho tiempo.
LLMs |
SLMs |
Excelente en el manejo de tareas complejas, sofisticadas y generales |
Más adecuado para tareas más adecuadas y sencillas |
Mejor precisión y rendimiento en diferentes tareas |
Excelente en aplicaciones especializadas y tareas específicas del dominio |
Capaz de mantener el contexto en pasajes largos y dar una respuesta coherente |
Puede tener dificultades con las tareas lingüísticas complejas y la comprensión del contexto a largo plazo |
Por ejemplo, si estás desarrollando un chatbot de propósito general que necesita manejar diferentes temas y consultas complejas, un LLM sería más adecuado. Sin embargo, para un bot especializado en atención al cliente centrado en una línea de productos específica, un SLM podría ser más que suficiente e incluso superar a un LLM debido a su formación centrada.
Limitación de recursos
Ahora bien, cuando tienes limitaciones de recursos, ahí es donde ganan los SLM. Requieren mucha menos potencia de cálculo para entrenarse y desplegarse. Son una gran opción si trabajas en un entorno de recursos limitados.
LLMs |
SLMs |
Requieren una potencia de cálculo y una memoria considerables |
Más económico en términos de consumo de recursos |
A menudo necesitan hardware especializado como GPUs para la inferencia |
Puede ejecutarse en hardware estándar e incluso en dispositivos como Raspberry Pi o smartphone |
Mayores costes operativos debido a la demanda de recursos |
Tiempos de formación más cortos, lo que los hace más accesibles para despliegues rápidos |
En situaciones en las que la potencia de cálculo es limitada, como en los dispositivos móviles o la informática de borde, los SLM suelen ser la mejor opción, ya que ofrecen una buena combinación de rendimiento y eficiencia.
Entorno de despliegue
Si vas a desplegar la IA en un servidor en la nube donde los recursos no son un problema, un LLM puede ser el camino a seguir, especialmente si necesitas una gran precisión y fluidez en las respuestas. Pero si trabajas en dispositivos con una potencia de CPU o GPU limitada, como dispositivos IoT o aplicaciones móviles, los SLM son la solución perfecta.
LLMs |
SLMs |
Lo mejor para entornos de nube donde hay mucha potencia de cálculo disponible |
Pueden utilizarse en la nube, pero su menor tamaño los hace mejores para lugares con recursos limitados. Son más eficientes para realizar pequeñas tareas |
No es ideal para la IA en el dispositivo porque necesita mucha potencia de cálculo y depende de una conexión a Internet |
Perfecto para la IA en el dispositivo, ya que permite el uso sin conexión y tiempos de respuesta más rápidos. Pueden ejecutar asistentes móviles, reconocimiento de voz y otras aplicaciones en tiempo real sin necesidad de conexión a Internet. |
No son adecuadas para la computación de borde porque requieren mucha potencia de cálculo y pueden ser lentas en responder |
Ideal para la computación de borde, donde son importantes las respuestas rápidas y el uso eficiente de los recursos. Permiten la IA en dispositivos IoT, hogares inteligentes y otras aplicaciones de borde |
Al considerar el entorno de despliegue, es esencial evaluar factores como la conectividad a Internet, los requisitos de latencia y los problemas de privacidad. Para las aplicaciones que necesitan funcionar sin conexión o con una latencia mínima, los SLM desplegados en el dispositivo o en el borde suelen ser la mejor opción.
Elegir entre LLM y SLM depende de la complejidad de la tarea, de los recursos de que dispongas y de dónde quieras desplegarlos. Las LLM son estupendas para tareas complejas que requieren gran precisión, mientras que las SLM son eficientes y pueden trabajar en más lugares.
Conclusión
Los SLM están haciendo que la IA sea mucho más accesible. A diferencia de los grandes modelos lingüísticos que necesitan toneladas de potencia de cálculo, los SLM funcionan con menos recursos. Esto significa que las empresas más pequeñas, los desarrolladores individuales e incluso las startups pueden utilizarlos sin necesidad de servidores masivos ni presupuestos enormes.
Para saber más sobre los pequeños modelos lingüísticos, te recomiendo estos dos recursos:
Preguntas frecuentes
¿Cuáles son las diferencias específicas de consumo de energía entre ejecutar un SLM frente a un LLM para una aplicación empresarial típica?
La diferencia de consumo energético entre los SLM y los LLM puede ser sustancial. Para una aplicación empresarial típica, un SLM podría consumir sólo el 10-20% de la energía que necesita un LLM. Por ejemplo, ejecutar un SLM para un chatbot de atención al cliente podría consumir unos 50-100 kWh al mes, mientras que un LLM para la misma tarea podría consumir 500-1000 kWh. Sin embargo, las cifras exactas varían en función del tamaño del modelo, los patrones de uso y la eficiencia del hardware. Empresas como Google y OpenAI han informado de que el funcionamiento de sus modelos más grandes puede consumir energía equivalente a la de varios cientos de hogares, mientras que los SLM a menudo pueden funcionar en servidores estándar o incluso en dispositivos de borde con requisitos energéticos significativamente menores.
¿Cómo se comparan los plazos de desarrollo al crear SLM personalizados frente al ajuste de LLM existentes para tareas especializadas?
Los plazos de desarrollo de los SLM personalizados frente a los LLM de ajuste fino pueden diferir significativamente. Crear un SLM personalizado desde cero suele llevar más tiempo, a menudo entre 3 y 6 meses para un equipo de científicos de datos experimentados, ya que implica la recopilación de datos, el diseño de la arquitectura del modelo, la formación y pruebas exhaustivas. Poner a punto un LLM existente para una tarea especializada puede ser mucho más rápido, pudiendo llevar sólo unas semanas. Sin embargo, la contrapartida es que los LLM ajustados pueden no alcanzar el mismo nivel de eficacia o especialización que un SLM hecho a medida. La elección suele depender del caso de uso concreto, los recursos disponibles y las características de rendimiento deseadas.
¿Cuáles son las consideraciones legales y éticas a la hora de desplegar SLM frente a LLM, especialmente en lo que respecta a la privacidad de los datos y la propiedad intelectual?
La privacidad de los datos es una preocupación importante, ya que los LLM suelen tener muchos datos de formación, lo que aumenta potencialmente el riesgo de exposición de información personal. Los SLM, al estar más centrados, podrían utilizar conjuntos de datos más pequeños y controlados, reduciendo potencialmente los riesgos para la privacidad. Las cuestiones de propiedad intelectual también son críticas, ya que los LLM formados en diversos datos de Internet podrían reproducir contenidos protegidos por derechos de autor. Los SLM, entrenados con datos más específicos, podrían enfrentarse a menos riesgos de este tipo, pero aún así podrían encontrar problemas dependiendo de sus datos de entrenamiento. Además, la interpretabilidad y explicabilidad de las decisiones del modelo suelen ser más fáciles con los SLM, lo que puede ser muy importante para las aplicaciones en industrias reguladas.
¿Cómo se comparan los SLM y los LLM en términos de capacidades multilingües, especialmente para las lenguas menos comunes?
Los SLM y los LLM manejan las lenguas múltiples de forma diferente, especialmente las menos comunes. Los LLM, con sus enormes datos de entrenamiento, suelen funcionar bien en muchas lenguas, incluidas las raras, pero esto tiene el inconveniente de ser grandes y complejos. Los SLM, aunque más pequeños, pueden personalizarse para lenguas o grupos lingüísticos concretos, a veces incluso superando a los LLM en esas áreas. Para las lenguas menos comunes, los SLM especialmente entrenados pueden ofrecer traducciones o textos más precisos y culturalmente conscientes, ya que se centran en datos de alta calidad y específicos de la lengua, a diferencia de los datos más amplios pero posiblemente menos precisos que se utilizan en los LLM.
¿Cuáles son las mejores prácticas para el control de versiones y la gobernanza de modelos cuando se trabaja con SLM frente a LLM en un entorno de producción?
Las mejores prácticas para gestionar versiones y supervisar SLM y LLM en entornos de producción tienen similitudes, pero también diferencias clave. Para ambos, es importante mantener un buen sistema de versiones para los modelos, los datos de entrenamiento y las configuraciones. Sin embargo, los LLM, debido a su tamaño y sensibilidad al ajuste fino, necesitan una infraestructura más compleja para el control de versiones. Los SLM, al ser más pequeños, facilitan la gestión y el despliegue de diferentes versiones. En lo que respecta a la gobernanza, los LLM suelen necesitar una supervisión más estricta debido a su amplia gama de capacidades y a su potencial para comportamientos inesperados. Los SLM, con sus usos más específicos, pueden necesitar menos supervisión pero una gobernanza más específica. En ambos casos, las comprobaciones periódicas, el seguimiento del rendimiento y una documentación clara de las limitaciones y los usos previstos son muy importantes para un uso responsable de la IA.
Ana Rojo Echeburúa es una científica de IA y datos con un doctorado en Matemáticas Aplicadas. Le encanta convertir los datos en información práctica y tiene una amplia experiencia dirigiendo equipos técnicos. A Ana le gusta trabajar en estrecha colaboración con los clientes para resolver sus problemas empresariales y crear soluciones innovadoras de IA. Conocida por su capacidad para resolver problemas y su claridad de comunicación, es una apasionada de la IA, especialmente de los grandes modelos lingüísticos y la IA generativa. Como cofundadora y CTO de Simpli, una empresa de IA de seguros tecnológicos, Ana se dedica al aprendizaje continuo y al desarrollo ético de la IA, superando siempre los límites de la tecnología.
Aprende IA con estos cursos
programa
Developing AI Applications
programa
AI Fundamentals
blog
Evaluación de un LLM: Métricas, metodologías y buenas prácticas
Stanislav Karzhev
9 min
blog
Explicación de los modelos de lenguaje visual (VLM)
Bhavishya Pandit
8 min
blog
Explicación de la destilación del LLM: Aplicaciones, implementación y más
Stanislav Karzhev
12 min
tutorial
Guía introductoria para el ajuste preciso de los LLM
Josep Ferrer
12 min
tutorial
DCLM-7B de Apple: Configuración, Ejemplo de uso, Ajuste fino
Dimitri Didmanidze
9 min
tutorial