Home
Login

Caja de herramientas de modelos de lenguaje grandes de alto rendimiento, que admite el preentrenamiento, el ajuste fino y la implementación de más de 20 modelos.

Apache-2.0Python 12.3kLightning-AI Last Updated: 2025-06-18

LitGPT - Kit de herramientas de alto rendimiento para modelos de lenguaje grandes

Resumen del proyecto

LitGPT es un kit de herramientas de código abierto para modelos de lenguaje grandes desarrollado por Lightning AI, que proporciona soluciones de preentrenamiento, ajuste fino y despliegue a escala de más de 20 modelos de lenguaje grandes de alto rendimiento. El proyecto se basa en Lightning Fabric y amplía Lit-LLaMA y nanoGPT, centrándose en proporcionar capacidades de entrenamiento y despliegue de LLM de nivel empresarial.

Características principales

✅ Características de nivel empresarial

  • Licencia Apache 2.0 - Soporta el uso empresarial ilimitado
  • Amigable para desarrolladores - Implementación de un solo archivo sin capas de abstracción, fácil de depurar
  • Optimización del rendimiento - Diseñado para el máximo rendimiento, la reducción de costes y la aceleración del entrenamiento
  • Recetas validadas - Recetas de entrenamiento/ajuste fino altamente optimizadas probadas a escala empresarial

✅ Características técnicas avanzadas

  • Implementación desde cero - Todos los modelos están escritos desde cero, sin capas de abstracción, control total
  • Flash Attention v2 - La última optimización del mecanismo de atención
  • Soporte multi-GPU - Implementado a través del paralelismo de datos totalmente fragmentado (FSDP)
  • Optimización de la memoria - Descarga opcional de la CPU y soporte de TPU/XLA
  • Técnicas de cuantificación - Soporte para coma flotante de 4 bits, enteros de 8 bits y doble cuantificación
  • Ajuste fino eficiente en parámetros - Soporte para LoRA, QLoRA, Adapter y Adapter v2

Modelos soportados

LitGPT soporta más de 20 modelos de lenguaje grandes principales, incluyendo:

Series de modelos principales

  • Serie Llama - Llama 3, 3.1, 3.2, 3.3 (1B-405B parámetros)
  • CodeGemma - Modelo de 7B especializado para la generación de código
  • Serie Gemma - Modelos de código abierto de Google
  • Serie Mistral - Incluye Mistral 7B y Mixtral, entre otros
  • Serie Phi - Modelos pequeños y eficientes de Microsoft
  • Serie Qwen - Modelos multilingües de Alibaba
  • DeepSeek R1 - El último modelo de inferencia

Modelos destacados

  • Serie Falcon - Modelos de alto rendimiento desarrollados por TII
  • StableLM - Modelo de lenguaje estable de Stability AI
  • TinyLlama - Variante ligera de Llama
  • SmolLM - Modelo pequeño de Hugging Face

Funcionalidades principales

1. Inicio rápido

from litgpt import LLM
llm = LLM.load("microsoft/phi-2")
text = llm.generate("Fix the spelling: Every fall, the family goes to the mountains.")
print(text)

2. Ajuste fino del modelo

Soporta múltiples métodos de ajuste fino:

  • Ajuste fino completo - Entrena todos los parámetros
  • Ajuste fino LoRA - Ajuste fino de adaptación de bajo rango
  • QLoRA - Ajuste fino LoRA cuantificado
  • Ajuste fino Adapter - Ajuste fino de la capa de adaptador

Ejemplo de comando:

litgpt finetune microsoft/phi-2 \
  --data JSON \
  --data.json_path my_custom_dataset.json \
  --data.val_split_fraction 0.1 \
  --out_dir out/custom-model

3. Preentrenamiento del modelo

Soporta el entrenamiento desde cero y la continuación del preentrenamiento:

litgpt pretrain EleutherAI/pythia-160m \
  --tokenizer_dir EleutherAI/pythia-160m \
  --data TextFiles \
  --data.train_data_path "custom_texts/" \
  --train.max_tokens 10_000_000 \
  --out_dir out/custom-model

4. Despliegue del modelo

Soporta el despliegue con un solo clic como servicio web:

# Desplegar el modelo preentrenado
litgpt serve microsoft/phi-2

# Desplegar el modelo personalizado
litgpt serve out/custom-model/final

5. Evaluación del modelo

Soporta múltiples puntos de referencia de evaluación:

litgpt evaluate microsoft/phi-2 --tasks 'truthfulqa_mc2,mmlu'

6. Chat interactivo

litgpt chat microsoft/phi-2

