Autellix: Un motore di servizio efficiente per agenti LLM come programmi generali
Autellix: An Efficient Serving Engine for LLM Agents as General Programs
February 19, 2025
Autori: 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
Abstract
Le applicazioni dei modelli linguistici di grandi dimensioni (LLM) si stanno evolvendo oltre i semplici chatbot, trasformandosi in programmi agentici dinamici e di uso generale, che scalano le chiamate LLM e i token di output per aiutare gli agenti AI a ragionare, esplorare e risolvere compiti complessi. Tuttavia, i sistemi di servizio LLM esistenti ignorano le dipendenze tra programmi e chiamate, perdendo significative opportunità di ottimizzazione. La nostra analisi rivela che i programmi inviati ai motori di servizio LLM subiscono lunghi tempi di attesa cumulativi, principalmente a causa del blocco in testa alla coda sia a livello di singola richiesta LLM che di programma. Per affrontare questo problema, introduciamo Autellix, un sistema di servizio LLM che tratta i programmi come entità di prim'ordine per minimizzare le loro latenze end-to-end. Autellix intercetta le chiamate LLM inviate dai programmi, arricchendo gli scheduler con il contesto a livello di programma. Proponiamo due algoritmi di scheduling—per programmi single-threaded e distribuiti—che prelazionano e danno priorità alle chiamate LLM in base alle chiamate precedentemente completate dai loro programmi. La nostra valutazione dimostra che, attraverso diversi LLM e carichi di lavoro agentici, Autellix migliora il throughput dei programmi di 4-15x a parità di latenza rispetto ai sistemi all'avanguardia, come 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