Duibonduil's picture
Rename AWorld-main/aworlddistributed/aworldspace/base.py to aworlddistributed/aworldspace/base.py
a610c7e verified
from typing import Optional
from pydantic import BaseModel, Field
from aworldspace.base_agent import AworldBaseAgent
"""
Agent Space
"""
class AgentMeta(BaseModel):
name: str = None
desc: str = None
class AgentSpace(BaseModel):
agent_modules: Optional[dict] = Field(default_factory=dict, description="agent module")
agents_meta: Optional[dict] = Field(default_factory=dict, description="agents meta")
def register(self, agent_name: str, agent_instance: AworldBaseAgent, metadata: dict=None):
# Register agent metadata and instance
self.agent_modules[agent_name] = agent_instance
async def get_agent_modules(self):
return self.agent_modules
async def get_agents_meta(self):
return self.agents_meta
AGENT_SPACE = AgentSpace()