“Self-awareness: the hardest problem isn’t solving within limits, it’s discovering the own limitations”
Table of Contents
- News — Latest updates and announcements.
- Introduction — Overview and purpose of the project.
- Installation — Step-by-step setup instructions.
- Quick Start — Get started with usage examples.
- Architecture — Explore the multi-agent system design.
- Demo — See the project in action with demonstrations.
- Contributing — How to get involved and contribute.
- License — Project licensing details.
News
- 🦤 [2025/07/07] AWorld, as a runtime, is now ready for agentic training. See Self-Improvement section for details. We have updated our score to 77.08 on the GAIA test. Learn how to construct a GAIA runtime in the Demo section.
- 🦩 [2025/06/19] We have updated our score to 72.43 on the GAIA test. Additionally, we have introduced a new local running mode. See
./README-local.md
for detailed instructions. - 🐳 [2025/05/22] For quick GAIA evaluation, MCP tools, AWorld, and models are now available in a single Docker image. See
./README-docker.md
for instructions and youtube video for demo. - 🥳 [2025/05/13] AWorld has updated its state management for browser use and enhanced the video processing MCP server, achieving a score of 77.58 on GAIA validation (Pass@1 = 61.8) and maintaining its position as the top-ranked open-source framework. Learn more: GAIA leaderboard
- ✨ [2025/04/23] AWorld ranks 3rd on GAIA benchmark (69.7 avg) with impressive Pass@1 = 58.8, 1st among open-source frameworks. Reproduce with
python examples/gaia/run.py
Introduction
AWorld (Agent World) is a multi-agent playground that enables agents to collaborate and self-improve. The framework supports a wide range of applications, including but not limited to product prototype verification, foundation model training and Multi-Agent System (MAS) design meta-learning.
Runtime Key Features
1. Agent Construction | 2. Topology Orchestration | 3. Environments |
---|---|---|
• ✅ Support for various model services • ✅ Integration with MCP tools • ✅ Custom tool support | • ✅ Protocol encapsulation between models and tools • ✅ Protocol encapsulation among agents | • ✅ Runtime state management • ✅ State tracing support • ✅ Distributed, high-concurrency environments for training |
Self-Improvement with Diverse Runtimes
By constructing diverse runtime environments (with tools, agents, or models in them), AWorld aims to find the limitations of a model and push intelligence forward. Here we will record some of our work to prove the effectiveness of our proposal.
Category | Runtime | Performance | Key Information |
---|---|---|---|
Tool Use | Function call runtime to be released | Competitive on BFCL benchmark![]() | |
Deep Search | Search runtime to be released | SOTA on HotpotQA benchmark![]() |
Demo of GAIA Agent-Runtime
Here we first introduce the GAIA runtime, which can be constructed on your local computer. It can be used for:
- Product prototype verification
- Self-improvement training (See training pipeline for details)
Follow the instructions in ./examples/gaia/README.md
to initialize the GAIA agent runtime and run the demo shown above.
Want to build your own multi-agent system? Check out the detailed tutorials below to get started! ⬇️⬇️⬇️
Installation
Python>=3.11:
git clone https://github.com/inclusionAI/AWorld
cd AWorld
python setup.py install
Quick Start
Here’s a quick start guide to: (1) create your first agent; (2) equip it with a MCP tool; (3) assign a teammate; and (4) answer a user query through teamwork.
from aworld.config.conf import AgentConfig
from aworld.agents.llm_agent import Agent
from aworld.runner import Runners
from aworld.core.agent.swarm import Swarm
if __name__ == '__main__':
agent_config = AgentConfig(
llm_provider="openai",
llm_model_name="gpt-4o",
# Set via environment variable or direct configuration
# llm_api_key="YOUR_API_KEY",
# llm_base_url="https://api.openai.com/v1"
)
# Register the MCP tool here, or create a separate configuration file.
mcp_config = {
"mcpServers": {
"amap-amap-sse": {
"type": "sse",
"url": "https://mcp.amap.com/sse?key=YOUR_API_KEY",
"timeout": 5,
"sse_read_timeout": 300
}
}
}
# Create your first agent equipped with an MCP tool
search = Agent(
conf=agent_config,
name="search_agent",
system_prompt="You are a helpful agent.",
mcp_servers=["amap-amap-sse"], # MCP server name for agent to use
mcp_config=mcp_config
)
# Add a new teammate to the agent
summary = Agent(
conf=agent_config,
name="summary_agent",
system_prompt="You are a helpful summary agent."
)
# Collaborate as a team; the default is a static workflow
swarm = Swarm(search, summary)
# Run agent team
res = Runners.sync_run(input="Hotels within 1 kilometer of West Lake in Hangzhou",
swarm=swarm)
print(res)
Architecture
AWorld is designed to achieve two primary objectives: (1) provide an efficient forward process, and (2) facilitate diverse backward processes, including but not limited to foundation model training and system design meta-learning.
Forward
An illustration of the runtime, showing the message workflow when Agent1 receives a query from a user.
Backward
During training, an action-state rollout demonstration using AWorld’s distributed environments.
Demo
Running Pre-defined Agents (e.g., see demo code). Below are demonstration videos showcasing AWorld’s capabilities across various agent configurations and environments.
Mode | Type | Demo |
---|---|---|
Single Agent | Browser use | ![]() ▶️ Watch Browser Demo on YouTube |
Phone use | ![]() ▶️ Watch Mobile Demo on YouTube | |
Multi Agent | Cooperative Teams | ![]() ▶️ Watch Travel Demo on YouTube |
Competitive Teams | ![]() ▶️ Watch Debate Arena on YouTube | |
Mixed of both Teams | Coming Soon 🚀 |
Contributing
We warmly welcome developers to join us in building and improving AWorld! Whether you’re interested in enhancing the framework, fixing bugs, or adding new features, your contributions are valuable to us.
For academic citations or wish to contact us, please use the following BibTeX entry:
@software{aworld2025,
author = {Agent Team at InclusionAI},
title = {AWorld: Enabling Agent Self-Improvement through Interactive Experience with Dynamic Runtime},
year = {2025},
url = {https://github.com/inclusionAI/AWorld},
version = {0.1.0},
publisher = {GitHub},
email = {chenyi.zcy at antgroup.com}
}
License
This project is licensed under the MIT License - see the LICENSE file for details.