Instalar KTransformers: LLM 70B+ en GPU de consumo

El framework Instalación de KTransformers permite ejecutar localmente modelos MoE (Mixture of Experts) de más de 600 mil millones de parámetros en una sola tarjeta RTX 4090 o 3090, trasladando los expertos inactivos a la RAM del sistema. Esta Instalación de KTransformers se basa en la descarga selectiva de los expertos MoE y aprovecha las instrucciones AVX-512 / AMX de la CPU para aliviar la carga de la GPU. Esta guía cubre los requisitos de hardware, el procedimiento de instalación paso a paso, los modelos compatibles (en particular DeepSeek V3 en GPU de consumo), el rendimiento medido y los errores comunes al desplegar un LLM 671B local.

Por qué KTransformers cambia las reglas del juego para los LLM MoE

KTransformers es un framework de Python desarrollado por el KVCache.AI Lab de la Universidad Tsinghua, publicado bajo la licencia Apache 2.0 en GitHub. Su particularidad: solo carga en VRAM los expertos MoE activos durante la inferencia, manteniendo los demás en la RAM del sistema. Para un modelo como DeepSeek V3 671B que activa solo ~37B de parámetros por token sobre sus 671B totales, la economía de VRAM es masiva.

En concreto, mientras que una inferencia convencional (vLLM, transformers) requeriría ~400 GB de VRAM en Q4 para DeepSeek V3, KTransformers permite ejecutar ese mismo modelo con:

Este enfoque compite directamente con llama.cpp y su mecanismo --n-gpu-layers, pero KTransformers va más allá en las arquitecturas MoE al enrutar cada experto al dispositivo adecuado en lugar de transferir capas completas a otro dispositivo.

Para entender los órdenes de magnitud, aquí tienes algunos modelos MoE que se vuelven accesibles mediante este enfoque:

Requisitos de hardware y software

Antes de iniciar la Instalación de KTransformers, valida tu configuración. El framework se centra específicamente en las arquitecturas MoE y requiere un equilibrio particular entre RAM y VRAM.

Hardware mínimo para DeepSeek V3 Q4_K_M :

pila de software :

Para comparar este enfoque con una ejecución tradicional íntegramente en GPU, consulta nuestra guía vLLM que detalla el paralelismo tensorial en clústeres H100.

Procedimiento de instalación paso a paso

La Instalación de KTransformers sigue una secuencia estricta. Cualquier desviación en las versiones CUDA/PyTorch rompe la compilación de los kernels CPU.

Paso 1 — Entorno Python aislado :

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

Paso 2 — PyTorch con CUDA :

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

Paso 3 — Clonar y compilar :

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

El script install.sh compila los kernels de CPU (llamafile, AMX si se detecta) e instala el wheel local. La compilación tarda entre 10 y 20 minutos según la CPU.

Paso 4 — Descarga de los pesos :

KTransformers utiliza archivos GGUF (cuantización de llama.cpp). Descarga, por ejemplo, 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

Paso 5 — Inicio de la inferencia :

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

El parámetro --cpu_infer corresponde al número de hilos de CPU dedicados a los expertos ejecutados fuera de la GPU. Ajústalo a (cores physiques - 2).

Rendimiento medido en GPU de consumo

Los números a continuación provienen del benchmark oficial KTransformers v0.2 y de informes de la comunidad. Para un LLM 671B local cuantizado Q4_K_M:

A modo de comparación, DeepSeek R1 Distill Llama 70B ejecutándose íntegramente en GPU con 2× RTX 4090 alcanza 25-30 tok/s: más rápido en términos absolutos, pero el modelo destilado obtiene peores resultados en los benchmarks de razonamiento que el modelo completo de 671B.

Benchmarks de calidad (informes oficiales de DeepSeek) :

Para profundizar en los compromisos entre calidad y velocidad, consulta DeepSeek R1 vs Llama 3.3 70B.

Modelos compatibles y limitaciones

No todos los LLM MoE tienen soporte nativo. KTransformers mantiene una lista de optimizaciones YAML por arquitectura. En el catálogo actual:

Soporte nativo confirmado :

