Autellix: Un motor de servicio eficiente para agentes de LLM como programas generales
Autellix: An Efficient Serving Engine for LLM Agents as General Programs
February 19, 2025
Autores: Michael Luo, Xiaoxiang Shi, Colin Cai, Tianjun Zhang, Justin Wong, Yichuan Wang, Chi Wang, Yanping Huang, Zhifeng Chen, Joseph E. Gonzalez, Ion Stoica
cs.AI
Resumen
Las aplicaciones de modelos de lenguaje de gran escala (LLM) están evolucionando más allá de simples chatbots hacia programas agentes dinámicos y de propósito general, que escalan las llamadas a LLM y los tokens de salida para ayudar a los agentes de IA a razonar, explorar y resolver tareas complejas. Sin embargo, los sistemas existentes de servicio de LLM ignoran las dependencias entre programas y llamadas, perdiendo oportunidades significativas de optimización. Nuestro análisis revela que los programas enviados a los motores de servicio de LLM experimentan largos tiempos de espera acumulados, principalmente debido al bloqueo en la cabeza de línea tanto a nivel de solicitud individual de LLM como de programa. Para abordar esto, presentamos Autellix, un sistema de servicio de LLM que trata a los programas como ciudadanos de primera clase para minimizar sus latencias de extremo a extremo. Autellix intercepta las llamadas a LLM enviadas por programas, enriqueciendo a los planificadores con contexto a nivel de programa. Proponemos dos algoritmos de planificación—para programas de un solo hilo y distribuidos—que interrumpen y priorizan las llamadas a LLM en función de las llamadas previamente completadas por sus programas. Nuestra evaluación demuestra que, en diversos LLM y cargas de trabajo agentes, Autellix mejora el rendimiento de los programas entre 4 y 15 veces con la misma latencia en comparación con sistemas de vanguardia, como vLLM.
English
Large language model (LLM) applications are evolving beyond simple chatbots
into dynamic, general-purpose agentic programs, which scale LLM calls and
output tokens to help AI agents reason, explore, and solve complex tasks.
However, existing LLM serving systems ignore dependencies between programs and
calls, missing significant opportunities for optimization. Our analysis reveals
that programs submitted to LLM serving engines experience long cumulative wait
times, primarily due to head-of-line blocking at both the individual LLM
request and the program. To address this, we introduce Autellix, an LLM serving
system that treats programs as first-class citizens to minimize their
end-to-end latencies. Autellix intercepts LLM calls submitted by programs,
enriching schedulers with program-level context. We propose two scheduling
algorithms-for single-threaded and distributed programs-that preempt and
prioritize LLM calls based on their programs' previously completed calls. Our
evaluation demonstrates that across diverse LLMs and agentic workloads,
Autellix improves throughput of programs by 4-15x at the same latency compared
to state-of-the-art systems, such as vLLM.Summary
AI-Generated Summary