Construir con IA

La transferencia bidireccional de caché KV reduce la latencia en cargas de trabajo agénticas multirturno

AWS demuestra cómo la transferencia bidireccional de la caché clave-valor (KV) en vLLM reduce el tiempo hasta el primer token hasta 3,3 veces en contextos conversacionales largos.

Ilustración del flujo de datos bidireccional entre dos unidades de procesamiento.
Ilustración generada para este artículo

Traducido automáticamente del original en inglés.

Amazon Web Services ha presentado un método para reducir significativamente la latencia en aplicaciones agénticas multirturno mediante la habilitación de la transferencia bidireccional de la caché clave-valor (KV) dentro del framework de serving vLLM. Publicado el 19 de octubre de 2026, este enfoque permite que los nodos de prefill y decode compartan el contexto almacenado en caché en ambas direcciones, eliminando el cómputo redundante a medida que crecen los historiales de conversación.

Qué ocurrió

En los flujos de trabajo agénticos multirturno típicos, un agente acumula contexto razonando, invocando herramientas e incorporando resultados previos. Los clientes suelen reenviar todo el historial de la conversación —incluidas las instrucciones del sistema, prompts anteriores, salidas de herramientas y respuestas del modelo— con cada nuevo turno. En arquitecturas de serving desagregadas Prefill-Decode (P-D), las solicitudes se dividen entre nodos especializados: un nodo de prefill procesa el prompt para construir la caché KV, y un nodo de decode recupera estos bloques para generar la respuesta. Sin embargo, las implementaciones estándar solo transfieren la caché KV en una dirección, desde prefill hacia decode.

Este flujo unidireccional crea ineficiencias. Después de generar una respuesta, el nodo de decode mantiene entradas KV tanto para el prompt original como para los nuevos tokens. Cuando llega el siguiente turno, el nodo de prefill no puede acceder a estas entradas y debe recalcular las proyecciones KV para la respuesta anterior. Además, dado que los nodos de decode mantienen el estado de la sesión mientras que los nodos de prefill no lo hacen, las sesiones activas en los nodos de prefill enfrentan mayores riesgos de desalojo de caché. Un fallo total de caché obliga al nodo de prefill a recalcular todo el historial, consumiendo capacidad del acelerador y aumentando el tiempo hasta el primer token (TTFT).

Para abordar esto, los ingenieros de AWS extendieron el conector KV de la NVIDIA Inference Xfer Library (NIXL) en vLLM para soportar la transferencia bidireccional. Esto permite que los nodos de decode devuelvan bloques KV previamente calculados a los nodos de prefill para turnos subsiguientes. La funcionalidad fue validada en instancias Amazon EC2 P5en conectadas mediante AWS Elastic Fabric Adapter (EFA), mostrando que reduce el TTFT hasta 1,6 veces para modelos Qwen3-32B y hasta 3,3 veces para modelos zai-org/GLM-5-FP8 en benchmarks multirturno.

Cómo funciona

La transferencia bidireccional de KV depende de un router consciente de la caché KV y políticas mejoradas de retención de bloques. El router actúa como un plano de control ligero y con estado que mapea los IDs de conversación del cliente a los parámetros de transferencia KV del nodo de decode. Solo almacena metadatos de ubicación de bloques, no los tensores reales, obteniendo esta información del stream de respuesta. En el primer turno, hay un fallo de caché y la solicitud sigue la ruta estándar. El router guarda entonces los metadatos del nodo de decode. En turnos posteriores, el router recupera estos metadatos, permitiendo que el nodo de prefill reutilice los bloques KV del nodo de decode en lugar de recalcularlos.

El nodo de decode retiene los bloques KV elegibles durante un tiempo de vida configurable (TTL), por defecto 480 segundos, en lugar de liberarlos inmediatamente después de la generación. Esto asegura que el contexto permanezca disponible para el siguiente turno. Para evitar que la sobrecarga supere los beneficios en prefijos cortos, un ajuste kv_recompute_threshold controla cuándo ocurre la reutilización. Si el número de tokens reutilizables está por debajo de este umbral (por defecto 64), el nodo de prefill recalcula localmente; de lo contrario, extrae la caché KV del nodo de decode mediante una operación NIXL READ.

Detalles clave

  • La transferencia bidireccional de KV reduce el TTFT hasta 1,6 veces para Qwen3-32B y 3,3 veces para zai-org/GLM-5-FP8 en configuraciones probadas.
  • La funcionalidad requiere vLLM v0.21.0 o posterior con NixlConnector y debe estar habilitada tanto en servidores de prefill como de decode.
  • AWS EFA soporta GPUDirect RDMA y Neuron Direct RDMA, permitiendo acceso directo a memoria entre dispositivos GPU o Trainium.
  • Los nodos de decode retienen bloques KV durante un TTL configurable (por defecto 480 segundos) para soportar la reutilización entre turnos.
  • Un kv_recompute_threshold (por defecto 64 tokens) evita sobrecargas innecesarias de red para prefijos reutilizables cortos.
  • El router consciente de la caché KV mantiene un mapeo en memoria de IDs de conversación a parámetros de transferencia KV sin almacenar tensores.

Por qué importa

Para los ingenieros que construyen asistentes conversacionales y aplicaciones agénticas, gestionar ventanas de contexto crecientes es un cuello de botella principal. A medida que se alargan los historiales de interacción, el cómputo repetido de prefill consume recursos significativos del acelerador y aumenta la latencia. Al permitir que los nodos de prefill reutilicen bloques KV retenidos por los nodos de decode, la transferencia bidireccional mitiga esta redundancia. Esto conduce a un rendimiento más estable del TTFT incluso cuando las conversaciones se extienden, mejorando la experiencia del usuario y la utilización de recursos.

La arquitectura también destaca la importancia de interconexiones eficientes como AWS EFA para la inferencia distribuida. La pequeña sobrecarga de transferir bloques KV (30–130 ms en pruebas) se ve ampliamente compensada por el ahorro en tiempo de recálculo, especialmente para modelos más grandes como GLM-5-FP8. Esto sugiere que optimizar el movimiento de datos entre nodos especializados es tan crítico como optimizar la ejecución del modelo mismo para sistemas agénticos escalables.

Qué puedes hacer

  • Actualiza a vLLM v0.21.0 o posterior y habilita bidirectional_kv_xfer tanto en servidores de prefill como de decode.
  • Implementa un router consciente de la caché KV para gestionar el flujo de metadatos entre clientes y nodos de serving.
  • Ajusta el parámetro decoder_kv_blocks_ttl basándote en el tiempo esperado entre turnos del usuario para equilibrar el uso de memoria y la reutilización.
  • Ajusta el kv_recompute_threshold según el tiempo de cómputo de tu modelo y el rendimiento de la interconexión.
  • Usa instancias habilitadas para AWS EFA como P5en para transferencias RDMA de baja latencia si despliegas sobre infraestructura de AWS.
  • Reproduce el benchmark utilizando la guía proporcionada para validar las ganancias de rendimiento para tu carga de trabajo y modelo específicos.
  • #vllm
  • #aws
  • #inference
  • #kv-cache
  • #agentic-workflows

Herramientas de la Tienda de Bytechap

$89

DocBento

Gestión documental autoalojada que lee cada escaneo y responde con citas de página.

Demo en vivo
$79

WorkBento

Suite de RR. HH. y gestión del entorno laboral impulsada por IA que puedes alojar tú mismo.

Demo en vivo

Seguir leyendo

Todos los artículos