Soporte en desarrollo o experimental :

No soportados (arquitecturas densas, sin ventajas al hacer offload):

El contexto máximo práctico sigue limitado por la RAM disponible para la caché KV: calcula unos 30 GB adicionales para 32K tokens en DeepSeek V3. Por encima de 64K tokens, la tasa de procesamiento cae drásticamente.

FAQ

P: ¿Funciona KTransformers en Mac con Apple Silicon?

No. El framework depende de CUDA para los kernels de GPU y de AVX-512/AMX para los kernels de CPU x86. En los Mac de la serie M, utiliza en su lugar llama.cpp con Metal, o MLX. Nuestro guía LLM para Mac detalla las alternativas. Un M3 Ultra de 512 GB puede ejecutar DeepSeek V3 Q4 de forma nativa sin offloading, a una velocidad estimada de 18-20 tok/s.

P: ¿Qué diferencia hay con llama.cpp en modo offload?

llama.cpp transfiere capas completas (--n-gpu-layers N), lo cual funciona para modelos densos como Llama 3.3 70B Instruct. KTransformers transfiere los expertos individuales de un MoE, lo que resulta mucho más eficiente para DeepSeek V3, donde solo se activan 8 de los 256 expertos por token. Ganancia típica: entre 3 y 5 veces más rápido que llama.cpp en DeepSeek V3 con hardware equivalente.

P: ¿Se puede hacer fine-tuning con KTransformers?

No, el framework se centra exclusivamente en la inferencia. Para realizar el ajuste fino de un MoE, consulta DeepSpeed-MoE o Unsloth (limitado a modelos densos < 70B). KTransformers no admite ni LoRA dinámica ni QLoRA. Si buscas adaptar un modelo de 70B, opta mejor por Llama 3.1 Nemotron 70B con Unsloth en QLoRA de 4 bits en una RTX 4090.

P: ¿Cuánto cuesta una configuración para DeepSeek V3 con GPU de consumo?

Presupuesto estimado (2026): RTX 4090 de segunda mano 1500 €, placa base de servidor W790 o EPYC SP5 800 €, CPU Xeon w7-2495X 2200 €, 384 GB DDR5 ECC 3000 €, NVMe 2 TB 200 €, fuente de alimentación + caja 400 €. Total: ~8000 € para ejecutar un LLM 671B local. A comparar con los ~30.000 € de un solo H100 80 GB que ni siquiera sería suficiente en precisión completa.

P: ¿Está disponible el modo servidor compatible con OpenAI?

Sí, desde la v0.2. Inicia ktransformers --server_port 10002 --model_path ... --gguf_path ... y apunta tu cliente OpenAI a http://localhost:10002/v1. Compatible con Open WebUI, Continue.dev y LiteLLM. El streaming SSE funciona, pero el function calling sigue siendo parcial (a confirmar según la versión).

P: ¿KTransformers vs SGLang para DeepSeek V3?

SGLang está orientado a despliegues de alto rendimiento con varias GPU (H100/H200) y alcanza más de 60 tok/s con DeepSeek V3 usando 8× H100. KTransformers está orientado al uso de una sola GPU de consumo con descarga de parte del modelo a la RAM, a 10-15 tok/s. Elección sencilla: SGLang si tienes un clúster, KTransformers si tienes una estación de trabajo.

Conclusión

La Instalación de KTransformers abre el acceso a modelos MoE de frontera (DeepSeek V3, R1, Kimi K2.5) en una estación de trabajo de 8000 € en lugar de un clúster H100 de 200 000 €. La contrapartida: 10-15 tok/s en lugar de 60+, pero con una calidad de respuesta equivalente a la del modelo en precisión completa. Para identificar el modelo MoE adecuado para tu VRAM y tu RAM, utiliza el configurador quelllm.fr, o explora directamente el catálogo de los 249 LLM indexados para comparar licencias y tamaños

Artículo publicado el por Mohamed Meguedmi · Fuente de datos: /api/models.json · Licencia del contenido: CC BY 4.0.

¿Tienes algún error o alguna actualización que comunicar? Colaborar.