Skip to content

open-source framework for creating and managing simulations populated with AI-powered agents. It provides an intuitive platform for designing complex, interactive environments where agents can act, learn, and evolve.

License

Notifications You must be signed in to change notification settings

webproxy/Agentarium

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌿 Agentarium

License: Apache 2.0 Python 3.10+ PyPI version

A powerful Python framework for managing and orchestrating AI agents with ease. Agentarium provides a flexible and intuitive way to create, manage, and coordinate interactions between multiple AI agents in various environments.

InstallationQuick StartFeaturesExamplesDocumentationContributing

🚀 Installation

pip install agentarium

🎯 Quick Start

from agentarium import Agent

# Create agents
agent1 = Agent(name="agent1")
agent2 = Agent(name="agent2")

agent1.talk_to(agent2, "Hello, how are you?")
agent2.talk_to(agent1, "I'm fine, thank you!")

agent1.act() # Same as agent.talk_to but it's the agent who decides what to do

✨ Features

  • 🤖 Advanced Agent Management: Create and orchestrate multiple AI agents with different roles and capabilities
  • 🔄 Robust Interaction Management: Coordinate complex interactions between agents
  • 💾 Checkpoint System: Save and restore agent states and interactions
  • 📊 Data Generation: Generate synthetic data through agent interactions
  • ⚡ Performance Optimized: Built for efficiency and scalability
  • 🌍 Flexible Environment Configuration: Define custom environments with YAML configuration files
  • 🛠️ Extensible Architecture: Easy to extend and customize for your specific needs

📚 Examples

Basic Chat Example

Create a simple chat interaction between agents:

# examples/basic_chat/demo.py
from agentarium import Agent

alice = Agent.create_agent()
bob = Agent.create_agent()

alice.talk_to(bob, "Hello Bob! I heard you're working on some interesting data science projects.")
bob.act()

Synthetic Data Generation

Generate synthetic data through agent interactions:

# examples/synthetic_data/demo.py
from agentarium import Agent
from agentarium.CheckpointManager import CheckpointManager

checkpoint = CheckpointManager("demo")

alice = Agent.create_agent()
bob = Agent.create_agent()

alice.talk_to(bob, "What a beautiful day!")
checkpoint.update(step="interaction_1")

checkpoint.save()

More examples can be found in the examples/ directory.

📖 Documentation

Environment Configuration

Configure your environment using YAML files:

llm:
  provider: "openai" # any provider supported by aisuite
  model: "gpt-4o-mini" # any model supported by the provider

aisuite: # optional, credentials for aisuite
  openai:
    api_key: "sk-..."

Key Components

  • Agent: Base class for creating AI agents
  • CheckpointManager: Handles saving and loading of agent states

🤝 Contributing

Contributions are welcome! Here's how you can help:

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'feat: add amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

📄 License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

🙏 Acknowledgments

  • Thanks to all contributors who have helped shape Agentarium
  • Special thanks to the open-source community

Made with ❤️ by thytu

About

open-source framework for creating and managing simulations populated with AI-powered agents. It provides an intuitive platform for designing complex, interactive environments where agents can act, learn, and evolve.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%