<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Inference Optimization on KnightLi Blog</title>
        <link>https://knightli.com/es/tags/inference-optimization/</link>
        <description>Recent content in Inference Optimization on KnightLi Blog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>es</language>
        <lastBuildDate>Wed, 22 Apr 2026 21:47:34 +0800</lastBuildDate><atom:link href="https://knightli.com/es/tags/inference-optimization/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Una GPU de 16GB aún puede ejecutar modelos 35B: estrategias de compresión VRAM para modelos MoE en LM Studio</title>
        <link>https://knightli.com/es/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</link>
        <pubDate>Wed, 22 Apr 2026 21:47:34 +0800</pubDate>
        
        <guid>https://knightli.com/es/2026/04/22/16gb-gpu-run-35b-moe-models-in-lm-studio/</guid>
        <description>&lt;p&gt;Mucha gente piensa que 16GB de VRAM es el punto donde el despliegue local de LLMs se queda más o menos en modelos 12B a 14B, y que cualquier cosa más grande se vuelve demasiado dolorosa incluso con cuantización. Esa visión es comprensible, pero no es el techo real de una GPU de 16GB.&lt;/p&gt;
&lt;p&gt;Si eliges bien el modelo y configuras bien los parámetros, una GPU de 16GB no tiene por qué limitarse a modelos pequeños. Un enfoque representativo es usar modelos &lt;code&gt;MoE&lt;/code&gt; dentro de &lt;code&gt;LM Studio&lt;/code&gt; con una estrategia sensata de descarga, de modo que modelos de clase 35B sigan funcionando a una velocidad realmente usable.&lt;/p&gt;
&lt;h2 id=&#34;01-por-qué-una-gpu-de-16gb-no-necesariamente-se-limita-a-12b-14b&#34;&gt;01 Por qué una GPU de 16GB no necesariamente se limita a 12B-14B
&lt;/h2&gt;&lt;p&gt;La idea central es simple: el tamaño de VRAM importa, pero la arquitectura del modelo importa igual.&lt;/p&gt;
&lt;p&gt;Si intentas meter un modelo dense estándar en una GPU de 16GB, chocarás con el límite rápidamente. Estos modelos suelen involucrar todos los parámetros durante inferencia, así que la presión de VRAM y ancho de banda sube de inmediato.&lt;/p&gt;
&lt;p&gt;Pero los modelos &lt;code&gt;MoE&lt;/code&gt; son distintos. Su número total de parámetros puede ser grande, mientras solo una parte de los parámetros expertos se activa en cada paso de inferencia. Tomando como ejemplo un modelo de clase 35B: aunque el total de parámetros es alto, el número real que participa en cada paso es mucho menor, así que su requisito real de VRAM no es tan extremo como muchos asumen.&lt;/p&gt;
&lt;p&gt;Por eso una GPU de 16GB todavía deja cierto margen de trabajo.&lt;/p&gt;
&lt;h2 id=&#34;02-conclusión-práctica-clave-los-modelos-moe-35b-pueden-correr-sorprendentemente-rápido&#34;&gt;02 Conclusión práctica clave: los modelos MoE 35B pueden correr sorprendentemente rápido
&lt;/h2&gt;&lt;p&gt;Un caso representativo es un modelo &lt;code&gt;MoE&lt;/code&gt; cuantizado como &lt;code&gt;Qwen 3.5 35B A3B&lt;/code&gt;. Con una GPU de 16GB y los ajustes correctos en &lt;code&gt;LM Studio&lt;/code&gt;, la cuantización &lt;code&gt;Q6&lt;/code&gt; puede superar los 30 &lt;code&gt;tokens/s&lt;/code&gt;, y &lt;code&gt;Q4&lt;/code&gt; a veces prueba incluso más alto.&lt;/p&gt;
&lt;p&gt;Ese resultado importa no solo porque el modelo &amp;ldquo;corre&amp;rdquo;, sino porque la velocidad ya está en un rango claramente usable.&lt;/p&gt;
&lt;p&gt;En comparación, modelos grandes de escala similar que no son &lt;code&gt;MoE&lt;/code&gt; suelen sufrir overflow de VRAM y caídas bruscas de velocidad en una GPU de 16GB. En otras palabras, el resultado no se determina solo por el número de parámetros. Importa cómo se usan esos parámetros durante inferencia.&lt;/p&gt;
&lt;h2 id=&#34;03-en-lm-studio-la-clave-no-es-un-solo-parámetro&#34;&gt;03 En LM Studio, la clave no es un solo parámetro
&lt;/h2&gt;&lt;p&gt;Si quieres que este tipo de modelo corra con fluidez en una GPU de 16GB, el truco real no es suerte. Es ajustar correctamente dos parámetros:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;GPU Offload&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;el ajuste que fuerza parte de las capas expertas a memoria CPU&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;El primero es fácil de entender. &lt;code&gt;GPU Offload&lt;/code&gt; básicamente se empuja lo más alto posible para que el modelo priorice cálculo en GPU.&lt;/p&gt;
&lt;p&gt;El segundo es la clave. No es el enfoque tradicional de &amp;ldquo;tomar prestada memoria del sistema cuando se desborda la VRAM&amp;rdquo;. En su lugar, coloca proactivamente parte de las capas expertas en memoria CPU para reducir uso de VRAM desde el inicio. Como los modelos &lt;code&gt;MoE&lt;/code&gt; no activan todos los expertos en cada paso, mover algunos expertos a memoria no perjudica la velocidad global tanto como muchos esperarían.&lt;/p&gt;
&lt;p&gt;Una forma más segura de ajustarlo es empezar en un rango y luego afinar gradualmente según tu máquina:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;empezar con valores relacionados entre &lt;code&gt;20&lt;/code&gt; y &lt;code&gt;35&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;luego ajustar según uso de VRAM y presión de memoria&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En el fondo, este método usa memoria del sistema para recuperar margen de VRAM.&lt;/p&gt;
&lt;h2 id=&#34;04-puede-seguir-funcionando-a-128k-de-contexto-y-contextos-menores-reducen-más-la-vram&#34;&gt;04 Puede seguir funcionando a 128K de contexto, y contextos menores reducen más la VRAM
&lt;/h2&gt;&lt;p&gt;Otro punto interesante es que incluso con longitud de contexto en &lt;code&gt;128K&lt;/code&gt;, un modelo &lt;code&gt;MoE&lt;/code&gt; de clase 35B puede mantener una velocidad relativamente alta.&lt;/p&gt;
&lt;p&gt;Eso dice algo importante: el cuello de botella de una GPU de 16GB no es tan rígido como muchos imaginan. Especialmente en una herramienta local como &lt;code&gt;LM Studio&lt;/code&gt;, la pregunta real no suele ser simplemente si corre o no, sino:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;si aceptas intercambiar más memoria del sistema por menos uso de VRAM&lt;/li&gt;
&lt;li&gt;si aceptas acortar la longitud de contexto&lt;/li&gt;
&lt;li&gt;si aceptas distintos compromisos de capacidad entre niveles de cuantización&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si reduces el contexto de &lt;code&gt;128K&lt;/code&gt; a &lt;code&gt;64K&lt;/code&gt; o &lt;code&gt;32K&lt;/code&gt;, la presión de VRAM baja aún más. Eso significa que algunos modelos &lt;code&gt;MoE&lt;/code&gt; de clase 35B podrían incluso correr, con dificultad, en GPUs con menos VRAM, aunque velocidad y presión de memoria tendrán que reequilibrarse.&lt;/p&gt;
&lt;h2 id=&#34;05-el-coste-mucha-más-demanda-de-ram-y-memoria-virtual&#34;&gt;05 El coste: mucha más demanda de RAM y memoria virtual
&lt;/h2&gt;&lt;p&gt;Este setup no es rendimiento gratis.&lt;/p&gt;
&lt;p&gt;Lo que debes vigilar es que, al comprimir más la presión de VRAM, el uso de RAM del sistema sube notablemente, y también la presión de memoria virtual. En otras palabras, no eliminas el coste: lo desplazas desde la GPU hacia RAM y swap en disco.&lt;/p&gt;
&lt;p&gt;Si quieres probarlo, revisa primero:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;si tu RAM del sistema es suficiente&lt;/li&gt;
&lt;li&gt;si tu asignación de memoria virtual es suficiente&lt;/li&gt;
&lt;li&gt;si demasiadas apps de fondo ya consumen recursos&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si esas condiciones no están, quizá no obtengas &amp;ldquo;35B corriendo rápido&amp;rdquo;, sino una máquina lenta en todo.&lt;/p&gt;
&lt;h2 id=&#34;06-una-cuantización-más-agresiva-no-siempre-es-mejor&#34;&gt;06 Una cuantización más agresiva no siempre es mejor
&lt;/h2&gt;&lt;p&gt;Hay otro compromiso práctico. La cuantización de menos bits suele ahorrar más VRAM, pero eso no la convierte automáticamente en la mejor opción.&lt;/p&gt;
&lt;p&gt;La conclusión práctica es que algunos modelos corren más rápido en &lt;code&gt;Q4&lt;/code&gt;, pero su capacidad original también puede degradarse más. En comparación, &lt;code&gt;Q6&lt;/code&gt; tiende a equilibrar mejor velocidad y retención de capacidad. Así que la elección correcta depende de qué te importe más:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;máxima velocidad y encajar en VRAM&lt;/li&gt;
&lt;li&gt;o preservar más capacidad original del modelo&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Esas dos prioridades no siempre llevan a la misma cuantización.&lt;/p&gt;
&lt;h2 id=&#34;07-qué-modelos-vale-la-pena-probar&#34;&gt;07 Qué modelos vale la pena probar
&lt;/h2&gt;&lt;p&gt;Desde este ángulo, lo mejor no es perseguir ciegamente más parámetros, sino buscar primero modelos que encajen con esta estrategia:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;modelos construidos sobre arquitectura &lt;code&gt;MoE&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;modelos bien soportados en &lt;code&gt;LM Studio&lt;/code&gt; y con variantes cuantizadas completas&lt;/li&gt;
&lt;li&gt;modelos con ventajas claras en contexto largo o seguimiento de instrucciones&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La idea no se detiene en un único modelo &lt;code&gt;MoE&lt;/code&gt; 35B. También se extiende a modelos experimentales con memoria de contexto largo más fuerte, mejor seguimiento de instrucciones o variantes cuantizadas más ligeras con gran velocidad.&lt;/p&gt;
&lt;p&gt;La lógica es consistente: primero encuentra modelos cuya arquitectura encaje con la estrategia de intercambiar memoria por VRAM, y luego habla de tuning. No empieces solo por número de parámetros.&lt;/p&gt;
&lt;h2 id=&#34;08-conclusión-breve&#34;&gt;08 Conclusión breve
&lt;/h2&gt;&lt;p&gt;Si tienes una GPU de 16GB y asumes que los LLMs locales se detienen en 12B-14B, vale la pena actualizar esa suposición.&lt;/p&gt;
&lt;p&gt;Una forma más precisa de decirlo:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;una GPU de 16GB no queda automáticamente descartada para modelos más grandes&lt;/li&gt;
&lt;li&gt;modelos dense y modelos &lt;code&gt;MoE&lt;/code&gt; deben considerarse por separado&lt;/li&gt;
&lt;li&gt;&lt;code&gt;GPU Offload&lt;/code&gt; y transferencia de capas expertas a memoria CPU en &lt;code&gt;LM Studio&lt;/code&gt; pueden cambiar significativamente el uso de VRAM&lt;/li&gt;
&lt;li&gt;en la práctica, intercambias mayor presión de memoria por más escala de modelo y mejor velocidad usable&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Este enfoque no encaja con todas las máquinas, pero muestra algo importante: en despliegue local de LLMs, la VRAM no es el único límite. La arquitectura del modelo y la configuración de inferencia importan igual.&lt;/p&gt;
</description>
        </item>
        <item>
        <title>Explicación de la cuantificación de LLM: cómo elegir FP16, Q8, Q5, Q4 o Q2</title>
        <link>https://knightli.com/es/2026/04/05/llm-quantization-guide-fp16-q4-q2/</link>
        <pubDate>Sun, 05 Apr 2026 22:09:11 +0800</pubDate>
        
        <guid>https://knightli.com/es/2026/04/05/llm-quantization-guide-fp16-q4-q2/</guid>
        <description>&lt;p&gt;El objetivo principal de la cuantificación es simple: intercambiar una pequeña cantidad de precisión por un tamaño de modelo más pequeño, un menor uso de VRAM y una inferencia más rápida.&lt;br&gt;
