AgentForge is a low-code framework tailored for the rapid development, testing, and iteration of AI-powered autonomous agents and Cognitive Architectures. Compatible with a range of LLM models — currently supporting OpenAI, Anthropic's Claude, and Oobabooga (local) — it offers the flexibility to run different models for different agents based on your specific needs.
Whether you're a newbie looking for a user-friendly entry point or a seasoned developer aiming to build complex cognitive architectures, this framework has you covered.
Our database-agnostic framework is designed for seamless extensibility. While ChromaDB is our go-to database, integration with other databases is straight-forward, making it an ideal playground and solid foundation for various AI projects.
In summary, AgentForge is your beta-testing ground and future-proof hub for crafting intelligent, model-agnostic, and database-flexible autonomous agents.
- Documentation
- Features
- Requisites
- Pre-Installation
- Installation
- Dev-build Installation
- Usage
- Contributing
- Contact Us
- License
Welcome to the AgentForge framework documentation. This comprehensive guide will support you whether you're just getting started or diving deep into custom configurations and advanced features. Here, you'll find detailed insights into the various components that make up our system.
-
Agents: Dive deep into the agents' world. Learn how they operate, respond, and can be customized.
-
Settings: Delve into directives, memories, models, paths, and storage configurations – the fine-tuned engine settings that keep the system humming.
-
Personas: Add flair to the system's interactions. Make it more human-like and relatable.
-
Tools & Actions: The system's utility belt. Understand the tools available and how they can be choreographed into actionable sequences.
-
Utilities: Explore the array of utility functions and tools that supercharge the system's capabilities. (Note: Documentation not implemented yet)
Note: Our documentation is a living entity, continuously evolving. Some links or features may still be under development. We appreciate your patience and welcome your feedback to improve the documentation.
- Build Custom Agents And Cognitive Architectures Easily
- Custom Tools/Actions
- Customizable Agent Memory Management
- Default Agents Ready For Use
- LLM Agnostic Agents (Each Agent can call different LLMs if needed)
- On-The-Fly Prompt Editing
- OpenAI & Anthropic API Support
- Open-Source Model Support (Oobabooga)
- Rapidly Build & Test Cognitive Architectures (Multi-Agent Scripts)
- API Implementation
- Knowledge Graphs
Note: If you already have all the requisites below, you can skip ahead to the Pre-Installation section.
Make sure you have the following set-up:
- Python must be installed, and the PATH variable should be configured accordingly.
- ChromaDB requires Microsoft C++ Build Tools in order to work with Windows.
- Once downloaded, mark the 'Desktop Development with C++' for installation. It should automatically select these optional packages for you.
- When the installation is complete, you'll see a message that says, 'All installations are up-to-date.'
- Done! Close the Visual Studio installer.
Before you get started with AgentForge, there are a few things you should know:
- Local: AgentForge can run using self-hosted models via the Oobabooga implementation. You'll need to host the model either locally yourself or on a cloud server as the Oobabooga implementation in AgentForge only handles the connection to the server created by Oobabooga; it doesn't download or install any models.
- Cloud-Based: To use cloud-based LLM models like OpenAI, you'll need to obtain and set up API keys in your user environment variables.
- You don't need API keys for both Claude and OpenAI if you plan on using just one. No API keys are needed if you're using the Oobabooga implementation. The model you wish to use can be specified in the Model Configuration file.
- If you're planning to use Google Search functionalities, you'll need both a Google API key and a Google Search Engine ID key.
Set your User Environment Variables names to the following:
- Claude: ANTHROPIC_API_KEY
- OpenAI: OPENAI_API_KEY
- Google: GOOGLE_API_KEY
- Google Search Engine ID: SEARCH_ENGINE_ID
- We haven't provided guides for obtaining these API keys as it's outside the scope of this project. Plenty of resources are available online to guide you through the process.
- Install AgentForge:
pip install agentforge
- Navigate to where you want your architecture's (bot) project folder:
cd c:\bot
- Run the initialization script:
agentforge init
Additionally, if you want to try our demo architecture, run the following command to copy our bot script to your project folder:
agentforge salience
If you want to install the build from the dev branch and help with development, follow these instructions instead:
Clone the GitHub repository:
git clone https://github.com/DataBassGit/AgentForge.git
Install the required dependencies:
pip install -e .
Each Cognitive Architecture (bot) you create should contain an .agentforge
folder which contains everything pertaining to its agents and personas along with other configuration files.
Important: Before running any bot, we need to make sure that the configuration files have the correct LLM settings. If you've selected an OpenAI model, for example, the system will look for the corresponding API key in your environment variables. This applies not only to the default settings but also to individual Custom Agents as they can override these settings and call different models if needed.
Note: We define
Cognitive Architectures
orBots
as Multi-Agent Scripts!
To get started with custom agents, navigate to Examples/CustomAgents/
. Inside, you'll find the .agentforge/
folder with its configuration files as well as an agents
folder which contains an example of a custom test agent. To know more about how to use and create your own agents, check out the Custom Agents page.
If you've installed our Salience example, head over to Examples/SalienceBot/.agentforge/
to find its configuration files.
To run the Salience Bot demo, go to Examples/SalienceBot/
in your console and run:
python salience.py
This will execute a simple bot script that uses our Predefined Agents to complete an objective by breaking it down into tasks, subsequently executing them and checking for completion.
For a more detailed break-down of our Salience
example please refer to the Salience Page
Important : Whenever a bot runs, it will first initialize ChromaDB (or whichever database is used) as it will act as the memory for the agents. The first time Chroma is initialized on a system it needs to download a few language models for sentence embedding, so it is normal for it to take several minutes to run the first time. Any subsequent runs will not have this issue as long as Chroma has previously downloaded the models being used.
Feel free to open issues or submit pull requests with improvements or bug fixes. Your contributions are welcome!
We're on the lookout for a UI/UX collaborator who's passionate about open-source and wants to join the team to help develop a front-end for this framework. This isn't a job offer, but rather an invitation to be a part of something cool. Interested? We'd love to chat! (See the Contact Us section below for details.)
If you're keen on contributing or just want to reach out to us, here's how to get in touch:
- Email: contact@agentforge.net
- Discord: Feel Free to drop by our Discord Server
This project is licensed under the GNU General Public License. See LICENSE for more details.