Home
Login

Caixa de ferramentas de modelo de linguagem grande de alto desempenho, suporta pré-treinamento, ajuste fino e implantação de mais de 20 modelos.

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

LitGPT - Caixa de Ferramentas de Alto Desempenho para Grandes Modelos de Linguagem

Visão Geral do Projeto

LitGPT é uma caixa de ferramentas de código aberto para grandes modelos de linguagem desenvolvida pela Lightning AI, que oferece mais de 20 soluções de alto desempenho para pré-treinamento, ajuste fino e implantação em escala de grandes modelos de linguagem. O projeto é construído com base no Lightning Fabric, expandindo o Lit-LLaMA e o nanoGPT, com foco em fornecer capacidades de treinamento e implantação de LLM de nível empresarial.

Características Principais

✅ Características de Nível Empresarial

  • Licença Apache 2.0 - Suporta uso empresarial ilimitado
  • Amigável ao Desenvolvedor - Implementação de arquivo único sem camadas de abstração, facilitando a depuração
  • Otimização de Desempenho - Projetado para máximo desempenho, redução de custos e aceleração do treinamento
  • Receitas Validadas - Receitas de treinamento/ajuste fino altamente otimizadas testadas em escala empresarial

✅ Características Técnicas Avançadas

  • Implementação do Zero - Todos os modelos são escritos do zero, sem camadas de abstração, controle total
  • Flash Attention v2 - A mais recente otimização do mecanismo de atenção
  • Suporte Multi-GPU - Implementado através de Paralelismo de Dados Totalmente Fragmentado (FSDP)
  • Otimização de Memória - Descarregamento opcional de CPU e suporte TPU/XLA
  • Técnicas de Quantização - Suporte para ponto flutuante de 4 bits, inteiro de 8 bits e quantização dupla
  • Ajuste Fino Eficiente em Parâmetros - Suporte para LoRA, QLoRA, Adapter e Adapter v2

Modelos Suportados

LitGPT suporta mais de 20 modelos de linguagem grandes, incluindo:

Principais Famílias de Modelos

  • Família Llama - Llama 3, 3.1, 3.2, 3.3 (1B-405B parâmetros)
  • CodeGemma - Modelo de 7B especificamente para geração de código
  • Família Gemma - Modelos de código aberto do Google
  • Família Mistral - Incluindo Mistral 7B e Mixtral, entre outros
  • Família Phi - Modelos pequenos e eficientes da Microsoft
  • Família Qwen - Modelos multilíngues da Alibaba
  • DeepSeek R1 - O mais recente modelo de inferência

Modelos em Destaque

  • Família Falcon - Modelos de alto desempenho desenvolvidos pela TII
  • StableLM - Modelo de linguagem estável da Stability AI
  • TinyLlama - Variante Llama leve
  • SmolLM - Modelo pequeno da Hugging Face

Funcionalidades Principais

1. Início 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 do Modelo

Suporta vários métodos de ajuste fino:

  • Ajuste Fino Completo - Treina todos os parâmetros
  • Ajuste Fino LoRA - Ajuste fino de adaptação de baixo posto
  • QLoRA - Ajuste fino LoRA quantizado
  • Ajuste Fino Adapter - Ajuste fino da camada de adaptador

Comando de exemplo:

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. Pré-Treinamento do Modelo

Suporta treinamento do zero e continuação do pré-treinamento:

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. Implantação do Modelo

Suporta implantação com um clique como um serviço Web:

# Implantação de modelo pré-treinado
litgpt serve microsoft/phi-2

# Implantação de modelo personalizado
litgpt serve out/custom-model/final

5. Avaliação do Modelo

Suporta vários benchmarks de avaliação:

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

6. Chat Interativo

litgpt chat microsoft/phi-2

Vantagens Técnicas

Otimização de Desempenho

  • Velocidade de Inferência Otimizada - Especificamente otimizado para inferência rápida
  • Suporte à Quantização - Reduz o uso de memória
  • Execução de GPU com Pouca Memória - Suporta ambientes com recursos limitados
  • Escalabilidade de Nível de Produção - Suporta 1-1000+ GPU/TPU

