<⚡️> SuperAGI - A dev-first open source autonomous AI agent framework. Enabling developers to build, manage & run useful autonomous agents quickly and reliably.
MIT License
Bot releases are hidden (Show)
⚙️ Local Large Language Model (LLM) Integration:
⚡️ Multi-GPU Support:
To enable Local Large Language Model (LLM) with Multi-GPU support, follow these simple steps:
docker-compose-gpu.yml
file.docker compose -f docker-compose-gpu.yml up --build
localhost:3000
in your browser.Published by TransformerOptimus about 1 year ago
⏯️ Added wait block for workflows:
Users can now add a waiting period into their workflows so that the agent pauses and waits for a specified duration before moving on to the next step. The Wait block is a simple single-step change in the "workflow_seed.py" file in the superagi>agent folder and doesn't require any other changes.
🌐 Improved error handling for OpenAI errors:
SuperAGI will now display errors like rate limits, authentication failures, exceeded quotas etc. from OpenAI directly on the frontend so users can troubleshoot easily.
⚡️SuperAGI Client Libraries
Added SuperAGI SDK Client Libraries in Python and NodeJS to allow developers to easily create, manage, and run autonomous agents using the SuperAGI framework.
Simply pip install or npm install to start using!
Python SDK: https://github.com/TransformerOptimus/SuperAGI-Python-Client
Node SDK:https://github.com/TransformerOptimus/SuperAGI-Node-Client
Read More here: https://superagi.com/docs/SDK/
Published by JohnHunt999 about 1 year ago
🪝 Added support for user-defined HTTP callback event triggers as Webhooks:
Enabling real-time data synchronization between SuperAGI and external platforms, making them highly efficient in state management.
SuperAGI currently supports the following webhook event triggers:
agent_running
agent_paused
agent_completed
agent_terminated
agent_max_iterations_reached
🐳 Added support for self-hosting SuperAGI with one-click docker deployment to Digital Ocean:
Users can now deploy a self-hosted SuperAGI instance to Digital Ocean with a single click. Through Digital Ocean, users can run the SuperAGI Docker image directly on a self-hosted cloud machine.
If deployed on digital ocean, then the docker image will auto-update with every release.
🪵 Added Model Console, Tool Console and Knowledge Console:
These consoles are accessible from Model Console, Tools Console and Knowledge Console, allowing users to get a slice of APM at the Model level, Tool level and knowledge embedding level.
📤 Enabled publishing Agent Template to Marketplace:
Users can now publish their saved agent templates to the marketplace - making them publicly available for everyone to use.
Please note: In order to be able to click on the “Publish Template” button, the user must complete at least one agent run using the agent template. Which will then go through a validation process by SuperAGI and will be publicly listed in the marketplace.
🌐 Github Fetch PR Tool: Agents can use the Github Fetch PR Tool to read the PRs raised within a certain time duration (X seconds/minutes/Hours/days) and then list them according to their PR numbers.
🌐 Github Review PR Tool: Agents can use the Github Review PR Tool to review the code within a given pull request and add the necessary comments for the entire PR.
Published by JohnHunt999 about 1 year ago
🔗 SuperAGI Public APIs are now accessible via Cloud/Local base URLs:
Users can now integrate agents into their applications using our public APIs, accessible via cloud and local base URLs. The current set of APIs allows developers to: Create, pause, resume, and update an AI agent with parameters like name, description, goals, workflow, tools, etc. Start a new agent run or retrieve run details using agent_id and resources like input/output files using run_ids.
To generate the API key, navigate to settings → API keys.
Available APIs can be accessed here: https://documenter.getpostman.com/view/28438662/2s9Xy6rqP5
🤗 New integration with HuggingFace & Replicate to support public/self-hosted models in SuperAGI:
This integration with HuggingFace & Replicate will allow users to bring in public models hosted on HuggingFace/Replicate by entering the exact model name, selecting the provider, and then configuring the required inference endpoint/version ID.
🗿 Added models to SuperAGI marketplace:
Users can also pick any available models directly from the SuperAGI marketplace and configure them with the required Inference endpoint/Version ID.
📇 Added support for Weaviate vector DB for knowledge embeddings:
Users can now integrate their Weaviate Embeddings with SuperAGi’s custom knowledge, and use it in Agent Runs through the Knowledge Search Toolkit. Here’s how to connect with Weaviate h[ttp://superagi.com/docs/Core Components/Vector Database/weaviate](http://superagi.com/docs/Core%20Components/Vector%20Database/weaviate)
🧠 Enabled Long-Term Memory support for the Thinking Tool
The Tool memory allows the Thinking tool to access responses from all tools during an agent run. Responses from every tool are broken into text chunks and saved into a Redis vector. The Thinking tool then performs a semantic search for retrieval of these vectorized chunks of previous responses from other tools.
Please note: Currently, only the Thinking Tool can access the Tool Memory.
🛠️ Added JSON support for Tool Configurations:
Users can now input tool configurations in JSON format. This is enabled to support the Google Analytics tool. If you are looking to create a custom tool that requires JSON config input, check out the GA tool example in the SuperAGI-tools repo: https://github.com/TransformerOptimus/SuperAGI-Tools/tree/main/google_analytics
🗂️ Google Analytics Toolkit: Allowing agents to use GA Tool to autonomously generate traffic reports for your website/app. Currently, the GA tool supports reporting for the following parameters: countries, pages, and devices against user traffic data like bounce rate, average session durations, and total users.
Published by JohnHunt999 about 1 year ago
🤖🗺️ Introduced 2 new Agent Workflows:
Users can now select from multiple pre-defined agent workflows from the drop-down at the time of agent provisioning. These agent workflows are a set of sequential instructions that an agent can follow and start executing a series of tasks in a loop using LLM during its run. The newly added Agent workflows are:
More agent workflows will be introduced in future releases.
⚙️ Added the ‘Edit Agent’ option for an active agent:
The ‘Edit Agent’ option is now available in the agent menu allowing users to edit all the agent details (Goals, Instructions, LLM model, tools, resources, constraints, max iterations, permission type) except the agent name & description. Upon updating the changes, a new run will be created within the agent.
🤖 Introduced Long Term Summary(LTS) & Agent Summary for agent run:
Until v0.0.9, agents were maintaining context for a given task by passing information from their short-term memory (STM) to the LLM. STM is a rolling window containing information based on the LLM’s token limit, meaning that the context outside of this window was lost.
To provide the agent with more context about the job to be done, the information outside of the STM’s rolling window will now be summarized as Long term Summary (LTS) and passed on to the LLM. The weightage of STM and LTS in the response will be 75% and 25% respectively. The combination of STM and LTS is defined as an “Agent Summary”
📤 Added the functionality to manually update Toolkit from the marketplace
Any Changes/updates to SuperAGI toolkits will now be directly published to the marketplace. Users can update the toolkits to the latest version available on the marketplace by using the Update Toolkit button.
📁 Improved the ReadFileTool to read more file formats
The ReadFileTool can now read pdf
, csv
, epub
, docx
, txt
file extensions. Agents will now be able to retrieve, analyze, and use information from these file types directly. The LLM token utilization to process these files will completely depend on the character count in the file (1 token ~ 4 chars) and not on the file size.
📋 Added the option to save agent templates at the “run” level
Instead of automatically saving the details from the first agent run, the “save template” option is now tethered to the individual agent runs - allowing users to create and save templates from every agent run.
🗂️ Apollo.io Toolkit: Search about companies, leads, etc. using the Apollo.io tool and write them to a file and ask the agent to reach out to your leads via email.
🤖 Added a new “ImproveCode” tool to the Coding toolkit to enhance the coding capability of SuperAGI:
The “ImproveCode” tool has been also added to the SuperCoder agent template - enabling users to build sophisticated workflow-driven applications.
The ImproveCode tool goes through the entire code generated by the WriteCodeTool, enhancing code quality and replacing placeholders for missing functions with the required code - improving SuperCoder’s performance, reliability, and code quality.
The new set of instructions for SuperCoder/any agent using CodingToolkit will be as follows “WriteSpec → WriteCode → ImproveCode → WriteTest”.
📚 Introduced Knowledge Embedding in Marketplace:
These Knowledge embeddings can be plugged into an agent workflow, providing the agent with contextual knowledge. Agents can use the “KnowledgeSearch” tool to access this knowledge by running a semantic search query. Currently, SuperAGI supports embeddings that are created from OpenAI's text-embedding-ada-002 model.
Users can install the 'knowledge embeddings' from the marketplace and also add their existing hosted knowledge to SuperAGI. To use the embeddings with an Agent, users can just select the 'KnowledgeSearch Tool' and the desired 'Knowledge Embedding' at the time of agent creation.
To host a local knowledge embedding, users can insert them into a Pinecone or Qdrant index and then proceed with connecting the vector DB manually by inserting the DB’s public URL and setting up knowledge in the SuperAGI dashboard.
🗑️ Added Delete Agent option in the agent menu:
Users can now delete an agent directly from the agent’s activity feed by clicking on the three dots icon next to the “New Run” button. However, the data about APM will still retain the data about deleted agents and runs.
✍🏼 Added Edit Agent Template feature to agent templates:
Added an option to modify agent templates as per user requirements. The modifications will overwrite the previous template. The updated template button will be visible while agent provisioning.
🛠️ A New GitHub repository is created to curate a list of SuperAGI tools created by the community:
All the latest SuperAGI tools will now be uploaded to the following GitHub repo: https://github.com/TransformerOptimus/SuperAGI-Tools.
Contributors can also get their custom tools added by raising a PR. The tool will reflect in the SuperAGI marketplace upon approval from our team. Users can then access and download these tools directly via the marketplace.
🐳 Optimized Docker image size
Eliminated the Celery image build-up step by using the same base image as the backend. We’ve migrated the Backed and GUI base image to a slim version, reducing the final docker image size from 1.94 GB to 1 GB for the backend base image and 1 GB to ~650 MB for the GUI base image.
🗂️ Notion Toolkit: Agents can now utilize the Notion toolkit to write and fetch content from Notion, enabling users to create pages, to-do lists, and roadmaps.
🌐 Instagram Toolkit: Agents can now post images generated via stable diffusion along with captions and hashtags.
💻 ImproveCode Tool: Agents using CodingToolkit can now improve the code by filling in the missing functions, classes and placeholders.
Published by JohnHunt999 over 1 year ago
🤖 Introduced Agent Performance Monitoring (APM) to SuperAGI.
The APM dashboard provides critical telemetry into the working of agent systems including:
-- Organization level metrics such # of Agents, # of Tokens, # of Runs etc.
-- Users can also get Agents-LLM specific insights such as Runs made by an agent using a particular LLM, LLM’s Token consumption etc.
-- Agent level Analytics like tokens consumed by an agent, Total # of runs, avg tokens per run, total calls & run time.
🦬 Added Google's PaLM 2 Bison LLM: Users can configure PaLM2 Bison model in account settings and select from the model dropdown at the time of agent provisioning. Due to PaLM2's smaller size, users can use PaLM2 model for specific goals that do not require as much thinking ability. We have also implemented a new model factory class, enhancing SuperAGI's capability to incorporate future advancements in large language models (LLMs).
🧠 Added Qdrant DB as LTM: SuperAGI now supports Qdrant DB as a Long-Term Memory (LTM). Qdrant DB provides efficient indexing and searching capabilities for large-scale memory storage, enhancing the performance and scalability of SuperAGI agents' long-term memory.
⏱️ Schedule Agent Run: Added the option to schedule a one-time agent run for the future. Users can also set recurring agent runs after specific time intervals and set optional expiry for recurring runs, based on a time deadline or the total number of runs. For more flexibility, users can also stop, edit and save a new schedule.
🗂️ Resource Manager Per Run Output Directory: The Resource Manager now supports a revamped UI and backend structure that enables easier “per-run“ directory management. Outputs of each run can now be downloaded as a zip file. This update provides a more organized and efficient way to manage and access the output files generated by agents.
🌐 DuckDuckGo Tool: Agents can use DuckDuckGo Tool to perform searches without the need for an API key, allowing for easy access to a privacy-focused search experience.
Published by neelayan7 over 1 year ago
🚀 SuperAGI Web version is now live on http://app.superagi.com/ . Users can now access SuperAGI through a web interface, without the need for local installations.
To get started, Signup using a GitHub account followed by adding the OpenAI API key in settings. Configure toolkits like Google Search, GitHub, Jira, etc by navigating to the “Toolkits” section and adding the relevant API keys/IDs/tokens for each toolkit to start using tools in agent runs.
🛄 Introduced SuperAGI Marketplace. Users can now browse through all the toolkits & agent templates available in SuperAGI by navigating to the marketplace section. For instance, you can directly install the “Image Generation” toolkit that contains DALL-E & Stable Diffusion tools to be used in a project that requires the generation of visual assets.
🔀 LlamaIndex Integration. Users can upload .pdf, .docx, .pptx, .csv, .txt, and .epub files to the agent via the resource manager. LlamaIndex converts these files to vector embeddings which the agent can use for searching necessary info using the Resource Query tool. Locally, we have added Redis DB as vector storage for LlamaIndex.
🛠️ Add External Tools. Users running SuperAGI locally can now add custom tools by linking a GitHub repo directly from the frontend.
To add their tool, users simply need to add their repo link after navigating to the new “Add Tool” button in the Toolkits section, the tool will then be imported and visible on the frontend. To start using the tool in agent runs, users will need to re-build the application on their machine. Agents can start using the new tool after the installation is complete
We have also released a how-to doc and a cookie-cutter repo for SuperAGI Tool to encourage custom tool building. Find more information here: https://superagi.com/adding-your-own-custom-tool-toolkit-to-superagi/
✅ Tools can be configured directly from toolkit settings in GUI. Optimized the process of adding and configuring tools for agents, enabling users to easily manage and set up tools by adding API keys/IDs/app credentials/tokens, etc directly into the SuperAGI GUI. (Users no longer need to configure the API keys & credentials in “config.yaml” at the time of local build)
💪🏻 Added GPT-4-32k. Introducing the GPT-4-32k model for running agents. Users having access to the model can now select GPT-4-32k while configuring their agent from the model drop-down section.
🤖 Improvements to SuperCoder. SuperCoder agent template can now generate requirements.txt
for Python projects and package.json
for ‘Javascript’, as well as a run.sh
file for code execution.
⚡️ Improvements to code quality by actively writing unit tests for each PR. With the current code coverage increased from 0 → 50%. The goal is to reach 80% and higher eventually.
🐥 Twitter: SuperAGI agents can now utilize Twitter Toolkit to send tweets along with image/gif/video attachments.
✅ Created a Pull request template for the SuperAGI GitHub repository to provide contributors with guidance on creating well-structured and informative pull requests.
📄 Created a Bug Report Issue Template for users to report bugs more effectively by providing clear and detailed information about the issue.
Published by neelayan7 over 1 year ago
🤖 Introduced SuperCoder agent template type. Using SuperCoder template type users can develop end-to-end coding projects by just providing goals & a set of instructions.
For instance, it can create a personal finance calculator, a Chrome-style dino game, and a Pomodoro application by writing the required code and unit tests.
💬 Now add ‘Agent Instructions’ in the agent setup. Users can now enhance the agent’s precision & efficiency by providing step-by-step instructions to fine-tune its workflow.
✅ Introduced ‘Restricted mode’ with permission controls. The agents running on restricted will constantly seek human approvals to execute critical tasks like writing files, sending emails, moving to the next iteration, etc. Users can either “Approve”, “Give feedback” or “Deny” these permission requests in the Action console to let the agent proceed to the next step.
🛠 Added new primitive of toolkits. Toolkit is a collection of tools. For example, the file manager is a toolkit containing tools like the read file & write file tools. It helps the user to easily attach tools to an agent at the time of provisioning. Also allowing contributors to manage & publish new tools for SuperAGI.
🏋️ Integrated NGINX to streamline the installation process NGINX acts as a reverse proxy, helping in running the Front-End and Back-End on the same URL.
🧠 Introducing Tool Memory to allow agents to access and read responses from other tools. Tools can build upon each other's outputs and cross-communicate to support more complex and integrated workflows. Allows for state management for tool output.
✅ Implemented GitHub Actions to automate the unit testing and linting for the codebase. Ensuring that code meets quality standards and is error-free before merging changes.
🏞 Stable Diffusion: Agents can use stable diffusion models to generate photorealistic images. Allowing agents to generate multimedia assets required to complete the goals.
🗓 Google Calendar: Enabling agents to create/update/delete events to manage and schedule appointments automatically to the user’s calendar.
✒️ Write Specs Tool: Allows agents to write specifications for software projects. Also generate detailed specifications based on user inputs, outlining the requirements, goals, and design considerations for a project.
🧪 Write Unit Tests Tool: Allows agents to write unit tests for their code based on specifications provided by the user or generated by the Write Specs Tool.
📑 Added v1 API documentation to SuperAGI Docs https://superagi.com/docs/
✍️ Added SuperAGI architecture diagrams to README https://github.com/TransformerOptimus/SuperAGI#-architecture
Full Changelog: https://github.com/TransformerOptimus/SuperAGI/compare/v0.0.1...v0.0.6
Published by eqxwow over 1 year ago
Open Source LLMs: https://github.com/TransformerOptimus/SuperAGI/pull/289 Integrates the support for open-source models in the text-generation-webui
module, enabling efficient management of locally hosted Language Model (LLM) instances. This update allows developers to utilize open-source LLMs, expanding the capabilities of their agents. The latest Docker image of Text Generation Web UI
now includes multi-GPU offloading for Generalized Generative Models (GGMLs), enhancing the performance of SuperAGI. Additionally, developers can configure SuperAGI to use TGWUI and conveniently download models from huggingface.co
.
Agent Templates: Introduced agent templates, which are predefined, ready-to-use agents. These templates will soon be available on the Marketplace, providing developers with a quick and convenient way to deploy powerful agents for various purposes.
Test Coverage: Started enhancing the test coverage by adding tests for the Image Generator, GitHub tool, and other core components. Ongoing efforts will focus on further expanding the test coverage to ensure code reliability and stability.
Task Queue Optimization: Refactored the agent workflow to optimize task switching and execution for task queue based Agents.
Web Interactor Tool: Leverages the python-playwright
package, empowering developers to navigate webpages and perform tasks within the browser environment. The Web Interactor is executed within a Docker container and now includes real-time VNC support, enabling users to view agent browser activity.
GitHub Tool: Provides convenient functionality to search for specific files or folders within a GitHub repository. Developers can also perform actions such as adding or deleting files and folders. Combining this with SuperAGI's Coding tool enables various productivity use cases for developers.
Slack Tool: Enables agents to send messages in Slack channels, allowing agent to execute Slack-based workflows.
Searx Tool: A comprehensive, privacy-focused internet metasearch engine that aggregates results from over 70 search services. With Searx, developers can enjoy non-tracking and non-profiling features. It also offers the option to utilize Searx over the Tor network for enhanced online anonymity.
Full Changelog: https://github.com/TransformerOptimus/SuperAGI/compare/v0.0.1...v0.0.5
Published by TransformerOptimus over 1 year ago
Published by eqxwow over 1 year ago
txt
, pdf
as inputPublished by TransformerOptimus over 1 year ago
Published by TransformerOptimus over 1 year ago