A Task-Level Distributed Agent Workflow Framework for building scalable, resource-efficient multi-agent systems
Project description
Maze:A Task-Level Distributed Agent Workflow Framework
🌟Why Maze?
-
Task-level
Maze enables fine-grained, task-level management, enhancing system flexibility and composability while supporting task parallelism to significantly improve the end-to-end performance of agent workflows.
-
Resource Management
Maze supports resource allocation for workflow tasks, effectively preventing resource contention both among parallel tasks within a single workflow and across multiple concurrently executing workflows.
-
Distributed Deployment
Maze supports not only standalone but also distributed deployment, allowing you to build highly available and scalable Maze clusters to meet the demands of large-scale concurrency and high-performance computing.
-
Multi-Agent Support
Maze can serve as a runtime backend for other agent frameworks.For example, it allows LangGraph to be seamlessly migrated to Maze and automatically gain task-level parallelism without modifying original logic. Example
🚀Quick Start
1. Install
From PyPI (Recommended)
pip install maze-agent
From source
git clone https://github.com/QinbinLi/Maze.git
cd Maze
pip install -e .
2. Launch Maze
Launch Maze Head.
maze start --head --port HEAD_PORT
If there are multiple machines, you can start multiple Maze workers.
maze start --worker --addr HEAD_IP:HEAD_PORT
3. Example
from typing import Any
from maze import MaClient,task
#1.Define your task functions using the @task decorator
@task(
inputs=["text"],
outputs=["result"],
)
def my_task(params):
text: Any = params.get("text")
return {"result": f"Hello {text}"}
#2.Create the maze client
client = MaClient("http://localhost:8000")
#3.Create the workflow
workflow = client.create_workflow()
task1 = workflow.add_task(
my_task,
inputs={"text": "Maze"}
)
#4.Submit the workflow and get results
workflow.run()
workflow.show_results()
🖥️ Maze Playground
We support building workflows through a drag-and-drop interface on the Maze Playground.Here are two pages for reference. For detailed usage instructions, please refer to the Maze Playground.
Design Workflow
Check Result
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file maze_agent-1.0.1.tar.gz.
File metadata
- Download URL: maze_agent-1.0.1.tar.gz
- Upload date:
- Size: 47.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
521f50e2061d466b8ffa12117ec5feeb2f4aaa0cade8b67b4b871b4bd87fdcbe
|
|
| MD5 |
4454bee4ec40578edbb3dfac91b5a4ea
|
|
| BLAKE2b-256 |
309841050499fac78a1fd350c11396e98a6645104d97ec9d0d9f5b344051a57b
|
File details
Details for the file maze_agent-1.0.1-py3-none-any.whl.
File metadata
- Download URL: maze_agent-1.0.1-py3-none-any.whl
- Upload date:
- Size: 52.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ef0448e016ba59d0a1d3884232bff305f0a23a551a06f02aef9454a5091d26f
|
|
| MD5 |
28d3b4f4a545737a214721ca1cfaed81
|
|
| BLAKE2b-256 |
6b4c3dd500d4adf164ba97d0ef5051ddfd1d373460fff2cb8254d79fe6954b03
|