Repolode
openvinotoolkit

openvinotoolkit/nncf

Framework Python para comprimir redes neurais com quantização, pruning e esparsidade, acelerando a inferência no OpenVINO, PyTorch e ONNX.

Estrelas
1,211
Forks
309
Issues abertas
50
Último commit
anteontem

O que é?

NNCF (Neural Network Compression Framework) é um pacote Python do toolkit OpenVINO que reduz o tamanho e o custo da inferência de redes neurais, buscando manter pequena a perda de acurácia. Ele oferece algoritmos pós-treinamento, como quantização pós-treinamento de 8 bits e compressão de pesos de LLMs, que precisam apenas de um modelo e de um pequeno conjunto de dados para calibração, além de métodos aplicados durante o treinamento, como Quantization Aware Training, quantização de pesos sem ativação baseada em LoRA e pruning.

O NNCF aceita modelos de PyTorch, TorchFX, ONNX e OpenVINO, sendo o OpenVINO o backend preferencial para quantização pós-treinamento. Sua API é compartilhada entre os algoritmos, e ele pode exportar modelos PyTorch comprimidos para os formatos ONNX ou TensorFlow, para uso com OpenVINO.

O projeto é usado como backend de compressão pelo HuggingFace Optimum Intel, Ultralytics, ExecuTorch e pela integração do OpenVINO com torch.compile. Também inclui notebooks e scripts de exemplo que abrangem classificação de imagens, detecção de objetos, segmentação e LLMs.

Recursos principais

  • 01Quantização pós-treinamento de 8 bits que requer apenas um pequeno conjunto de dados para calibração.
  • 02Compressão de pesos para LLMs, incluindo busca de hiperparâmetros e estimativa de escala.
  • 03Quantization-aware training e pruning para modelos PyTorch.
  • 04API comum para os backends OpenVINO, PyTorch, TorchFX e ONNX.
  • 05Exportação de modelos PyTorch comprimidos para os formatos ONNX ou TensorFlow.

Casos de uso

  • Reduzir o tamanho de um modelo de visão computacional ou NLP antes de implantá-lo com OpenVINO em hardware Intel.
  • Comprimir pesos de LLMs para INT4 e viabilizar uma inferência local mais leve.
  • Recuperar a acurácia após a quantização com fine-tuning quantization-aware no PyTorch.
  • Adicionar quantização a um pipeline existente de exportação para ONNX ou PyTorch.

Início rápido

  1. 1

    Instale o NNCF pelo PyPI, seguindo o guia de instalação do README

  2. 2

    Prepare seu modelo e um pequeno conjunto de dados de calibração (cerca de 300 amostras)

  3. 3

    Execute nncf.quantize no modelo com o conjunto de dados de calibração, conforme mostrado na seção Usage

Antes de usar

  • Os badges do README indicam que a versão necessária é Python 3.11 ou posterior.
  • O suporte do TorchFX à compressão pós-treinamento e à esparsidade de ativações no PyTorch está marcado como experimental.

Tópicos

Perguntas frequentes

O que é nncf?
Framework Python para comprimir redes neurais com quantização, pruning e esparsidade, acelerando a inferência no OpenVINO, PyTorch e ONNX. NNCF (Neural Network Compression Framework) é um pacote Python do toolkit OpenVINO que reduz o tamanho e o custo da inferência de redes neurais, buscando manter pequena a perda de acurácia. Ele oferece algoritmos pós-treinamento, como quantização pós-treinamento de 8 bits e compressão de pesos de LLMs, que precisam apenas de um modelo e de um pequeno conjunto de dados para calibração, além de métodos aplicados durante o treinamento, como Quantization Aware Training, quantização de pesos sem ativação baseada em LoRA e pruning.
nncf é gratuito? Qual é a licença?
nncf é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
nncf ainda é mantido?
Manutenção ativa. O último commit de nncf foi em 19 de out. de 2026.
Para que posso usar nncf?
Reduzir o tamanho de um modelo de visão computacional ou NLP antes de implantá-lo com OpenVINO em hardware Intel. Comprimir pesos de LLMs para INT4 e viabilizar uma inferência local mais leve. Recuperar a acurácia após a quantização com fine-tuning quantization-aware no PyTorch. Adicionar quantização a um pipeline existente de exportação para ONNX ou PyTorch.
Como instalar nncf?
Instale o NNCF pelo PyPI, seguindo o guia de instalação do README Prepare seu modelo e um pequeno conjunto de dados de calibração (cerca de 300 amostras) Execute nncf.quantize no modelo com o conjunto de dados de calibração, conforme mostrado na seção Usage
Onde consigo nncf?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/openvinotoolkit/nncf

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

Projetos relacionados