Instalar KTransformers: LLM de 70B+ em GPU para o consumidor final

O framework Instalação do KTransformers permite executar localmente modelos MoE (Mistura de Especialistas) com mais de 600 bilhões de parâmetros em uma única placa RTX 4090 ou 3090, transferindo os especialistas inativos para a RAM da CPU. Esta Instalação do KTransformers baseia-se no offloading seletivo dos especialistas MoE e utiliza as instruções AVX-512 / AMX do CPU para aliviar a carga da GPU. Este guia abrange os pré-requisitos de hardware, o procedimento de instalação passo a passo, os modelos compatíveis (especialmente DeepSeek V3 em GPU de consumo), o desempenho medido e as armadilhas comuns na implantação de um LLM 671B local.

Por que KTransformers muda a dinâmica para os LLM MoE

KTransformers é um framework Python desenvolvido pelo KVCache.AI Lab da Universidade Tsinghua, publicado sob a licença Apache 2.0 no GitHub. Sua particularidade: ele carrega apenas os especialistas MoE ativos na VRAM durante a inferência, mantendo os outros na RAM do sistema. Para um modelo como DeepSeek V3 671B que ativa apenas ~37B de parâmetros por token em seus 671B totais, a economia de VRAM é massiva.

Na prática, enquanto uma inferência convencional (vLLM, transformers) exigiria ~400 GB de VRAM em Q4 para DeepSeek V3, KTransformers permite rodar esse mesmo modelo com:

Essa abordagem concorre diretamente llama.cpp e seu mecanismo --n-gpu-layers, mas o KTransformers vai além nas arquiteturas MoE, roteando cada especialista para o dispositivo correto em vez de transferir camadas inteiras para outro dispositivo.

Para dar uma ideia das ordens de grandeza, aqui estão alguns modelos MoE que se tornam acessíveis com essa abordagem:

Pré-requisitos de hardware e software

Antes de iniciar a Instalação do KTransformers, valide sua configuração. O framework foi desenvolvido especificamente para arquiteturas MoE e exige um equilíbrio específico entre RAM e VRAM.

Hardware mínimo para DeepSeek V3 Q4_K_M :

stack de software :

Para comparar essa abordagem com a execução tradicional inteiramente em GPU, consulte nosso guia vLLM que detalha o tensor parallelism em clusters H100.

Procedimento de instalação passo a passo

La Instalação do KTransformers segue uma sequência estrita. Qualquer desvio nas versões CUDA/PyTorch quebra a compilação dos kernels de CPU.

Etapa 1 — Ambiente Python isolado :

conda create -n ktrans python=3.11
conda activate ktrans
conda install -c conda-forge libstdcxx-ng

Etapa 2 — PyTorch com CUDA :

pip install torch==2.4.0 --index-url https://download.pytorch.org/whl/cu124
pip install packaging ninja cpufeature numpy

Etapa 3 — Clonagem e compilação :

git clone https://github.com/kvcache-ai/ktransformers.git
cd ktransformers
git submodule update --init --recursive
bash install.sh

O script install.sh compila os kernels de CPU (llamafile, AMX se detectado) e instala o wheel local. A compilação leva de 10 a 20 minutos dependendo do processador.

Etapa 4 — Download dos pesos :

KTransformers utiliza arquivos GGUF (quantização de llama.cpp). Baixe, por exemplo, DeepSeek-V3-Q4_K_M.gguf depuis Hugging Face :

huggingface-cli download unsloth/DeepSeek-V3-GGUF \
  --include "DeepSeek-V3-Q4_K_M*" \
  --local-dir ./models/deepseek-v3-q4

Etapa 5 — Início da inferência :

python -m ktransformers.local_chat \
  --model_path deepseek-ai/DeepSeek-V3 \
  --gguf_path ./models/deepseek-v3-q4 \
  --cpu_infer 48 \
  --max_new_tokens 1024

O parâmetro --cpu_infer corresponde ao número de threads da CPU dedicadas aos especialistas transferidos para a CPU. Ajuste-o para (cores physiques - 2).

Desempenho medido em GPU de consumo

Os números abaixo são extraídos do benchmark oficial KTransformers v0.2 e de relatos da comunidade. Para um LLM 671B local quantizado Q4_K_M:

Como comparação, DeepSeek R1 Distill Llama 70B rodando inteiramente nas GPUs em 2× RTX 4090 atinge 25-30 tok/s — mais rápido em termos absolutos, mas o modelo destilado fica atrás do modelo completo de 671B nos benchmarks de raciocínio.

