Framework oficial da Microsoft para inferência em CPU/GPU de LLMs de 1 bit (ternários, 1,58 bit), baseado no llama.cpp.
OpenNMT/CTranslate2
Biblioteca C++ e Python que executa modelos Transformer, como Whisper, Llama e NLLB, com mais rapidez e menos memória usando quantização e kernels otimizados.
- Estrelas
- 4,716
- Forks
- 547
- Issues abertas
- 281
- Último commit
- ontem
O que é?
CTranslate2 é uma biblioteca C++ e Python para executar inferência com modelos Transformer. Ela usa um runtime próprio que aplica otimizações como quantização de pesos, fusão de camadas e reordenação de batches para reduzir a latência e o uso de memória em CPU e GPU.
A biblioteca oferece suporte a modelos encoder-decoder (por exemplo, NLLB, M2M-100, T5 e Whisper), decoder-only (como GPT-2, GPT-J, Llama, Mistral, Gemma e Qwen2) e encoder-only (BERT, DistilBERT e XLM-RoBERTa). Primeiro, os modelos precisam ser convertidos para o formato otimizado do CTranslate2. Há conversores para OpenNMT-py, OpenNMT-tf, Fairseq, Marian, OPUS-MT e Hugging Face Transformers.
A biblioteca oferece suporte a processadores x86-64 e ARM64, com backends como Intel MKL, oneDNN, OpenBLAS, Ruy e Apple Accelerate, além de disponibilizar APIs em Python e C++ com poucas dependências.
Recursos principais
- 01Oferece suporte à quantização de pesos para FP16, BF16, INT8, INT16 e AWQ INT4.
- 02Executa em CPU e GPU, incluindo processamento paralelo e assíncrono de batches em várias GPUs ou núcleos.
- 03Seleciona automaticamente conjuntos de instruções da CPU, como AVX e AVX2, durante a execução.
- 04Oferece suporte a paralelismo de tensores para distribuir modelos muito grandes entre várias GPUs.
- 05Disponibiliza APIs em Python e C++, com recursos avançados de decodificação, como conclusão de prefixo e saídas alternativas.
Casos de uso
- Servir modelos de tradução automática com menos latência e uso de memória do que em frameworks de uso geral.
- Executar reconhecimento de fala com Whisper ou LLMs da família Llama em servidores com CPU ou GPU.
- Implantar modelos Transformer quantizados em hardware ARM ou Apple.
- Integrar com um servidor web compatível com OpenAI para disponibilizar modelos CTranslate2 por meio de uma API conhecida.
Início rápido
- 1
Instale o pacote Python com pip
pip install ctranslate2 - 2
Carregue um modelo convertido e execute tradução ou geração em Python
Antes de usar
- Antes do uso, os modelos precisam ser convertidos de um framework compatível para o formato do CTranslate2.
- O suporte a GPU AMD ROCm requer wheels específicos da página de lançamentos.
Tópicos
Perguntas frequentes
- O que é CTranslate2?
- Biblioteca C++ e Python que executa modelos Transformer, como Whisper, Llama e NLLB, com mais rapidez e menos memória usando quantização e kernels otimizados. CTranslate2 é uma biblioteca C++ e Python para executar inferência com modelos Transformer. Ela usa um runtime próprio que aplica otimizações como quantização de pesos, fusão de camadas e reordenação de batches para reduzir a latência e o uso de memória em CPU e GPU.
- CTranslate2 é gratuito? Qual é a licença?
- CTranslate2 é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- CTranslate2 ainda é mantido?
- Manutenção ativa. O último commit de CTranslate2 foi em 21 de out. de 2026.
- Para que posso usar CTranslate2?
- Servir modelos de tradução automática com menos latência e uso de memória do que em frameworks de uso geral. Executar reconhecimento de fala com Whisper ou LLMs da família Llama em servidores com CPU ou GPU. Implantar modelos Transformer quantizados em hardware ARM ou Apple. Integrar com um servidor web compatível com OpenAI para disponibilizar modelos CTranslate2 por meio de uma API conhecida.
- Como instalar CTranslate2?
- Instale o pacote Python com pip: pip install ctranslate2 Carregue um modelo convertido e execute tradução ou geração em Python
- Onde consigo CTranslate2?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/OpenNMT/CTranslate2
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Fork do llama.cpp focado em acelerar a inferência em CPU, com tipos extras de quantização e recursos para executar LLMs GGUF localmente.
Engine de inferência de LLM em Rust, com APIs compatíveis com OpenAI e Anthropic, quantização, modelos multimodais e ferramentas para agentes.
Biblioteca nativa do PyTorch para quantização, esparsidade e treinamento em float8, abrangendo treinamento de modelos e inferência em produção.
Framework Python para comprimir redes neurais com quantização, pruning e esparsidade, acelerando a inferência no OpenVINO, PyTorch e ONNX.
Biblioteca e servidor rápidos e eficientes em memória para executar e servir modelos de linguagem grandes com uma API compatível com a OpenAI.