Otimização de Memória e Computação

  • Treinamento de Precisão Mista - Suporta mistura FP16, BF16, FP32
  • Checkpoint de Gradiente - Reduz o uso de memória
  • Descarregamento de CPU - Lida com modelos extra grandes
  • Treinamento Distribuído - Suporte multi-nó multi-GPU

Treinamento Configurável

LitGPT fornece arquivos de configuração YAML validados, cobrindo diferentes cenários de treinamento:

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

Cenários de Aplicação

Pesquisa e Desenvolvimento

  • Pesquisa de Modelos - Fornece código legível e facilmente modificável
  • Experimentação de Algoritmos - Suporta a rápida implementação das mais recentes ideias de pesquisa
  • Benchmark - Processo de avaliação de modelo padronizado

Aplicações Empresariais

  • Modelos Personalizados - Ajuste fino de modelos para cenários de negócios específicos
  • Implantação de Produção - Implantação de serviços de modelo de nível empresarial
  • Otimização de Custos - Reduz custos de computação através de quantização e otimização

Educação e Aprendizagem

  • Amigável para Iniciantes - Estrutura de código clara e documentação detalhada
  • Ensino Prático - Fluxo completo do treinamento à implantação
  • Treinamento em Pesquisa - Fornece ferramentas básicas confiáveis para pesquisadores

Ecossistema da Comunidade

Suporte a Projetos Conhecidos

  • Projeto SAMBA - Modelo de espaço de estado híbrido desenvolvido pela Microsoft com base no LitGPT
  • TinyLlama - Modelo pequeno de 300M parâmetros treinado usando LitGPT
  • Desafio NeurIPS 2023 - Kit de ferramentas oficial designado para o desafio de eficiência LLM

Comunidade de Código Aberto Ativa

  • Atualizações Contínuas - Adição regular de novos modelos e funcionalidades
  • Contribuições da Comunidade - Boas-vindas a desenvolvedores de todos os níveis para participar
  • Documentação Detalhada - Tutoriais abrangentes e documentação da API

Instalação e Uso

Instalação Básica

pip install 'litgpt[all]'

Instalação a partir do Código Fonte

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

Fluxo de Uso Básico

  1. Escolha um Modelo - Escolha entre mais de 20 modelos suportados
  2. Prepare os Dados - Use conjuntos de dados integrados ou dados personalizados
  3. Configure o Treinamento - Use configurações predefinidas ou parâmetros personalizados
  4. Execute o Treinamento - Pré-treine ou ajuste fino o modelo
  5. Implante o Modelo - Implante como um serviço de produção
  6. Avalie o Modelo - Use benchmarks padrão

Documentação Técnica

LitGPT fornece documentação técnica completa, incluindo:

  • Guia de Início Rápido - Tutorial completo de 0 ao LitGPT
  • Tutorial de Ajuste Fino - Inclui instruções detalhadas para LoRA, QLoRA e Adapter
  • Guia de Pré-Treinamento - Fluxo completo para treinar modelos do zero
  • Documentação de Implantação - Melhores práticas para implantação em ambientes de produção
  • Otimização de Desempenho - Tratamento de erros OOM e dicas de otimização de memória
  • Implantação na Nuvem - Guia de uso de TPU e plataformas de nuvem

Resumo

LitGPT é uma caixa de ferramentas de modelo de linguagem grande abrangente e de alto desempenho, adequada para uma variedade de cenários de aplicação, desde pesquisa até produção. Com sua filosofia de design de implementação do zero e sem camadas de abstração, ele fornece aos usuários máxima flexibilidade e controle, ao mesmo tempo em que garante operação eficiente em várias condições de hardware por meio de ricas tecnologias de otimização e opções de configuração. Seja um pesquisador de IA, um desenvolvedor empresarial ou um aluno, todos podem encontrar uma solução que atenda às suas necessidades no LitGPT.