<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Indice on lo0 — Blog Técnico</title><link>https://blog.lo0.es/tags/indice/</link><description>Recent content in Indice on lo0 — Blog Técnico</description><generator>Hugo -- gohugo.io</generator><language>es</language><lastBuildDate>Sat, 29 Aug 2026 10:00:00 +0200</lastBuildDate><atom:link href="https://blog.lo0.es/tags/indice/index.xml" rel="self" type="application/rss+xml"/><item><title>El mapa del blog: de la acometida eléctrica al token servido</title><link>https://blog.lo0.es/posts/mapa-del-blog-stack-inferencia-soberana/</link><pubDate>Sat, 29 Aug 2026 10:00:00 +0200</pubDate><guid>https://blog.lo0.es/posts/mapa-del-blog-stack-inferencia-soberana/</guid><description>&lt;p>Este blog empezó en marzo de 2026 con un puñado de artículos sobre Kubernetes y networking, y a estas alturas acumula más de 150 piezas que, vistas de una en una, parecen temas sueltos: PagedAttention, generadores diésel, OpenCost, SPIFFE, refrigeración por inmersión, RAGAS. No lo son. Todas describen el mismo objeto desde alturas distintas: &lt;strong>una factoría de inferencia soberana&lt;/strong>, es decir, la máquina completa que convierte megavatios de la red eléctrica en tokens servidos a un usuario, con la propiedad y el control del dato dentro de casa.&lt;/p>
&lt;p>Este artículo es el índice de esa máquina. Ordena lo publicado en diez capas, de abajo arriba, y en cada una enlaza lo que hay escrito. Sirve para tres cosas: encontrar un tema concreto, ver qué capas están cubiertas a fondo y cuáles quedan a medias, y elegir un recorrido de lectura según el problema que se tenga delante.&lt;/p>
&lt;h2 id="el-mapa">El mapa&lt;/h2>
&lt;div class="diagram" style="max-width:880px;margin:1.5rem auto;">
&lt;svg viewBox="0 0 880 620" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="Mapa por capas del stack de inferencia soberana, de la acometida eléctrica al token servido">&lt;style>
.bx{fill:none;stroke:currentColor;stroke-width:1.3;rx:6}
.bxs{fill:none;stroke:currentColor;stroke-width:1;stroke-dasharray:4 3;rx:6}
.t{font:600 13px sans-serif;fill:currentColor}
.s{font:11px sans-serif;fill:currentColor}
.n{font:600 11px sans-serif;fill:currentColor}
.h{font:600 12px sans-serif;fill:currentColor}
.ar{stroke:currentColor;stroke-width:1.2;fill:none;marker-end:url(#ah)}
&lt;/style>
&lt;defs>&lt;marker id="ah" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="6" markerHeight="6" orient="auto">&lt;path d="M0,0 L10,5 L0,10 z" fill="currentColor"/>&lt;/marker>&lt;/defs>
&lt;text x="440" y="20" text-anchor="middle" class="t">De la acometida al token: las diez capas de una factoría de inferencia&lt;/text>
&lt;rect x="30" y="34" width="600" height="44" class="bx"/>
&lt;text x="46" y="53" class="h">10 · Coste, rendimiento y energía&lt;/text>
&lt;text x="46" y="69" class="s">FinOps · benchmarking · Wh por token · TCO · el caso on-premise con datos&lt;/text>
&lt;text x="600" y="60" text-anchor="end" class="n">28&lt;/text>
&lt;rect x="30" y="86" width="290" height="44" class="bx"/>
&lt;text x="46" y="105" class="h">9 · Seguridad y cumplimiento&lt;/text>
&lt;text x="46" y="121" class="s">guardrails · aislamiento · firma · ENS, 42001, AI Act&lt;/text>
&lt;text x="304" y="112" text-anchor="end" class="n">13&lt;/text>
&lt;rect x="340" y="86" width="290" height="44" class="bx"/>
&lt;text x="356" y="105" class="h">8 · Observabilidad y evals&lt;/text>
&lt;text x="356" y="121" class="s">OTel GenAI · Langfuse · DCGM · RAGAS · runbooks&lt;/text>
&lt;text x="614" y="112" text-anchor="end" class="n">14&lt;/text>
&lt;rect x="30" y="138" width="600" height="44" class="bx"/>
&lt;text x="46" y="157" class="h">7 · Plano de control y entrega&lt;/text>
&lt;text x="46" y="173" class="s">gateway y router L7 · KServe y OIP · registro OCI · GitOps · canary y shadow&lt;/text>
&lt;text x="600" y="164" text-anchor="end" class="n">11&lt;/text>
&lt;rect x="30" y="190" width="600" height="44" class="bx"/>
&lt;text x="46" y="209" class="h">6 · Datos y RAG&lt;/text>
&lt;text x="46" y="225" class="s">ingesta · embeddings · reranker · vector store · CDC · caché semántica&lt;/text>
&lt;text x="600" y="216" text-anchor="end" class="n">17&lt;/text>
&lt;rect x="30" y="242" width="600" height="44" class="bx"/>
&lt;text x="46" y="261" class="h">5 · El modelo&lt;/text>
&lt;text x="46" y="277" class="s">cuantización · poda · destilación · MoE · LoRA · decodificado especulativo&lt;/text>
&lt;text x="600" y="268" text-anchor="end" class="n">20&lt;/text>
&lt;rect x="30" y="294" width="600" height="44" class="bx"/>
&lt;text x="46" y="313" class="h">4 · Motor de inferencia&lt;/text>
&lt;text x="46" y="329" class="s">vLLM por dentro · KV cache · prefill y decode · batching · scheduler&lt;/text>
&lt;text x="600" y="320" text-anchor="end" class="n">22&lt;/text>
&lt;rect x="30" y="346" width="600" height="44" class="bx"/>
&lt;text x="46" y="365" class="h">3 · Cluster&lt;/text>
&lt;text x="46" y="381" class="s">Kubernetes · reparto de GPU · colas y cuotas · autoscaling · operators&lt;/text>
&lt;text x="600" y="372" text-anchor="end" class="n">13&lt;/text>
&lt;rect x="30" y="398" width="290" height="44" class="bx"/>
&lt;text x="46" y="417" class="h">2 · Almacenamiento&lt;/text>
&lt;text x="46" y="433" class="s">pesos, corpus y checkpoints · cold start&lt;/text>
&lt;text x="304" y="424" text-anchor="end" class="n">7&lt;/text>
&lt;rect x="340" y="398" width="290" height="44" class="bx"/>
&lt;text x="356" y="417" class="h">1 · Nodo&lt;/text>
&lt;text x="356" y="433" class="s">PCIe · NUMA · NVLink · HBM · CPU&lt;/text>
&lt;text x="614" y="424" text-anchor="end" class="n">8&lt;/text>
&lt;rect x="30" y="450" width="600" height="44" class="bx"/>
&lt;text x="46" y="469" class="h">0 · Infraestructura física&lt;/text>
&lt;text x="46" y="485" class="s">acometida · generadores · conmutación · SAI · aire · líquido · inmersión&lt;/text>
&lt;text x="600" y="476" text-anchor="end" class="n">8&lt;/text>
&lt;path d="M660 472 L660 56" class="ar"/>
&lt;text x="672" y="270" class="s">cada capa solo existe&lt;/text>
&lt;text x="672" y="286" class="s">si la de abajo la sostiene&lt;/text>
&lt;rect x="660" y="330" width="200" height="120" class="bxs"/>
&lt;text x="676" y="352" class="h">Mapas maestros&lt;/text>
&lt;text x="676" y="372" class="s">pipeline LLMOps de 6 etapas&lt;/text>
&lt;text x="676" y="390" class="s">las 7 capas del stack&lt;/text>
&lt;text x="676" y="408" class="s">anatomía de una petición&lt;/text>
&lt;text x="676" y="426" class="s">5 niveles de madurez&lt;/text>
&lt;text x="676" y="444" class="s">7 fases de despliegue&lt;/text>
&lt;rect x="660" y="86" width="200" height="96" class="bxs"/>
&lt;text x="676" y="108" class="h">Vertical de red&lt;/text>
&lt;text x="676" y="128" class="s">EVPN-VXLAN Huawei&lt;/text>
&lt;text x="676" y="146" class="s">MikroTik RouterOS 7&lt;/text>
&lt;text x="676" y="164" class="s">UniFi y HCIA-Datacom&lt;/text>
&lt;text x="440" y="520" text-anchor="middle" class="s">La capa 10 no se apoya en ninguna: las atraviesa todas, porque mide lo que cuestan las nueve de abajo.&lt;/text>
&lt;text x="440" y="540" text-anchor="middle" class="s">Las capas 0 a 3 son propiedad del operador de infraestructura; las 4 a 7, de la plataforma; las 8 y 9, de todos.&lt;/text>
&lt;/svg>
&lt;/div>
&lt;p>La lectura del mapa es de abajo arriba, y el criterio para ordenarlo es la dependencia física: no hay motor de inferencia sin GPU alimentada y refrigerada, no hay RAG sin motor que sirva embeddings, no hay cumplimiento normativo demostrable sin observabilidad que registre lo que pasó. La capa 10 es la excepción y por eso aparece atravesándolo todo: coste, rendimiento y energía no son un piso del edificio, son la medida del edificio entero.&lt;/p>
&lt;h2 id="capa-0--infraestructura-física">Capa 0 · Infraestructura física&lt;/h2>
&lt;p>La vertical más reciente, y la que cierra el círculo: el camino del vatio desde la acometida hasta el chip, y el camino del calor desde el chip hasta la atmósfera.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/energia-datacenter-cadena/">La cadena de energía&lt;/a>: redundancia, Tier, kW frente a kVA, PUE, densidad de la IA y el límite de la red.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/energia-datacenter-generadores/">Los generadores&lt;/a>: NFPA 110, transitorios, dimensionado, diésel frente a gas, combustible y paralelización.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/energia-datacenter-conmutacion/">La conmutación&lt;/a>: ATS frente a STS, la ventana ITIC, transición abierta y cerrada, y los caminos A y B.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/energia-datacenter-ups/">El SAI y el ride-through&lt;/a>: topologías IEC 62040-3, eco-mode, volante de inercia, litio frente a plomo y las cargas pulsantes de la IA.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/refrigeracion-datacenter-reto-termico/">El reto térmico&lt;/a>: por qué la densidad de la IA rompió el aire, y el espectro de soluciones.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/refrigeracion-datacenter-aire/">El aire y sus límites&lt;/a>: CRAC y CRAH, la geometría del caudal, la ley cúbica, contención, ASHRAE y las puertas traseras.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/refrigeracion-datacenter-liquido-directo-chip/">El líquido directo al chip&lt;/a>: placa fría, CDU, bucles TCS y FWS, química del refrigerante y fugas.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/refrigeracion-datacenter-inmersion/">La inmersión y el horizonte del megavatio&lt;/a>: monofásica y bifásica, el muro de los PFAS y la microfluídica en el silicio.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-1--el-nodo">Capa 1 · El nodo&lt;/h2>
&lt;p>Dentro de la máquina, antes de que exista ningún proceso: los buses, la memoria y la topología que deciden cuánto rendimiento acaba llegando al modelo.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/pcie-topology-gpudirect-p2p-acs/">Topología PCIe, GPUDirect y ACS&lt;/a>: los pasillos por los que viajan los tensores.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/numa-hugepages-aislamiento-cpu-inferencia/">NUMA, hugepages y aislamiento de CPU&lt;/a>: por qué el vecino de socket te cuesta latencia.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/nvlink-nvswitch-nccl-tensor-parallel/">NVLink, NVSwitch y NCCL&lt;/a>: el cable por el que se reparte un modelo grande.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/cilium-ebpf-dranet-numa-de-red-inferencia/">NUMA de red con Cilium y DraNet&lt;/a>: la puerta de la cocina que nadie mira.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/kubelet-resource-managers-rke2-numa/">CPU, Memory y Topology Manager en RKE2&lt;/a>: cómo se pide una GPU con afinidad y sin sorpresas.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/sm-cuda-streams-cuda-graphs-inferencia/">SM, CUDA streams y CUDA graphs&lt;/a>: dónde se pierde el tiempo dentro del acelerador.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/entornos-mixtos-nvidia-intel-servidores-nucs/">Entornos mixtos NVIDIA e Intel&lt;/a>: del cluster homogéneo al parque real.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/medir-potencia-gpu-nvml-dcgm/">Medir la potencia de una GPU&lt;/a>: la metrología del sensor, que pertenece a la vez a esta capa y a la 10.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-2--almacenamiento">Capa 2 · Almacenamiento&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/almacenamiento-ia-estado-del-arte/">Estado del arte&lt;/a>, &lt;a href="https://blog.lo0.es/posts/almacenamiento-ia-rendimiento/">rendimiento&lt;/a>, &lt;a href="https://blog.lo0.es/posts/almacenamiento-ia-seguridad/">seguridad&lt;/a> y &lt;a href="https://blog.lo0.es/posts/almacenamiento-ia-disponibilidad/">disponibilidad&lt;/a>: la serie de cuatro sobre el almacenamiento que sostiene pesos, corpus y checkpoints.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/del-disco-a-la-hbm-cold-start-carga-modelo/">Del disco a la HBM&lt;/a>: por qué arrancar un modelo tarda lo que tarda.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/acelerar-cold-start-carga-modelos-tensorizer/">Acelerar el cold start&lt;/a>: de minutos a segundos con serialización y caché.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-3--el-cluster">Capa 3 · El cluster&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/vllm-kubernetes/">vLLM en Kubernetes&lt;/a>: la pieza de inferencia que sí escala.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/operators-llm-kubernetes/">Operators de inferencia LLM&lt;/a>: OME, vLLM Production Stack y compañía.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/cluster-h100-plataforma-multi-tenant/">El cluster GPU como plataforma multi-tenant&lt;/a>: de máquina compartida a servicio.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/compartir-gpu-time-slicing-mps-mig/">Compartir una GPU: time-slicing, MPS y MIG&lt;/a>: las tres formas de partir un acelerador.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/volcano-vs-kueue-scheduling-gpu-kubernetes/">Volcano y Kueue&lt;/a>: gang scheduling, colas y cuotas.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/autoscaling-llm-kubernetes-keda/">Autoscaling con HPA y KEDA&lt;/a>: escalar por métricas que signifiquen algo.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/servir-varios-modelos-una-gpu-swap-sleep/">Servir varios modelos en una GPU&lt;/a>: co-residencia, swap y sleep.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/capacity-planning-inferencia-llm-on-premise/">Capacity planning on-premise&lt;/a>: del SLO al número de nodos.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/gitops-stack-inferencia-llm-flux/">GitOps del stack con Flux&lt;/a>: operar la plataforma como código.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/rke2-cilium-bgp/">Cilium BGP en RKE2&lt;/a> y &lt;a href="https://blog.lo0.es/posts/ebpf-cilium-tcp-ip-bypass/">eBPF de cero a Cilium&lt;/a>: la red por debajo de todo lo anterior.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-4--el-motor-de-inferencia">Capa 4 · El motor de inferencia&lt;/h2>
&lt;p>El bloque más denso del blog: vLLM abierto en canal, pieza a pieza.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/kv-cache-fundamentos/">KV cache&lt;/a> y &lt;a href="https://blog.lo0.es/posts/pagedattention-deep-dive/">PagedAttention&lt;/a>: la memoria de trabajo y su gestor de bloques.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/continuous-batching-fundamentos/">Continuous batching&lt;/a> y &lt;a href="https://blog.lo0.es/posts/scheduler-step-vllm/">el scheduler step&lt;/a>: cómo se arma cada ronda de trabajo.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/prefill-optimizaciones-vllm/">Optimizar el prefill&lt;/a> y &lt;a href="https://blog.lo0.es/posts/decode-optimizaciones-vllm/">optimizar el decode&lt;/a>: las dos fases y sus mandos.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/backend-atencion-vllm-flashinfer/">El backend de atención&lt;/a> y &lt;a href="https://blog.lo0.es/posts/flashattention-fundamentos/">FlashAttention&lt;/a>: el núcleo del cálculo.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/prefix-cache-hit-rate-engineering/">Prefix cache: ingeniería del hit rate&lt;/a> y &lt;a href="https://blog.lo0.es/posts/batch-sizing-vllm-grid-search/">batch sizing con grid search&lt;/a>: los dos ajustes que más rendimiento regalan.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/disaggregated-serving-prefill-decode/">Disaggregated serving&lt;/a> y &lt;a href="https://blog.lo0.es/posts/tp-replicas-una-grande-vs-n-pequenas/">una réplica grande o muchas pequeñas&lt;/a>: las decisiones de topología.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/contexto-largo-kv-offloading-tiered/">Contexto largo y KV offloading&lt;/a>: la jerarquía de memoria del KV cuando la ventana no cabe en la HBM.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/structured-output-fundamentos/">Structured output&lt;/a> y &lt;a href="https://blog.lo0.es/posts/function-calling-tool-augmented-retrieval/">function calling&lt;/a>: sujetar la salida del modelo.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/serving-modelos-razonamiento-test-time-compute/">Servir modelos de razonamiento&lt;/a>: el borrador invisible que pagas igual.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/multimodal-vlm-on-premise-vllm/">Multimodal on-premise con vLLM&lt;/a> y &lt;a href="https://blog.lo0.es/posts/servir-embeddings-rerankers-tei-produccion/">servir embeddings y rerankers con TEI&lt;/a>: los otros modelos del stack.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/roofline-invertido-modelos-pequenos/">El roofline invertido&lt;/a>: por qué un modelo pequeño no se optimiza igual que uno grande.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-5--el-modelo">Capa 5 · El modelo&lt;/h2>
&lt;p>Todo lo que se le hace al modelo antes de servirlo, o mientras se sirve.&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/quantization-fundamentos-inferencia/">Quantization para inferencia&lt;/a>, &lt;a href="https://blog.lo0.es/posts/fp8-end-to-end-pesos-kv-calidad/">FP8 end-to-end&lt;/a>, &lt;a href="https://blog.lo0.es/posts/cuantizacion-agresiva-sub-4-bit-ternario/">cuantización agresiva sub-4-bit&lt;/a> y &lt;a href="https://blog.lo0.es/posts/test-time-quantization-en-caliente/">cuantizar en caliente&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/poda-pruning-llm-fundamentos/">Poda&lt;/a> y &lt;a href="https://blog.lo0.es/posts/knowledge-distillation-fundamentos/">destilación&lt;/a>: reducir sin amputar, y enseñar a un modelo pequeño.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/moe-inference-fundamentos/">MoE en inferencia&lt;/a> y &lt;a href="https://blog.lo0.es/posts/arquitecturas-nativas-device-moe-grano-fino/">arquitecturas nativas para device&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/multi-lora-serving-fundamentos/">Multi-LoRA serving&lt;/a>, &lt;a href="https://blog.lo0.es/posts/qlora-multi-lora-agresivo-slm/">QLoRA y multi-LoRA al límite&lt;/a> y &lt;a href="https://blog.lo0.es/posts/qlora-runbook-fine-tuning-serving/">el runbook QLoRA completo&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/speculative-decoding-fundamentos/">Speculative decoding&lt;/a> y &lt;a href="https://blog.lo0.es/posts/self-speculative-decoding-early-exit/">self-speculative con early exit&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/alignment-moderno-dpo-kto-orpo-simpo/">Alignment moderno&lt;/a>: DPO, KTO, ORPO y SimPO.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/fine-tuning-continuo-produccion/">Fine-tuning continuo&lt;/a> y &lt;a href="https://blog.lo0.es/posts/retrain-cerrar-el-bucle-feedback-dataset-adapter/">retrain: cerrar el bucle&lt;/a>.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-6--datos-y-rag">Capa 6 · Datos y RAG&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/ingesta-documental-rag-pdf-a-chunk-indexado/">Ingesta documental del PDF al chunk indexado&lt;/a> y &lt;a href="https://blog.lo0.es/posts/rag-corpus-curation-fundamentos/">curación del corpus&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/embeddings-modelos-2026-dense-sparse-multivector/">Embeddings en 2026&lt;/a> y &lt;a href="https://blog.lo0.es/posts/rag-reranker-hybrid-retrieval-fundamentos/">reranker con hybrid retrieval&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/postgresql-qdrant-ingestion-microservicios/">PostgreSQL y Qdrant en la ingestión&lt;/a>, &lt;a href="https://blog.lo0.es/posts/debezium-cdc-fundamentos/">Debezium y CDC&lt;/a> y &lt;a href="https://blog.lo0.es/posts/rag-kafka-datalake-arquitectura/">RAG sobre Kafka&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/semantic-cache-rag/">Caché semántica&lt;/a>: el recepcionista con memoria.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/rag-en-cpu-plano-datos-generacion/">RAG en CPU&lt;/a> y &lt;a href="https://blog.lo0.es/posts/rag-agresivo-modelos-pequenos/">RAG agresivo en modelos pequeños&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/rag-eval-ragas-golden-dataset/">Evaluar un RAG sin engañarse&lt;/a>: RAGAS y el golden dataset.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/ontologias-knowledge-graphs-seis-etapas-llmops/">Ontologías y knowledge graphs&lt;/a> y &lt;a href="https://blog.lo0.es/posts/data-versioning-dvc-lakefs/">data versioning con DVC y lakeFS&lt;/a>.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-7--plano-de-control-y-entrega">Capa 7 · Plano de control y entrega&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/elegir-gateway-oss-inferencia-llm/">Elegir el gateway OSS&lt;/a> y &lt;a href="https://blog.lo0.es/posts/router-inferencia-llm-gateway-l7/">el router de inferencia L7&lt;/a>: la centralita por delante del motor.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/kserve-open-inference-protocol-plano-control/">KServe y el Open Inference Protocol&lt;/a>: el plano de control estándar.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/registro-distribucion-modelos-oci-oras/">Registro y distribución de modelos con OCI y ORAS&lt;/a>: dónde viven los bytes.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/canary-blue-green-shadow-modelos-llm/">Canary, blue-green y shadow&lt;/a>: desplegar un modelo sin romper el servicio.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/prompt-versioning-langfuse-mlflow/">Prompt versioning&lt;/a>: el contrato que evita el susto.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/mcp-observability-otel/">MCP por dentro&lt;/a> y &lt;a href="https://blog.lo0.es/posts/mcp-crece-autenticacion-keycloak/">ponerle autenticación con Keycloak&lt;/a>.&lt;/li>
&lt;li>Montar un asistente soberano end-to-end, con todas las piezas anteriores funcionando juntas, es el ejercicio que cierra esta capa y está pendiente de publicación.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-8--observabilidad-y-evaluación">Capa 8 · Observabilidad y evaluación&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/tracing-llm-otel-genai/">Tracing con OpenTelemetry GenAI&lt;/a> e &lt;a href="https://blog.lo0.es/posts/vllm-otel-instrumentacion-optimizaciones/">instrumentar vLLM con OTel&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/langfuse-self-hosting-arquitectura-tuning/">Langfuse por dentro&lt;/a>: el centro de clasificación de trazas.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/observabilidad-gpu-dcgm-llm/">Observabilidad GPU con DCGM&lt;/a> y &lt;a href="https://blog.lo0.es/posts/anatomia-metricas-dcgm-vllm-anomalias/">anatomía de las métricas DCGM y vLLM&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/evals-llm-la-capa-despues-de-tracing/">Evals: la capa después del tracing&lt;/a> y &lt;a href="https://blog.lo0.es/posts/llm-as-judge-fundamentos/">LLM-as-judge&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/runbooks-incident-response-llm-keep-kafka/">Runbooks de incident response&lt;/a>: de la alerta a la acción.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/hubble-observabilidad-ebpf/">Hubble&lt;/a>, &lt;a href="https://blog.lo0.es/posts/agentsight-tracing-llm/">AgentSight&lt;/a> y &lt;a href="https://blog.lo0.es/posts/ebpf-on-device-inference-drift/">detección de drift con eBPF&lt;/a>: observar sin instrumentar.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-9--seguridad-confianza-y-cumplimiento">Capa 9 · Seguridad, confianza y cumplimiento&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/guardrails-safety-llm/">Guardrails y safety&lt;/a> y &lt;a href="https://blog.lo0.es/posts/llm-guard-fundamentos/">LLM Guard&lt;/a>: las líneas de defensa alrededor del modelo.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/hardening-secretos-stack-llm-soberano/">Hardening y secretos del stack soberano&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/aislar-agentes-ia-cliente-cluster/">Aislar agentes de IA del workspace&lt;/a> y &lt;a href="https://blog.lo0.es/posts/runbook-aislar-agentes-ia-bubblewrap-tetragon/">el runbook con bubblewrap y Tetragon&lt;/a>, con &lt;a href="https://blog.lo0.es/posts/tetragon-runtime-security/">Tetragon&lt;/a> como base.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/firma-procedencia-aibom-cadena-suministro-modelo/">Firma, procedencia y AIBOM&lt;/a> e &lt;a href="https://blog.lo0.es/posts/identidad-aislamiento-spiffe-confidential-containers/">identidad y aislamiento con SPIFFE y Confidential Containers&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/iso-42001-aims-llm-on-premise/">ISO/IEC 42001&lt;/a>, &lt;a href="https://blog.lo0.es/posts/eu-ai-act-mapeo-arquitectura-llm-on-premise/">el EU AI Act artículo por artículo&lt;/a> y &lt;a href="https://blog.lo0.es/posts/controles-tecnicos-ens-42001-eu-ai-act/">el mapeo cruzado ENS, 42001 y AI Act&lt;/a>.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/infra-cumplimiento-normativo-sanidad-ia/">Cumplimiento en sanidad&lt;/a> y &lt;a href="https://blog.lo0.es/posts/infra-cumplimiento-normativo-defensa-ia/">en defensa&lt;/a>: la misma infraestructura ante dos marcos sectoriales.&lt;/li>
&lt;/ul>
&lt;h2 id="capa-10--coste-rendimiento-y-energía">Capa 10 · Coste, rendimiento y energía&lt;/h2>
&lt;p>El track de datos, escrito con un formato distinto al resto del blog: tablas, cifras y fuente verificable, sin analogías. Son los artículos que sostienen una decisión de inversión.&lt;/p>
&lt;p>&lt;strong>FinOps&lt;/strong>: &lt;a href="https://blog.lo0.es/posts/finops-gpu-llm-frameworks-estado-del-arte/">modelo de coste y estado del arte&lt;/a>, &lt;a href="https://blog.lo0.es/posts/opencost-cost-allocation-kubernetes/">OpenCost a fondo&lt;/a>, &lt;a href="https://blog.lo0.es/posts/kubecost-vs-opencost-vs-alternativas/">Kubecost frente a OpenCost&lt;/a>, &lt;a href="https://blog.lo0.es/posts/coste-por-token-y-por-request/">del GPU-hora al coste por token&lt;/a>, &lt;a href="https://blog.lo0.es/posts/chargeback-showback-multitenancy-gpu/">chargeback y showback&lt;/a>, &lt;a href="https://blog.lo0.es/posts/utilizacion-gpu-como-finops/">el coste del GPU idle&lt;/a>, &lt;a href="https://blog.lo0.es/posts/cloud-gpu-commitment-spot-neoclouds/">cloud GPU y neoclouds&lt;/a>, &lt;a href="https://blog.lo0.es/posts/tco-on-premise-gpu-cluster/">TCO completo on-premise&lt;/a> y &lt;a href="https://blog.lo0.es/posts/finops-multi-tenancy-gpu-litellm/">FinOps multi-tenancy con LiteLLM&lt;/a>.&lt;/p>
&lt;p>&lt;strong>Benchmarking&lt;/strong>: &lt;a href="https://blog.lo0.es/posts/benchmarking-llm-frameworks-estado-del-arte/">frameworks y métricas&lt;/a>, &lt;a href="https://blog.lo0.es/posts/herramientas-benchmark-llm-ficha-a-ficha/">catálogo de herramientas&lt;/a>, &lt;a href="https://blog.lo0.es/posts/guidellm-validacion-slo-bajo-carga/">GuideLLM y el SLO bajo carga&lt;/a>, &lt;a href="https://blog.lo0.es/posts/nvidia-genai-perf-a-fondo/">GenAI-Perf a fondo&lt;/a>, &lt;a href="https://blog.lo0.es/posts/mlperf-inference-como-leerlo/">cómo leer MLPerf Inference&lt;/a>, &lt;a href="https://blog.lo0.es/posts/sesgo-medicion-reproducibilidad-bench/">sesgo de medición y reproducibilidad&lt;/a>, &lt;a href="https://blog.lo0.es/posts/benchmarks-de-calidad-llm/">benchmarks de calidad&lt;/a> y &lt;a href="https://blog.lo0.es/posts/comparativa-motores-serving-pareto/">la frontera de Pareto entre motores&lt;/a>.&lt;/p>
&lt;p>&lt;strong>Energía&lt;/strong>: &lt;a href="https://blog.lo0.es/posts/medir-potencia-gpu-nvml-dcgm/">medir la potencia de la GPU&lt;/a>, &lt;a href="https://blog.lo0.es/posts/energia-por-token-metodologia/">energía por token en España&lt;/a>, &lt;a href="https://blog.lo0.es/posts/benchmarking-energia-llm-frameworks-estado-del-arte/">frameworks de benchmarking energético&lt;/a>, &lt;a href="https://blog.lo0.es/posts/herramientas-energia-deploy-precision-overhead/">medir en producción con Kepler y DCGM&lt;/a>, &lt;a href="https://blog.lo0.es/posts/mlperf-power-eficiencia-energetica/">MLPerf Power&lt;/a>, &lt;a href="https://blog.lo0.es/posts/leaderboards-energia-llm/">leaderboards de Wh por token&lt;/a>, &lt;a href="https://blog.lo0.es/posts/del-vatio-al-carbono-pue-grid/">del vatio al carbono&lt;/a>, &lt;a href="https://blog.lo0.es/posts/palancas-eficiencia-energetica-inferencia/">palancas de eficiencia&lt;/a> y &lt;a href="https://blog.lo0.es/posts/energia-en-el-tco-y-la-regulacion/">la energía en el TCO y en la regulación&lt;/a>.&lt;/p>
&lt;p>&lt;strong>Síntesis&lt;/strong>: &lt;a href="https://blog.lo0.es/posts/tres-ejes-coste-rendimiento-energia-inferencia-llm/">los tres ejes y la identidad que los une&lt;/a>, &lt;a href="https://blog.lo0.es/posts/on-premise-soberano-vs-hyperscalers-datos/">on-premise soberano frente a hyperscalers, con datos&lt;/a>, &lt;a href="https://blog.lo0.es/posts/dimensionar-justificar-inversion-gpu/">del SLO al número de GPUs&lt;/a> y &lt;a href="https://blog.lo0.es/posts/harness-reproducible-medicion-coste-rendimiento-energia/">el harness reproducible&lt;/a>.&lt;/p>
&lt;p>A esa lista se suman dos piezas de coste que no son de GPU: &lt;a href="https://blog.lo0.es/posts/temporal-durable-execution-coste-agentes/">el coste de los agentes con durable execution&lt;/a> y &lt;a href="https://blog.lo0.es/posts/coste-por-token-y-por-request/">el coste por petición del gateway&lt;/a>.&lt;/p>
&lt;h2 id="los-mapas-maestros">Los mapas maestros&lt;/h2>
&lt;p>Cinco artículos anteriores hacen de plano general y siguen siendo la mejor puerta de entrada para quien llega nuevo:&lt;/p>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/posts/pipeline-llmops-seis-etapas/">El pipeline LLMOps de seis etapas&lt;/a>: el mapa maestro del ciclo de vida.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/siete-capas-stack-inferencia-llm-on-premise/">Las siete capas del stack on-premise&lt;/a>: la versión de arquitectura de este mismo mapa.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/anatomia-request-llm-mayo-2026/">Anatomía de una petición LLM en producción&lt;/a>: una request real atravesando todas las capas.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/cinco-niveles-madurez-plataforma-llm-on-premise/">Cinco niveles de madurez de la plataforma&lt;/a> y &lt;a href="https://blog.lo0.es/posts/siete-fases-despliegue-plataforma-llm-on-premise/">siete fases de despliegue greenfield&lt;/a>: dónde estás y qué toca después.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/catalogo-herramientas-oss-llmops/">El catálogo OSS ficha por ficha&lt;/a> y &lt;a href="https://blog.lo0.es/posts/oss-vs-hyperscalers-llmops/">el catálogo paralelo frente a los hyperscalers&lt;/a>: qué herramienta para cada etapa.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/mlops-llms-panorama-2026/">MLOps para LLMs en 2026&lt;/a>: el panorama de partida.&lt;/li>
&lt;/ul>
&lt;h2 id="cuatro-recorridos">Cuatro recorridos&lt;/h2>
&lt;p>&lt;strong>Voy a montar la primera plataforma.&lt;/strong> Panorama y pipeline de seis etapas, siete capas del stack, siete fases de despliegue, capacity planning, vLLM en Kubernetes, gateway, observabilidad con OTel y Langfuse, y guardrails antes de abrir la puerta.&lt;/p>
&lt;p>&lt;strong>Tengo el cluster y no me llega el rendimiento.&lt;/strong> Anatomía de una petición, KV cache y PagedAttention, prefill y decode, prefix cache, batch sizing, GuideLLM para encontrar el punto de saturación, sesgo de medición para no engañarte con los números, y la frontera de Pareto entre motores.&lt;/p>
&lt;p>&lt;strong>Tengo que justificar la inversión ante dirección.&lt;/strong> Los tres ejes, TCO on-premise, coste por token, GPU idle, on-premise frente a hyperscalers, dimensionar y justificar, y el harness reproducible para que las cifras aguanten una auditoría.&lt;/p>
&lt;p>&lt;strong>Me toca la sala, no el software.&lt;/strong> La cadena de energía, los generadores, el reto térmico, el aire y sus límites, el líquido directo al chip, la inmersión, y de ahí a almacenamiento y a la topología del nodo.&lt;/p>
&lt;h2 id="lo-que-falta">Lo que falta&lt;/h2>
&lt;p>El mapa también sirve para ver los huecos, y hay seis identificados:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Portal interno y autoservicio&lt;/strong>: Backstage y la experiencia de desarrollador sobre la plataforma.&lt;/li>
&lt;li>&lt;strong>Comparativa de bases vectoriales&lt;/strong>: Milvus, Qdrant, pgvector y OpenSearch con datos, más allá de las menciones sueltas.&lt;/li>
&lt;li>&lt;strong>Kubeflow a fondo&lt;/strong>, que aparece citado pero nunca desarrollado.&lt;/li>
&lt;li>&lt;strong>Lakehouse para RAG&lt;/strong>: Iceberg y Trino como sustrato del corpus.&lt;/li>
&lt;li>&lt;strong>Knative y scale-to-zero&lt;/strong> para inferencia intermitente.&lt;/li>
&lt;li>&lt;strong>Gestión fuera de banda&lt;/strong>: OpenBMC, Redfish y DCIM, que es justo el puente entre la capa 0 y la capa 3.&lt;/li>
&lt;/ul>
&lt;h2 id="ver-también">Ver también&lt;/h2>
&lt;ul>
&lt;li>&lt;a href="https://blog.lo0.es/start-here/">Empieza aquí&lt;/a>: la ruta de lectura por perfil y por vertical, incluidas las de Kubernetes y networking que este mapa deja fuera.&lt;/li>
&lt;li>&lt;a href="https://blog.lo0.es/posts/anatomia-request-llm-mayo-2026/">Anatomía de una petición LLM en producción&lt;/a>: si solo vas a leer un artículo del blog, que sea ese.&lt;/li>
&lt;/ul></description></item></channel></rss>