Benchmarks de qualidade (relatórios oficiais DeepSeek) :

Para entender melhor os compromissos entre qualidade e velocidade, veja DeepSeek R1 vs Llama 3.3 70B.

Modelos compatíveis e limitações

Nem todos os LLM MoE são suportados nativamente. O KTransformers mantém uma lista de otimizações YAML por arquitetura. No catálogo atual:

Suporte nativo confirmado :

Suporte em desenvolvimento ou experimental :

Não suportados (arquiteturas densas, sem vantagem em fazer offload):

O contexto máximo prático continua limitado pela RAM disponível para o KV-cache: conte com ~30 GB adicionais para 32K tokens no DeepSeek V3. Acima de 64K tokens, o throughput cai fortemente.

FAQ

P: O KTransformers funciona em Macs com Apple Silicon?

Não. O framework depende de CUDA para os kernels de GPU e de AVX-512/AMX para os kernels de CPU x86. Em Macs com chips da série M, use como alternativa llama.cpp com Metal, ou MLX. O nosso guia de LLM no Mac detalha as alternativas. Um M3 Ultra com 512 GB pode rodar DeepSeek V3 Q4 nativamente sem offloading, a uma velocidade estimada de 18-20 tok/s.

P: Qual a diferença em relação ao llama.cpp em modo offload?

O llama.cpp faz offload de camadas inteiras (--n-gpu-layers N), o que funciona para modelos densos como Llama 3.3 70B Instruct. O KTransformers faz o offload dos especialistas individuais de um MoE, o que é muito mais eficiente para DeepSeek V3, onde apenas 8 especialistas entre 256 são ativados por token. Ganho típico: 3 a 5 vezes mais rápido que llama.cpp em DeepSeek V3 com hardware equivalente.

P: É possível fazer fine-tuning com KTransformers?

Não, o framework foca exclusivamente na inferência. Para fazer o ajuste fino de um MoE, veja DeepSpeed-MoE ou Unsloth (limitado a modelos densos < 70B). KTransformers não suporta LoRA dinâmica nem QLoRA. Se você busca adaptar um modelo de 70B, prefira Llama 3.1 Nemotron 70B com Unsloth em QLoRA 4-bit na RTX 4090.

P: Quanto custa uma configuração para DeepSeek V3 com GPU de consumo?

Orçamento estimado (2026): RTX 4090 de segunda mão 1500€, placa-mãe de servidor W790 ou EPYC SP5 800€, CPU Xeon w7-2495X 2200€, 384 GB DDR5 ECC 3000€, NVMe 2 TB 200€, fonte + gabinete 400€. Total: ~8000€ para executar um LLM 671B local. Em comparação com os ~30.000€ de um único H100 80 GB, que nem mesmo seria suficiente em precisão total.

P: O modo servidor compatível com OpenAI está disponível?

Sim, desde a v0.2. Execute ktransformers --server_port 10002 --model_path ... --gguf_path ... e aponte seu cliente OpenAI para http://localhost:10002/v1. Compatível com Open WebUI, Continue.dev e LiteLLM. O streaming SSE funciona, mas o function calling permanece parcial (a confirmar conforme a versão).

P: KTransformers versus SGLang para DeepSeek V3?

SGLang visa implantações de alto desempenho com várias GPUs (H100/H200) e atinge 60+ tok/s no DeepSeek V3 com 8× H100. KTransformers visa o uso de uma única GPU de consumo com offloading para a RAM, a 10-15 tok/s. Escolha simples: SGLang se você tem um cluster, KTransformers se você tem uma estação de trabalho.

Conclusão

La Instalação do KTransformers abre o acesso aos modelos MoE de fronteira (DeepSeek V3, R1, Kimi K2.5) em uma estação de trabalho de 8 000 € em vez de um cluster H100 de 200 000 €. A contrapartida: 10-15 tok/s em vez de 60+, mas com qualidade de resposta equivalente à do modelo em precisão total. Para identificar o modelo MoE adequado à sua VRAM e à sua RAM, acesse o configurador QualLLM, ou explore diretamente o catálogo dos 249 LLM indexados para comparar licenças e tamanhos.

Artigo publicado em por Mohamed Meguedmi · Fonte de dados: /api/models.json · Licença de conteúdo: CC BY 4.0.

Algum erro ou alguma atualização para informar? Contribuir.