operand/agency
A fast and minimal framework for building agentic systems
What it solves
Agency provides a minimal foundation for developers to build custom agent-integrated systems. It simplifies the process of connecting AI agents with traditional software systems, allowing for flexible and scalable architectures without requiring the developer to start from scratch.
How it works
The library uses an Actor model framework where every entity—whether an AI agent, a software interface, or a human user—is represented as an Agent. These agents can expose "actions" (methods) that other agents can discover and invoke via messages.
To enable communication, agents are added to a "Space". There are two types of spaces: LocalSpace for agents within a single application and AMQPSpace for agents distributed across a network using an AMQP server like RabbitMQ.
Who it’s for
It is designed for developers who want to create their own custom agent-based applications and experiment with agent interactions.
Highlights
- Actor Model Architecture: Uses a standardized way for agents to communicate via messages and actions.
- Scalability: Supports multiprocessing, multithreading, and networked agent systems via AMQP.
- Control and Safety: Includes access policies (e.g., requiring review before an action is executed) and lifecycle callbacks for observability.
- Flexible Integration: Compatible with various AI backends, as shown in the demo with OpenAI and HuggingFace transformers.