Para la implementación local, elegir el formato de cuantificación correcto suele ser más importante que buscar un recuento de parámetros mayor.&lt;/p&gt;
&lt;h2 id=&#34;qué-es-la-cuantización&#34;&gt;¿Qué es la cuantización?
&lt;/h2&gt;&lt;p&gt;La cuantización significa comprimir los parámetros del modelo desde formatos de mayor precisión (como &amp;ldquo;FP16&amp;rdquo;) a formatos de bits más bajos (como &amp;ldquo;Q8&amp;rdquo; y &amp;ldquo;Q4&amp;rdquo;).&lt;/p&gt;
&lt;p&gt;Una analogía simple:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Modelo original: como una foto de alta calidad, clara pero grande.&lt;/li&gt;
&lt;li&gt;Modelo cuantificado: como una foto comprimida, ligeramente menos detallada pero más ligera y rápida.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;formatos-de-cuantificación-comunes&#34;&gt;Formatos de cuantificación comunes
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Cuantización&lt;/th&gt;
          &lt;th&gt;Precisión/Ancho de broca&lt;/th&gt;
          &lt;th&gt;Tamaño&lt;/th&gt;
          &lt;th&gt;Pérdida de calidad&lt;/th&gt;
          &lt;th&gt;Uso recomendado&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;FP16&lt;/td&gt;
          &lt;td&gt;flotante de 16 bits&lt;/td&gt;
          &lt;td&gt;Más grande&lt;/td&gt;
          &lt;td&gt;Casi ninguno&lt;/td&gt;
          &lt;td&gt;Investigación, evaluación, máxima calidad&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Q8_0&lt;/td&gt;
          &lt;td&gt;Entero de 8 bits&lt;/td&gt;
          &lt;td&gt;Más grande&lt;/td&gt;
          &lt;td&gt;Casi ninguno&lt;/td&gt;
          &lt;td&gt;PC de alta gama, calidad + rendimiento&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Q5_K_M&lt;/td&gt;
          &lt;td&gt;5 bits mixto&lt;/td&gt;
          &lt;td&gt;Medio&lt;/td&gt;
          &lt;td&gt;Ligero&lt;/td&gt;
          &lt;td&gt;Conductor diario, elección equilibrada&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Q4_K_M&lt;/td&gt;
          &lt;td&gt;Mixto de 4 bits&lt;/td&gt;
          &lt;td&gt;Más pequeño&lt;/td&gt;
          &lt;td&gt;Aceptable&lt;/td&gt;
          &lt;td&gt;Valor predeterminado general, valor fuerte&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Q3_K_M&lt;/td&gt;
          &lt;td&gt;Mezclado de 3 bits&lt;/td&gt;
          &lt;td&gt;Muy pequeño&lt;/td&gt;
          &lt;td&gt;Notable&lt;/td&gt;
          &lt;td&gt;Dispositivos de baja especificación, ejecutar primero&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Q2_K&lt;/td&gt;
          &lt;td&gt;Mixto de 2 bits&lt;/td&gt;
          &lt;td&gt;Más pequeño&lt;/td&gt;
          &lt;td&gt;Significativo&lt;/td&gt;
          &lt;td&gt;Límites extremos de recursos, respaldo&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;reglas-de-denominación-de-cuantificación&#34;&gt;Reglas de denominación de cuantificación
