El mundo de los LLMs de código abierto es emocionante y está en constante evolución. Esta lección tiene como objetivo ofrecer una visión profunda sobre los modelos de código abierto. Si buscas información sobre cómo se comparan los modelos propietarios con los de código abierto, dirígete a la lección "Explorando y Comparando Diferentes LLMs". Esta lección también abordará el tema del fine-tuning, pero una explicación más detallada se encuentra en la lección "Fine-Tuning LLMs".
- Comprender qué son los modelos de código abierto
- Entender los beneficios de trabajar con modelos de código abierto
- Explorar los modelos abiertos disponibles en Hugging Face y Azure AI Studio
El software de código abierto ha jugado un papel crucial en el crecimiento de la tecnología en diversos campos. La Open Source Initiative (OSI) ha definido 10 criterios para el software que debe cumplir para ser clasificado como código abierto. El código fuente debe compartirse abiertamente bajo una licencia aprobada por la OSI.
Aunque el desarrollo de LLMs comparte elementos con el desarrollo de software, el proceso no es exactamente el mismo. Esto ha generado mucha discusión en la comunidad sobre la definición de código abierto en el contexto de los LLMs. Para que un modelo se alinee con la definición tradicional de código abierto, la siguiente información debería estar disponible públicamente:
- Los conjuntos de datos usados para entrenar el modelo.
- Los pesos completos del modelo como parte del entrenamiento.
- El código de evaluación.
- El código de fine-tuning.
- Los pesos completos del modelo y las métricas de entrenamiento.
Actualmente, solo hay unos pocos modelos que cumplen con estos criterios. El modelo OLMo creado por Allen Institute for Artificial Intelligence (AllenAI) es uno que encaja en esta categoría.
Para esta lección, nos referiremos a los modelos como "modelos abiertos" en adelante, ya que puede que no cumplan con los criterios anteriores al momento de escribir.
Altamente Personalizables - Dado que los modelos abiertos se publican con información detallada del entrenamiento, investigadores y desarrolladores pueden modificar el interior del modelo. Esto permite crear modelos altamente especializados y ajustados para una tarea o área de estudio específica. Algunos ejemplos son la generación de código, operaciones matemáticas y biología.
Costo - El costo por token para usar y desplegar estos modelos es menor que el de los modelos propietarios. Al construir aplicaciones de IA Generativa, es importante evaluar el rendimiento frente al precio al trabajar con estos modelos en tu caso de uso.
Flexibilidad - Trabajar con modelos abiertos te permite ser flexible en cuanto al uso de diferentes modelos o combinarlos. Un ejemplo de esto son los Asistentes HuggingChat, donde el usuario puede seleccionar el modelo que se usará directamente en la interfaz:
LLama2, desarrollado por Meta, es un modelo abierto optimizado para aplicaciones basadas en chat. Esto se debe a su método de fine-tuning, que incluyó una gran cantidad de diálogos y retroalimentación humana. Con este método, el modelo produce resultados más alineados con las expectativas humanas, lo que ofrece una mejor experiencia de usuario.
Algunos ejemplos de versiones fine-tuned de Llama incluyen Japanese Llama, que se especializa en japonés, y Llama Pro, que es una versión mejorada del modelo base.
Mistral es un modelo abierto con un fuerte enfoque en alto rendimiento y eficiencia. Utiliza el enfoque Mixture-of-Experts, que combina un grupo de modelos expertos especializados en un solo sistema, donde dependiendo de la entrada, se seleccionan ciertos modelos para ser usados. Esto hace que el cálculo sea más efectivo, ya que los modelos solo procesan las entradas en las que están especializados.
Algunos ejemplos de versiones fine-tuned de Mistral incluyen BioMistral, que está enfocado en el dominio médico, y OpenMath Mistral, que realiza cálculos matemáticos.
Falcon es un LLM creado por el Technology Innovation Institute (TII). El Falcon-40B fue entrenado con 40 mil millones de parámetros y ha demostrado un mejor rendimiento que GPT-3 con un menor presupuesto computacional. Esto se debe a su uso del algoritmo FlashAttention y la atención multiquery, que le permite reducir los requisitos de memoria en tiempo de inferencia. Con este tiempo de inferencia reducido, el Falcon-40B es adecuado para aplicaciones de chat.
Algunos ejemplos de versiones fine-tuned de Falcon son OpenAssistant, un asistente construido sobre modelos abiertos, y GPT4ALL, que ofrece un rendimiento superior al modelo base.
No hay una única respuesta para elegir un modelo abierto. Un buen punto de partida es usar la función de filtro por tarea de Azure AI Studio. Esto te ayudará a entender para qué tipos de tareas ha sido entrenado el modelo. Hugging Face también mantiene un LLM Leaderboard que muestra los modelos con mejor rendimiento según ciertas métricas.
Si quieres comparar LLMs entre diferentes tipos, Artificial Analysis es otro recurso excelente:
Si trabajas en un caso de uso específico, buscar versiones fine-tuned enfocadas en el mismo área puede ser efectivo. Experimentar con varios modelos abiertos para ver cómo se desempeñan según tus expectativas y las de tus usuarios es otra buena práctica.
Lo mejor de los modelos abiertos es que puedes empezar a trabajar con ellos bastante rápido. Revisa el Catálogo de Modelos de Azure AI Studio, que incluye una colección específica de Hugging Face con los modelos que discutimos aquí.
Después de completar esta lección, explora nuestra colección de aprendizaje de IA Generativa para seguir mejorando tus conocimientos en IA Generativa.
Aviso legal:
Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por la precisión, tenga en cuenta que las traducciones automáticas pueden contener errores o inexactitudes. El documento original en su idioma nativo debe considerarse la fuente autorizada. Para información crítica, se recomienda la traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o interpretaciones erróneas derivadas del uso de esta traducción.



