Create your own trees of AI agents that work towards a common objective. Together, let's explore the potential of Agent Actors and inspire the LLM community to delve deeper into this exciting realm of possibilities!
Watch this 2-minute demo walkthrough — https://www.loom.com/share/8e60585f069c4a9f8ac9f01204b41704
Here's a sample generated execution plan:
langchain.retrievers.TimeWeightedVectoreStoreRetriever
ParentAgent
class plans tasks for its children to do and distributes them to be completed in parallel.ChildAgent
s work in parallel to Do and Check their results. Before running, they wait for all task dependencies to be resolved and inject that into their context.ParentAgent
s under ParentAgent
s, or comingle them with ChildAgent
s. Use your own vector store, retriever, or embedding function with our ParentAgent
and ChildAgent
classes. See how easy it is in test_system.py
.Requires Python: ^3.10
Install through your choice of package manager:
poetry add git+https://github.com/shaman-ai/agent-actors.git
git clone https://github.com/shaman-ai/agent-actors
cd agent-actors
poetry install --with dev --with typing
from agent_actors import (
Agent, # subclass and replace with your own `run` method
ChildAgent, # Do and Check
ParentAgent, # Plan and Adjust
ConsolePrettyPrinter, # Helpful for printing JSON task outputs, pass as a handler to CallbackManager
)
Read test_system.py
!
test_system.py
to your own needspoetry run pytest -s -k 'test_name_str_to_filter_by'
You can also run all tests with poetry run pytest
, but this may take a while to execute, and is likely to hit into API rate limits.
Check out this diagram to understand how the system works: https://beta.plectica.com/maps/W26XSGD28
Our project is licensed under the GNU Lesser General Public License v3 (LGPLv3). This provides a balance between open-source values and flexibility for developers. Key points include:
For the full legal text, see the LICENSE file.
We extend our gratitude to the contributors of the Python packages langchain and ray, without which this wouldn't be possible. We extend our gratitude to the amazing researchers who wrote Generative Simulacra [TODO], ReAct [TODO], and Jeremy Howard [TODO] and FastAI, without which this wouldn't be possible. And to BabyAGI and AutoGPT for inspiring us.
Citation Please cite the repo if you use the data or code in this repo.
@misc{agentactors,
author = {Shaman AI},
title = {Agent Actors: Plan-Do-Check-Adjust with Parallelized LLM Agent Trees},
year = {2023},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/shaman-ai/agent-actors}},
}