Cuando se trata de IA generativa, la comunidad de código abierto ha adoptado LLaMA (Large Language Model Meta AI) de Meta AI, que se lanzó en febrero. Meta hizo que LLaMA estuviera disponible en varios tamaños (parámetros 7B, 13B, 33B y 65B), pero al principio estaba restringido a investigadores y organizaciones aprobados. Sin embargo, cuando se filtró en línea a principios de marzo para que cualquiera pudiera descargarlo, efectivamente se convirtió en código completamente abierto.
Para comprender cómo los desarrolladores usan LLaMA y qué beneficios les brinda en comparación con LLM similares de OpenAI y Google, hablé con Sebastian Raschka de Lightning AI. Me dijo que los desarrolladores se sienten atraídos por LLaMA de Meta porque, a diferencia de GPT y otros LLM populares, los pesos de LLaMA se pueden ajustar. Esto permite a los desarrolladores crear interacciones de lenguaje más avanzadas y naturales con los usuarios, en aplicaciones como chatbots y asistentes virtuales.
Raschka debería saberlo. Su papel en Lightning AI es «Educador principal de IA», lo que refleja tanto su formación académica (anteriormente fue profesor universitario de estadística) como su presencia de alto perfil en las redes sociales (tiene 192.000 seguidores). en Twitter y publica un boletín informativo de Substack titulado Ahead of AI).
LLaMA vs. GPT: ¡Suelta los pesos!
LLaMA no es tan diferente del modelo GPT 3 de OpenAI, dijo Raschka, excepto que Meta ha compartido los pesos. Los otros LLM principales no han hecho eso.
En el contexto de los modelos de IA, los «pesos» se refieren a los parámetros aprendidos por un modelo durante el proceso de entrenamiento. Estos parámetros se almacenan en un archivo y se utilizan durante la fase de inferencia o predicción.
Lo que hizo Meta, específicamente, fue lanzar los pesos modelo de LLaMA a la comunidad de investigación bajo una licencia no comercial. Otros LLM potentes, como GPT, generalmente solo son accesibles a través de API limitadas.
“Entonces, debe pasar por OpenAI y acceder a la API, pero realmente no puede, digamos, descargar el modelo o ejecutarlo en su computadora”, dijo Raschka. «No se puede hacer nada personalizado, básicamente».
En otras palabras, LLaMA es mucho más adaptable para los desarrolladores. Esto es potencialmente muy disruptivo para los líderes actuales en LLM, como OpenAI y Google. De hecho, como lo reveló una nota interna de Google filtrada esta semana, los grandes jugadores ya están preocupados:
“Poder personalizar un modelo de idioma en unas pocas horas en hardware de consumo es un gran problema, especialmente para las aspiraciones que implican incorporar conocimientos nuevos y diversos casi en tiempo real”.
Como señaló el desarrollador de LLM, Simon Willison, «mientras OpenAI y Google continúan compitiendo para construir los modelos de lenguaje más poderosos, sus esfuerzos están siendo rápidamente eclipsados por el trabajo que se lleva a cabo en la comunidad de código abierto».
Casos de uso
Entonces, ¿cuáles son algunos de los casos de uso de las aplicaciones que se construyen sobre LLaMA?
Raschka dijo que los casos de uso legal y financiero son buenos candidatos para el ajuste. Sin embargo, señaló que las empresas más grandes pueden querer ir más allá del ajuste fino y, en cambio, entrenar previamente todo el modelo utilizando sus propios datos. Las tareas de clasificación también son populares hasta ahora, como la predicción de toxicidad, la clasificación de spam y la clasificación de satisfacción del cliente.
Según Raschka, el uso de LLaMA puede proporcionar un rendimiento mejorado en las aplicaciones en comparación con los algoritmos tradicionales de aprendizaje automático, con mejoras de precisión que van del 5 % al 10 %. En su mayoría, esto se puede lograr solo con un ajuste fino.
“Es algo que también es accesible para las personas”, dijo, “porque no es necesario entrenar previamente al modelo. Puedes simplemente afinarlo, esencialmente”.
LoRA y otras herramientas
Una de las herramientas que los desarrolladores pueden usar para afinar LLaMA es LoRA (Adaptación de rango bajo de modelos de lenguaje grande), que está disponible de forma gratuita en la cuenta GitHub de Microsoft. Le pregunté a Raschka cómo funciona esto.
Comenzó diciendo que existen varias técnicas para el ajuste fino de los LLM, como el ajuste duro, el ajuste suave, el ajuste de prefijos y los métodos de adaptador. Explicó que el método del adaptador es atractivo porque permite el entrenamiento de todo el LLM, mientras mantiene congelado el resto del transformador, lo que da como resultado parámetros más pequeños y un tiempo de entrenamiento más rápido. LoRA es un tipo de método de adaptador y Raschka dijo que usa un truco matemático para descomponer matrices grandes en matrices más pequeñas, lo que da como resultado menos parámetros y más eficiencia de almacenamiento. En efecto, esto significa que puede hacer el ajuste fino en un tiempo mucho más rápido.
“Cuando utilizo el método más pequeño, donde solo tengo estas capas intermedias como LoRA, toma solo de una a tres horas en lugar de 18 horas en el mismo conjunto de datos, básicamente. Así que es una ventaja porque tienes parámetros más pequeños”.
Técnicas como LoRA son útiles para implementar LLM en múltiples clientes, agregó, ya que solo requiere guardar las matrices pequeñas.
Desarrolladores y puesta a punto
El ajuste fino es un paso más allá de la ingeniería rápida, por lo que le pregunté a Raschka si los desarrolladores necesitarán aprender cómo hacerlo.
Raschka cree que comprender cómo usar los modelos de lenguaje será una habilidad útil para los desarrolladores, pero no es necesario que estén a cargo de ajustar los modelos en su empresa a menos que tengan necesidades muy específicas. Para las empresas pequeñas, pueden usar una herramienta general como GPT, y para las empresas más grandes, cree que habrá un miembro del equipo que se encargará de ajustar los modelos.
Lo que definitivamente les interesa a los desarrolladores es implementar modelos de IA en sus aplicaciones existentes. Aquí es donde entra en juego el empleador de Raschka, Lightning AI. Ofrece un marco de código abierto llamado PyTorch Lightning, que se utiliza para implementar modelos de aprendizaje profundo. Lightning AI también ofrece acceso a la nube y ayuda a los usuarios a implementar sistemas de aprendizaje automático en la nube. Por cierto, el creador de PyTorch Lightning, William Falcon, era un Ph.D. pasante en Facebook AI Research durante 2019, lo que probablemente influyó en el apoyo de Lightning AI a LLaMA.
También vale la pena señalar: Lightning AI tiene su propia implementación del modelo de lenguaje LLaMA llamado Lit-LLaMA, que está disponible bajo la licencia Apache 2.0. Investigadores de la Universidad de Stanford también han entrenado un modelo afinado basado en LLaMA, llamado Alpaca.
Conclusión
LLaMA parece una gran opción para los desarrolladores que desean más flexibilidad en el uso de modelos de lenguaje grandes. Pero como señala Raschka, si bien el ajuste fino se está volviendo cada vez más accesible, sigue siendo una habilidad especializada que puede no ser necesaria que todos los desarrolladores aprendan.
Independientemente de si realizan o no el ajuste fino, los desarrolladores necesitan comprender cada vez más cómo usar los LLM para mejorar ciertas tareas y flujos de trabajo en sus aplicaciones. Por lo tanto, vale la pena echarle un vistazo a LLaMA, especialmente porque es más abierto que GPT y otros LLM populares.
Richard MacManus es editor sénior en The New Stack y escribe sobre tendencias de desarrollo web y de aplicaciones. Anteriormente, fundó ReadWriteWeb en 2003 y lo convirtió en uno de los sitios de noticias tecnológicas más influyentes del mundo. Desde temprano…
Leer más de Richard MacManus