Ventajas técnicas

Optimización del rendimiento

  • Velocidad de inferencia optimizada - Especialmente optimizado para la inferencia rápida
  • Soporte de cuantificación - Reduce la huella de memoria
  • Ejecución en GPU de baja memoria - Soporta entornos con recursos limitados
  • Escalado de nivel de producción - Soporta 1-1000+ GPU/TPU

Optimización de la memoria y el cálculo

  • Entrenamiento de precisión mixta - Soporta la mezcla de FP16, BF16, FP32
  • Puntos de control de gradiente - Reduce el uso de memoria
  • Descarga de la CPU - Maneja modelos muy grandes
  • Entrenamiento distribuido - Soporte multi-nodo multi-GPU

Entrenamiento configurado

LitGPT proporciona archivos de configuración YAML validados que cubren diferentes escenarios de entrenamiento:

litgpt finetune \
  --config https://raw.githubusercontent.com/Lightning-AI/litgpt/main/config_hub/finetune/llama-2-7b/lora.yaml

Escenarios de aplicación

Investigación y desarrollo

  • Investigación de modelos - Proporciona código legible y fácil de modificar
  • Experimentación de algoritmos - Soporta la rápida implementación de las últimas ideas de investigación
  • Pruebas de referencia - Flujo de trabajo de evaluación de modelos estandarizado

Aplicaciones empresariales

  • Modelos personalizados - Ajuste fino de modelos para escenarios de negocio específicos
  • Despliegue en producción - Despliegue de servicios de modelos de nivel empresarial
  • Optimización de costes - Reducción de los costes de cálculo mediante la cuantificación y la optimización

Educación y aprendizaje

  • Amigable para principiantes - Estructura de código clara y documentación detallada
  • Enseñanza práctica - Flujo de trabajo completo desde el entrenamiento hasta el despliegue
  • Entrenamiento en investigación - Proporciona una herramienta base fiable para los investigadores

Ecosistema comunitario

Soporte de proyectos conocidos

  • Proyecto SAMBA - Modelo de espacio de estado híbrido desarrollado por Microsoft basado en LitGPT
  • TinyLlama - Modelo pequeño de 300M parámetros entrenado con LitGPT
  • Desafío NeurIPS 2023 - Kit de herramientas oficial designado para el desafío de eficiencia LLM

Comunidad de código abierto activa

  • Actualizaciones continuas - Adición regular de nuevos modelos y características
  • Contribuciones de la comunidad - Se anima a participar a desarrolladores de todos los niveles
  • Documentación detallada - Tutoriales completos y documentación de la API

Instalación y uso

Instalación básica

pip install 'litgpt[all]'

Instalación desde el código fuente

git clone https://github.com/Lightning-AI/litgpt
cd litgpt
pip install -e '.[all]'

Flujo de trabajo básico

  1. Seleccionar modelo - Seleccionar entre más de 20 modelos soportados
  2. Preparar datos - Utilizar conjuntos de datos incorporados o datos personalizados
  3. Configurar el entrenamiento - Utilizar configuraciones preestablecidas o parámetros personalizados
  4. Ejecutar el entrenamiento - Preentrenar o ajustar el modelo
  5. Desplegar el modelo - Desplegar como servicio de producción
  6. Evaluar el modelo - Utilizar puntos de referencia estándar

Documentación técnica

LitGPT proporciona documentación técnica completa, incluyendo:

  • Guía de inicio rápido - Tutorial completo de 0 a LitGPT
  • Tutorial de ajuste fino - Incluye explicaciones detalladas de LoRA, QLoRA y Adapter
  • Guía de preentrenamiento - Flujo de trabajo completo para entrenar modelos desde cero
  • Documentación de despliegue - Mejores prácticas para el despliegue en entornos de producción
  • Optimización del rendimiento - Manejo de errores OOM y trucos de optimización de la memoria
  • Despliegue en la nube - Guía de uso de TPU y plataformas en la nube

Resumen

LitGPT es un kit de herramientas para modelos de lenguaje grandes completo y de alto rendimiento, adecuado para una variedad de escenarios de aplicación, desde la investigación hasta la producción. Con su filosofía de diseño de implementación desde cero y sin capas de abstracción, proporciona a los usuarios la máxima flexibilidad y control, al tiempo que garantiza un funcionamiento eficiente en diversas condiciones de hardware a través de ricas técnicas de optimización y opciones de configuración. Ya sean investigadores de IA, desarrolladores empresariales o estudiantes, todos pueden encontrar en LitGPT una solución que se adapte a sus necesidades.