Skip to main content
PromptQuorumPromptQuorum

¿Cuándo deberías combinar inferencia de LLM local y en la nube?

Respuesta rápida

Una estrategia híbrida justifica la complejidad adicional cuando la demanda es irregular en lugar de constante: las solicitudes diarias se ejecutan en hardware local que ya tienes, y solo las que superan la capacidad local — modelos más grandes, tareas por lotes, picos de tráfico — recurren a una GPU en la nube alquilada. Si la demanda es constante y predecible, un solo entorno (todo local o todo en la nube) suele ser más simple y económico de operar.

  • Ideal para: demanda irregular o impredecible, necesidad ocasional de un modelo más grande del que puede ejecutar tu hardware local
  • Enrutar según el tamaño de la solicitud o el requisito del modelo — enviar a la nube solo lo que supere la capacidad local
  • Enrutar según la profundidad de la cola — recurrir a la nube solo cuando la cola local se acumule más allá de un umbral
  • Evita el híbrido por completo si la demanda es constante y predecible — un solo entorno es más simple

Actualizado: 15 de julio de 2026

Technique & Concept ExplainersIntermedio

Puntos clave

  • El híbrido local-nube tiene sentido cuando la demanda es irregular: el tráfico diario se queda en local, solo el exceso recurre a una GPU en la nube alquilada
  • Una configuración puramente local desperdicia dinero en capacidad de nube que nunca usas; una puramente en la nube paga por solicitud incluso en períodos tranquilos — el híbrido evita ambos casos
  • El patrón de enrutamiento más simple se basa en el tamaño de la solicitud: solo las que necesitan un modelo más grande o un contexto más largo del que soporta tu hardware local van a la nube
  • Un patrón más avanzado enruta según la profundidad de la cola local, y solo recurre a la nube cuando la cola se acumula más allá de un umbral definido
  • Evita el híbrido si el tráfico es constante y predecible — un solo entorno es más simple de operar y depurar

Cuándo el híbrido supera al modelo puramente local o puramente en la nube

El factor decisivo es la variabilidad de la demanda, no el costo bruto por solicitud. Si tu tráfico es constante — aproximadamente el mismo número de solicitudes, aproximadamente el mismo tamaño de modelo, todos los días — elige el entorno único más económico para esa carga estable y no compliques más. Las configuraciones híbridas solo valen la pena cuando la demanda varía lo suficiente como para que provisionar localmente para el pico deje el hardware inactivo la mayor parte del tiempo.

Un segundo factor es la necesidad ocasional de un modelo más grande del que puede ejecutar tu hardware local. Si el 95% de tu carga de trabajo cabe cómodamente en hardware local, pero unas pocas solicitudes por semana necesitan un modelo mucho más grande, comprar suficiente hardware local para cubrir ese caso raro suele ser un desperdicio — enrutar solo esas solicitudes a una GPU en la nube alquilada es más económico en general.

Los requisitos de residencia de datos también pueden justificar el híbrido, en la dirección opuesta al costo: mantén todo lo sensible estrictamente local, y enruta a la nube solo las cargas de trabajo no sensibles y menos urgentes. En ese caso, la división la determina la política, no los límites del hardware.

Cómo diseñar la lógica de enrutamiento

Tres patrones de enrutamiento cubren la mayoría de las configuraciones reales, en orden aproximadamente creciente de complejidad.

  • **Enrutamiento por tamaño de solicitud:** el patrón más simple. Revisa cada solicitud entrante — tamaño de modelo requerido, longitud de contexto, o una marca de prioridad explícita — y envía a la nube todo lo que supere un umbral fijo, y el resto al hardware local. Fácil de razonar y depurar, pero no se adapta a qué tan ocupado está ya el sistema local.
  • **Bursting según profundidad de cola:** solo envía solicitudes a la nube una vez que la cola local se acumula más allá de un umbral definido. Esto se adapta a la carga real en lugar de seguir una regla estática por solicitud, pero requiere monitoreo y algo más de lógica de aplicación para rastrear el estado de la cola y tomar la decisión de enrutamiento.
  • **Local primero con respaldo en la nube:** intenta cada solicitud localmente primero, y solo recurre a la nube ante un tiempo de espera agotado o un fallo local explícito (por ejemplo, falta de memoria en una solicitud grande). Fácil de implementar sobre una configuración puramente local existente, pero añade latencia a las solicitudes que terminan recurriendo a la nube, ya que primero esperan el intento local fallido.
  • En los tres patrones, una capa de compatibilidad de API entre tu aplicación y ambos backends de inferencia mantiene la decisión de enrutamiento invisible para el resto de tu aplicación — el código de la aplicación solo llama a un endpoint, y la lógica de enrutamiento decide detrás de escena qué backend atiende realmente la solicitud.
  • Para el lado del costo de esta decisión — cuánto cuesta realmente una GPU en la nube por hora, y cómo se compara con el costo amortizado de tu hardware local — consulta Costo de GPU en la Nube por Hora y Precios de RunPod vs. Vast.ai para cifras específicas de proveedores que puedes usar en las decisiones de umbral anteriores.

Preguntas frecuentes

¿No es esta la misma pregunta que si local o nube es más barato?
No — esa es una pregunta diferente y más específica sobre el costo en estado estable para una carga de trabajo fija. Esto trata de arquitectura: cómo dividir una carga de trabajo variable entre ambos entornos para obtener el beneficio de costo del hardware local la mayor parte del tiempo y la flexibilidad de la capacidad en la nube para el resto, en lugar de elegir un solo entorno para todo.
¿El enrutamiento híbrido añade latencia notable?
Generalmente insignificante en el caso común, ya que la mayoría de las solicitudes permanecen locales y nunca tocan la ruta hacia la nube de la decisión de enrutamiento. Las solicitudes que sí se enrutan a la nube pagan un costo real de latencia — el viaje de ida y vuelta por red más, en un patrón local-primero-con-respaldo, el tiempo del intento local fallido primero — así que coloca tu tráfico más sensible a la latencia en la ruta que evita ese salto adicional.
¿Puedo mantener los datos sensibles totalmente locales mientras envío las cargas de trabajo menos sensibles a la nube?
Sí — este es un patrón común y razonable. Etiqueta las solicitudes según la sensibilidad de los datos en la capa de aplicación, y codifica de forma fija que las solicitudes marcadas como sensibles siempre se enruten localmente sin importar la carga o el tamaño, independientemente de la regla de enrutamiento basada en costo o capacidad que maneja todo lo demás.
¿Cuál es un disparador predeterminado razonable para recurrir a la nube en una configuración simple?
Para la mayoría de las configuraciones pequeñas a medianas, comienza con un umbral simple basado en el tamaño de la solicitud (todo lo que necesite más contexto o un modelo más grande del que tu hardware local maneja cómodamente va a la nube) en lugar de monitorear la profundidad de la cola — es más fácil de implementar correctamente, y puedes añadir el bursting basado en profundidad de cola más adelante, una vez que tengas datos reales de tráfico que muestren que ayudaría.