Skip to content

un-seen/agent-company

Repository files navigation

Agent Company

License: MIT Build Status Python Version

A modular framework for building autonomous agents.

Agent Company is designed to help developers build sophisticated multi-agent systems. The framework leverages Redis for messaging and provides a flexible API to incorporate custom tools and agents.

Overview

Key components include:

  • Agent
  • Driver
  • Environment
  • Protocol

🌟 Features

Environments

The following table organizes the environment types, providing a structured view for clarity:

Category Subcategory Description Example
Observability Fully Observable The agent has complete information about the state of the environment at any time, requiring no history tracking. Chess, where the board and moves are fully visible.
Partially Observable The agent has incomplete information, needing to infer hidden states. Driving, where road conditions beyond corners are unknown.
Determinism Deterministic The next state is completely determined by the current state and action, with no randomness. Chess, where each move has a definite outcome.
Stochastic The next state involves randomness, not fully predictable by the agent. Self-driving cars, affected by unpredictable driver behaviors.
Interaction Type Competitive Agents compete to optimize their own objectives, often in zero-sum games. Chess, where players aim to defeat each other.
Cooperative Agents work together to achieve a common goal, coordinating actions. Multiple self-driving cars cooperating to avoid collisions, as noted in AITUDE Understand Types of Environments.
Number of Agents Single-agent Only one agent operates in the environment, focusing on its task. A person navigating a maze alone.
Multi-agent Multiple agents interact, potentially competing or cooperating. A game of football with 11 players per team, as per Tpoint Tech Agent Environment.
Environment Dynamics Static The environment remains unchanged over time, except by agent actions. An empty house, where entering doesn't alter surroundings.
Dynamic The environment changes independently of agent actions over time. A roller coaster ride, constantly in motion, as described in Applied AI Course Types of Environment.
State and Action Space Discrete The environment has a finite number of states or actions, countable and distinct. Chess, with a finite set of possible moves per game.
Continuous The environment has an infinite number of states or actions, not countable. Self-driving cars, with continuous driving and parking actions.
Task Structure Episodic The agent's actions are divided into independent episodes, each with no dependency on previous ones. A pick-and-place robot inspecting parts on a conveyor belt, deciding per part, as per CSVeda AI Environment Types.
Sequential The agent's actions are interdependent, with previous decisions affecting future ones. Checkers, where each move impacts subsequent strategies.
Environment Knowledge Known The agent knows the complete model, including how actions lead to state transitions. Chess, with known rules and outcomes for moves.
Unknown The agent does not know the model, requiring learning through interaction. An agent in an unexplored environment, needing to discover dynamics, as noted in Slideshare Types of Environment in AI.
  • 🚀 Coming Soon: Remote MCP Server Support!
  • 🔍 Integrated memory search using Redis
  • 🤝 OpenAI-compatible API endpoints
  • 📖 Finetuning, Cloud SFT & GRPO training support for base LLMs

Contribute

Contributions are very welcome! To contribute:

  1. Fork the Repository:
  2. Create a Feature Branch:
    git checkout -b feature/YourFeature
  3. Make Your Changes and Commit::
    git checkout -b feature/YourFeature
  4. Push Your Branch:
    git push origin feature/YourFeature
  5. Open a Pull Request:

Please follow our contribution guidelines and code style. For more details, refer to the CONTRIBUTING.md file.

Acknowledgements

Developed with ❤️ by @aloobhujiyan Thanks to the open-source community for encouraging me to start this. Agent Company is an evolving project—your feedback and contributions are crucial to its growth. Happy coding!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published