Inferencia Hogwild!: Generación paralela de modelos de lenguaje mediante atención concurrente
Hogwild! Inference: Parallel LLM Generation via Concurrent Attention
April 8, 2025
Autores: Gleb Rodionov, Roman Garipov, Alina Shutova, George Yakushev, Vage Egiazarian, Anton Sinitsin, Denis Kuznedelev, Dan Alistarh
cs.AI
Resumen
Los Modelos de Lenguaje de Gran Escala (LLMs, por sus siglas en inglés) han demostrado la capacidad de abordar tareas cada vez más complejas mediante razonamiento avanzado, generación de contenido extenso y uso de herramientas. Resolver estas tareas a menudo implica largos cálculos durante la inferencia. En la resolución de problemas humanos, una estrategia común para agilizar el trabajo es la colaboración: dividir el problema en subtareas, explorar diferentes estrategias de manera concurrente, etc. Investigaciones recientes han demostrado que los LLMs también pueden operar en paralelo implementando marcos de cooperación explícitos, como mecanismos de votación o la creación explícita de subtareas independientes que pueden ejecutarse en paralelo. Sin embargo, cada uno de estos marcos puede no ser adecuado para todos los tipos de tareas, lo que puede limitar su aplicabilidad. En este trabajo, proponemos un enfoque de diseño diferente: ejecutamos "trabajadores" LLM en paralelo, permitiéndoles sincronizarse mediante una caché de atención actualizada concurrentemente y solicitando a estos trabajadores que decidan la mejor manera de colaborar. Nuestro enfoque permite que las instancias desarrollen su propia estrategia de colaboración para el problema en cuestión, mientras "ven" el progreso parcial de cada una en la caché concurrente. Implementamos este enfoque mediante Inferencia Hogwild!: un motor de inferencia paralela para LLMs donde múltiples instancias del mismo LLM se ejecutan en paralelo con la misma caché de atención, con acceso "instantáneo" a los tokens generados por cada una. La inferencia Hogwild! aprovecha los Embeddings de Posición Rotacional (RoPE) para evitar la recomputación mientras mejora la utilización del hardware en paralelo. Descubrimos que los LLMs modernos con capacidad de razonamiento pueden realizar inferencias con una caché compartida de Clave-Valor sin necesidad de ajustes adicionales.
English
Large Language Models (LLMs) have demonstrated the ability to tackle
increasingly complex tasks through advanced reasoning, long-form content
generation, and tool use. Solving these tasks often involves long
inference-time computations. In human problem solving, a common strategy to
expedite work is collaboration: by dividing the problem into sub-tasks,
exploring different strategies concurrently, etc. Recent research has shown
that LLMs can also operate in parallel by implementing explicit cooperation
frameworks, such as voting mechanisms or the explicit creation of independent
sub-tasks that can be executed in parallel. However, each of these frameworks
may not be suitable for all types of tasks, which can hinder their
applicability. In this work, we propose a different design approach: we run LLM
"workers" in parallel , allowing them to synchronize via a concurrently-updated
attention cache and prompt these workers to decide how best to collaborate. Our
approach allows the instances to come up with their own collaboration strategy
for the problem at hand, all the while "seeing" each other's partial progress
in the concurrent cache. We implement this approach via Hogwild! Inference: a
parallel LLM inference engine where multiple instances of the same LLM run in
parallel with the same attention cache, with "instant" access to each other's
generated tokens. Hogwild! inference takes advantage of Rotary Position
Embeddings (RoPE) to avoid recomputation while improving parallel hardware
utilization. We find that modern reasoning-capable LLMs can perform inference
with shared Key-Value cache out of the box, without additional fine-tuning.Summary
AI-Generated Summary