&lt;/h2&gt;&lt;p&gt;Tome &lt;code&gt;gemma-4:4b-q4_k_m&lt;/code&gt; como ejemplo:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;gemma-4:4b&lt;/code&gt;: nombre del modelo y escala de parámetros.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;q4&lt;/code&gt;: cuantificación de 4 bits.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;k&lt;/code&gt;: K-quants (un método de cuantificación mejorado).&lt;/li&gt;
&lt;li&gt;&lt;code&gt;m&lt;/code&gt;: nivel medio (las opciones comunes también incluyen &lt;code&gt;s&lt;/code&gt;/small y &lt;code&gt;l&lt;/code&gt;/large).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;selección-rápida-por-vram&#34;&gt;Selección rápida por VRAM
&lt;/h2&gt;&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;RAM/VRAM&lt;/th&gt;
          &lt;th&gt;Cuantización recomendada&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;4 GB&lt;/td&gt;
          &lt;td&gt;Q3_K_M / Q2_K&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;8 GB&lt;/td&gt;
          &lt;td&gt;Q4_K_M&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;16 GB&lt;/td&gt;
          &lt;td&gt;Q5_K_M / Q8_0&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;32GB+&lt;/td&gt;
          &lt;td&gt;FP16 / T8_0&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Comience con una versión que se ejecute de manera estable en su máquina, luego avance con precisión paso a paso en lugar de saltar directamente al modelo más grande.&lt;/p&gt;
