Repolode
Lightning-AI

Lightning-AI/litData

Biblioteca Python que otimiza datasets em um formato dividido em chunks para fazer streaming rápido do armazenamento local ou na nuvem durante o treinamento de modelos.

Estrelas
617
Forks
111
Issues abertas
53
Último commit
há 6 dias

O que é?

O LitData resolve o problema do treinamento lento causado pelo carregamento de dados. Datasets grandes, milhões de arquivos pequenos ou leituras lentas da nuvem podem deixar as GPUs ociosas. O LitData oferece ferramentas para pré-processar datasets em seu próprio formato binário dividido em chunks, que permite fazer streaming com eficiência do S3, GCS, Azure, R2, Hugging Face Hub ou disco local.

A biblioteca oferece várias opções. Arquivos brutos, como imagens, áudio ou JSONL, podem ser transmitidos diretamente com StreamingRawDataset e um DataLoader padrão do PyTorch, sem etapa de conversão. Para obter o máximo throughput, optimize() converte os dados em chunks que são lidos por StreamingDataset e StreamingDataLoader, com suporte a embaralhamento, drop_last e retomada do streaming. Um operador map() distribui tarefas gerais de processamento, como redimensionar imagens, criar embeddings ou executar inferência, entre várias máquinas.

O LitData também inclui utilitários para datasets do Hugging Face, wrappers tipados para imagens, áudio, vídeo e PDFs, serializers personalizados e suporte a grafos do PyTorch Geometric.

Recursos principais

  • 01Converte datasets para um formato binário dividido em chunks e otimizado para streaming.
  • 02Faz streaming do S3, GCS, Azure, R2, Hugging Face Hub e caminhos locais.
  • 03Faz streaming de arquivos brutos, como imagens ou áudio, sem etapa de pré-processamento.
  • 04Permite pausar e retomar o streaming de dados no meio de uma época.
  • 05Oferece um operador map para processamento paralelo entre máquinas.

Casos de uso

  • Treinar com um dataset grande demais para caber no disco local, transmitindo-o do armazenamento na nuvem.
  • Substituir milhões de arquivos pequenos de imagem por dados divididos em chunks para reduzir a sobrecarga de I/O.
  • Fazer pré-processamento distribuído, como redimensionar imagens ou gerar embeddings antes do treinamento.
  • Carregar datasets do Hugging Face em um formato mais rápido para execuções repetidas de treinamento.

Início rápido

  1. 1

    Instale o LitData com pip

    pip install litdata
  2. 2

    Transmita arquivos existentes diretamente com StreamingRawDataset ou otimize conjuntos de dados em partes para usar com StreamingDataset

Antes de usar

  • É necessário ter o PyTorch 2.4 ou uma versão mais recente.
  • Para transmitir na velocidade máxima, é preciso otimizar os dados previamente, uma única vez.

Tópicos

Perguntas frequentes

O que é litData?
Biblioteca Python que otimiza datasets em um formato dividido em chunks para fazer streaming rápido do armazenamento local ou na nuvem durante o treinamento de modelos. O LitData resolve o problema do treinamento lento causado pelo carregamento de dados. Datasets grandes, milhões de arquivos pequenos ou leituras lentas da nuvem podem deixar as GPUs ociosas. O LitData oferece ferramentas para pré-processar datasets em seu próprio formato binário dividido em chunks, que permite fazer streaming com eficiência do S3, GCS, Azure, R2, Hugging Face Hub ou disco local.
litData é gratuito? Qual é a licença?
litData é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
litData ainda é mantido?
Manutenção ativa. O último commit de litData foi em 15 de out. de 2026.
Para que posso usar litData?
Treinar com um dataset grande demais para caber no disco local, transmitindo-o do armazenamento na nuvem. Substituir milhões de arquivos pequenos de imagem por dados divididos em chunks para reduzir a sobrecarga de I/O. Fazer pré-processamento distribuído, como redimensionar imagens ou gerar embeddings antes do treinamento. Carregar datasets do Hugging Face em um formato mais rápido para execuções repetidas de treinamento.
Como instalar litData?
Instale o LitData com pip: pip install litdata Transmita arquivos existentes diretamente com StreamingRawDataset ou otimize conjuntos de dados em partes para usar com StreamingDataset
Onde consigo litData?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Lightning-AI/litData

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados