Modern large language models are increasingly capable as autonomous agents, but they typically operate in sequential interaction cycles: read, think, reply or call a tool, then repeat. According to a new paper published on Hugging Face, many real-world applications do not follow this pattern. Voice assistants, embodied agents, and monitoring systems often receive new inputs while they are still thinking or performing another task.
Today's models handle this through specialized architectures for voice interaction and video streams, vision-language-action (VLA) models for robot control, and asynchronous tool calling for API usage. The paper generalizes from these separate asynchronous tasks to what it calls general asynchronous agents that can adapt to different types of concurrency.
To achieve this, the authors developed an asynchronous LLM framework that lets users—or the agents themselves—define inference coroutines with overlapping memory states. They report that Qwen 3.x models are capable of asynchronous operation for streaming video understanding, videogames, and monitoring, without task-specific training.
The team is releasing AsyncLLM, an open-source framework that lets pretrained LLMs observe, reason, and act concurrently without additional training. The key idea is that concurrency lives inside inference rather than around API calls. Inspired by asyncio, an agent is a set of Python async/await coroutines. Each writes to a cache block and chooses which blocks to attend to through cache views. Streams read each other's evolving state while that state may still be incomplete.
This cache-block abstraction sits on an inference engine built on Mini-SGLang. It efficiently batches requests across coroutines and supports full attention, Gated DeltaNet, and multimodal MRoPE models. Coordination uses standard asyncio events, locks, and queues.