&lt;h2 id=&#34;consejos-prácticos&#34;&gt;Consejos prácticos
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;Comience con &lt;code&gt;Q4_K_M&lt;/code&gt; de forma predeterminada y pruebe primero las tareas reales.&lt;/li&gt;
&lt;li&gt;Si la calidad de la respuesta no es suficiente, suba a &lt;code&gt;Q5_K_M&lt;/code&gt; o &lt;code&gt;Q8_0&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Si la VRAM o la velocidad son el principal cuello de botella, baje a &lt;code&gt;Q3_K_M&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Utilice el mismo conjunto de prueba cada vez que cambie de formato de cuantificación.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;conclusión&#34;&gt;Conclusión
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Calidad primero: &lt;code&gt;FP16&lt;/code&gt; o &lt;code&gt;Q8_0&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Saldo primero: &lt;code&gt;Q5_K_M&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Valor predeterminado general: &lt;code&gt;Q4_K_M&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Reserva de baja especificación: &lt;code&gt;Q3_K_M&lt;/code&gt; o &lt;code&gt;Q2_K&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La clave no es &amp;ldquo;cuanto más grande, mejor&amp;rdquo;, sino &amp;ldquo;el resultado más estable y utilizable bajo los límites de su hardware&amp;rdquo;.&lt;/p&gt;
&lt;!-- enlaces-relacionados-con-ollama:inicio --&gt;
&lt;h2 id=&#34;publicaciones-relacionadas&#34;&gt;Publicaciones relacionadas
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Comparación y selección de modelos Gemma 4&lt;/li&gt;
&lt;li&gt;Desinstalar completamente Ollama en Linux&lt;/li&gt;
&lt;li&gt;Ruta de almacenamiento y migración del modelo Ollama&lt;/li&gt;
&lt;li&gt;Cómo comprobar si Ollama usa GPU&lt;/li&gt;
&lt;/ul&gt;
&lt;!-- enlaces-relacionados-con-ollama:end --&gt;
</description>
        </item>
        
    </channel>
</rss>
