Modular middleware for building and deploying stateful actors and autonomous agents in federated research infrastructure
Positioning#
Academy is a modular middleware developed by Globus Labs / University of Chicago (Ian Foster's lab) for building and deploying stateful agents across heterogeneous federated computing resources. Its core value lies in enabling the same agent code to run seamlessly across different infrastructure — local processes, Globus cloud communication, Redis, ProxyStore — without modifying upper-layer business logic.
Agent Programming Model#
- Stateful Agents: Agent instances maintain internal state (e.g.,
self.last_reading), supporting context tracking across long-running processes - Autonomous Control Loops: Define autonomous decision loops via the
@loopdecorator; agents independently respond to events and execute tasks, with loops controlled byasyncio.Eventfor graceful shutdown - Remotely Callable Actions: Methods marked with
@actionbecome asynchronously invocable through Handle
Communication & Deployment Abstraction#
- Handle Async Communication: Users communicate with agents asynchronously via Handle, with messages routed through Mailboxes managed by Exchange
- Multi-backend Exchange:
LocalExchange— In-process local communicationCloudExchange— Globus-based cross-site cloud communicationRedisExchange— Redis-based messagingProxyStoreExchange— ProxyStore-based communicationHybridExchange— Hybrid mode
- Executor Backend Abstraction: Based on
concurrent.futures.Executorinterface, supporting ThreadPoolExecutor and other execution backends
Federated Infrastructure Adaptation#
- Globus Integration: CloudExchange supports identity authentication and cross-site communication via Globus
- HPC High Throughput: Paper reports high performance and scalability in HPC environments
- Heterogeneous Resource Management: Designed for federated research ecosystems, coordinating HPC systems, experimental facilities, and data repositories
Architecture Layers#
- Agent Layer (
academy.agent):Agentbase class provides state management and message processing;@actionregisters remote RPC interfaces,@loopregisters autonomous loops - Communication Layer (
academy.exchange): Exchange handles message routing and Mailbox management, created via Factory pattern with interchangeable implementations - Management Layer (
academy.manager):Managerserves as the unified entry point for agent lifecycle, encapsulating launch/shutdown with async context manager support - Handle Layer (
academy.handle): Remote handle for agents, exposing async interfaces consistent with local method calls - Cloud Communication Infrastructure (
academy.exchange.cloud): Globus authentication, backend adaptation, token storage for cross-site communication
Typical Application Scenarios#
- Scientific workflow orchestration (materials discovery, astronomy, decentralized learning, information extraction)
- Stateful Actor model for data management and request response in distributed systems
- LLM Agent: integrating LLM inference and tool calling to build AI agents
- Embodied Agent: serving as the control brain for robots or simulation entities
- Compute units: encapsulating simulation runs, data processing, model training
- Orchestrators: coordinating other agents' activities, distributing tasks, monitoring progress
- HPC cross-site federated collaborative computing
Installation & Getting Started#
pip install academy-py
Optional dependency groups: pip install academy-py[dev], pip install academy-py[docs], pip install academy-py[proxystore]
Minimum requirement: Python ≥ 3.10
Getting started path:
- Extend
Agentbase class, use@actionfor callable methods,@loopfor autonomous loops - Select Exchange Factory (
LocalExchangeFactoryfor local dev,CloudExchangefor federated deployment) - Create manager via
Manager.from_exchange_factory(), launch agents withlaunch() - Invoke agent methods asynchronously via returned Handle
- Shut down agents with
manager.shutdown()
Unconfirmed Information#
- Specific performance benchmark data (paper mentions microbenchmarks but exact figures require full text review)
- Complete end-to-end Cloud Exchange deployment workflow
- External production adoption status
- Performance comparison and selection guide across Exchange backends
- Agent persistence and fault recovery mechanisms