Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/camel-ai/multi-agent-streamlit-ui

CAMEL framework-based multi-agent system for task-driven and dynamic environments
https://github.com/camel-ai/multi-agent-streamlit-ui

camel large-language-models multi-agent streamlit

Last synced: 29 days ago
JSON representation

CAMEL framework-based multi-agent system for task-driven and dynamic environments

Awesome Lists containing this project

README

        



Open In Colab


Hugging Face


Slack


Discord


Discord


Twitter Follow

# CAMEL Multi-Agent System Streamlit UI

![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-brightgreen.svg)
![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/camel-ai/camel/pytest_package.yml?label=tests&logo=github)

![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/camel-ai/camel/documentation.yaml?label=docs&logo=github)


GitHub Repo Stars

![License](https://img.shields.io/github/license/camel-ai/camel?label=license&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjI0IiBoZWlnaHQ9IjI0IiBmaWxsPSIjZmZmZmZmIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xMi43NSAyLjc1YS43NS43NSAwIDAwLTEuNSAwVjQuNUg5LjI3NmExLjc1IDEuNzUgMCAwMC0uOTg1LjMwM0w2LjU5NiA1Ljk1N0EuMjUuMjUgMCAwMTYuNDU1IDZIMi4zNTNhLjc1Ljc1IDAgMTAwIDEuNUgzLjkzTC41NjMgMTUuMThhLjc2Mi43NjIgMCAwMC4yMS44OGMuMDguMDY0LjE2MS4xMjUuMzA5LjIyMS4xODYuMTIxLjQ1Mi4yNzguNzkyLjQzMy42OC4zMTEgMS42NjIuNjIgMi44NzYuNjJhNi45MTkgNi45MTkgMCAwMDIuODc2LS42MmMuMzQtLjE1NS42MDYtLjMxMi43OTItLjQzMy4xNS0uMDk3LjIzLS4xNTguMzEtLjIyM2EuNzUuNzUgMCAwMC4yMDktLjg3OEw1LjU2OSA3LjVoLjg4NmMuMzUxIDAgLjY5NC0uMTA2Ljk4NC0uMzAzbDEuNjk2LTEuMTU0QS4yNS4yNSAwIDAxOS4yNzUgNmgxLjk3NXYxNC41SDYuNzYzYS43NS43NSAwIDAwMCAxLjVoMTAuNDc0YS43NS43NSAwIDAwMC0xLjVIMTIuNzVWNmgxLjk3NGMuMDUgMCAuMS4wMTUuMTQuMDQzbDEuNjk3IDEuMTU0Yy4yOS4xOTcuNjMzLjMwMy45ODQuMzAzaC44ODZsLTMuMzY4IDcuNjhhLjc1Ljc1IDAgMDAuMjMuODk2Yy4wMTIuMDA5IDAgMCAuMDAyIDBhMy4xNTQgMy4xNTQgMCAwMC4zMS4yMDZjLjE4NS4xMTIuNDUuMjU2Ljc5LjRhNy4zNDMgNy4zNDMgMCAwMDIuODU1LjU2OCA3LjM0MyA3LjM0MyAwIDAwMi44NTYtLjU2OWMuMzM4LS4xNDMuNjA0LS4yODcuNzktLjM5OWEzLjUgMy41IDAgMDAuMzEtLjIwNi43NS43NSAwIDAwLjIzLS44OTZMMjAuMDcgNy41aDEuNTc4YS43NS43NSAwIDAwMC0xLjVoLTQuMTAyYS4yNS4yNSAwIDAxLS4xNC0uMDQzbC0xLjY5Ny0xLjE1NGExLjc1IDEuNzUgMCAwMC0uOTg0LS4zMDNIMTIuNzVWMi43NXpNMi4xOTMgMTUuMTk4YTUuNDE4IDUuNDE4IDAgMDAyLjU1Ny42MzUgNS40MTggNS40MTggMCAwMDIuNTU3LS42MzVMNC43NSA5LjM2OGwtMi41NTcgNS44M3ptMTQuNTEtLjAyNGMuMDgyLjA0LjE3NC4wODMuMjc1LjEyNi41My4yMjMgMS4zMDUuNDUgMi4yNzIuNDVhNS44NDYgNS44NDYgMCAwMDIuNTQ3LS41NzZMMTkuMjUgOS4zNjdsLTIuNTQ3IDUuODA3eiI+PC9wYXRoPjwvc3ZnPgo=)


Community |
Installation |
Documentation |
Examples |
Paper |
Citation |
Contributing |
CAMEL-AI



## Overview
This project, part of CAMEL, implements a multi-agent system with a user interface developed in Streamlit. It showcases the integration of advanced agent-based modeling techniques with an accessible and interactive web interface.



### ⚠️ Development and Testing Warning

**Warning**: The multi-agent system is still under active development and testing, which means the UI may have several issues. If you encounter problems, please try refreshing the page and rerunning it. Additionally, we encourage you to report any issues you encounter by submitting an 'Issue' on the GitHub repository. Your feedback is valuable in improving the system's stability and functionality.

## Community
🐫 CAMEL is an open-source library designed for the study of autonomous and communicative agents. We believe that studying these agents on a large scale offers valuable insights into their behaviors, capabilities, and potential risks. To facilitate research in this field, we implement and support various types of agents, tasks, prompts, models, and simulated environments.

Join us ([*Slack*](https://join.slack.com/t/camel-kwr1314/shared_invite/zt-1vy8u9lbo-ZQmhIAyWSEfSwLCl2r2eKA), [*Discord*](https://discord.gg/CNcNpquyDc) or [*WeChat*](https://ghli.org/camel/wechat.png)) in pushing the boundaries of building AI Society.

## Introduction to Multi-Agent System of CAMEL



In an era where digital interfaces are integral to our daily lives, the need for seamless and meaningful human-computer interactions has never been greater. This is where the groundbreaking the Multi-Agent System comes into play, introducing a game-changer in the realm of digital communication. **You can find more design concepts of the system here: [design docs](https://github.com/camel-ai/multi-agent-streamlit-ui/tree/feature/multi-agent/design_docs)**

The Multi-Agent System has risen as a critical solution to complex and dynamic problems in computational intelligence. CAMEL.AI, an acronym for *Communicative Agents for “Mind” Exploration of Large-Scale Language Model Society*, is an outstanding open-source community that aims to refine how AI agents interact within an AI system. The Multi-Agent System, proposed by CAMEL.AI, endeavors to meet the nuanced requirements and expectations of users and enterprises, which demand systems that are both adaptive and capable of advanced problem-solving.

The architecture of the Multi-Agent System in CAMEL.AI comprises two main modules: the **Module of Task Driven** and the **Module of Dynamic Environment Maintenance**.

The innovation of our system lies in a multi-faceted approach, incorporating tools such as Gantt charts, concurrent calls, memory retrieval, information extraction, and pre-prompt strategies, enabling our the Multi-Agent System to address a vast majority of practical challenges. These features are not only unique and insightful but also synergistic, as evidenced by our experiments and manual evaluations, which have shown combined application to exceed the industry expectations.

Moreover, in the realm of prompt engineering within the Multi-Agent System, the essential objective is to uphold generality and versatility of the system rather than confining it to niche domains like software development. To date, the deployment of the Multi-Agent System in many problem-solving scenarios — from mathematical reasoning and modeling to novel writing, software development, and educational instruction — has yielded results that surpass anticipated effectiveness.

## Installation
### Local Hosting
1. Clone the repository, and then navigate to the project directory:
``` sh
git clone https://github.com/camel-ai/multi-agent-streamlit-ui.git
cd multi-agent-streamlit-ui
```
2. Create and activate a virtual environment (optional but recommended):
``` sh
python -m venv myenvname
./myenvname/Scripts/activate # Windows
source myenvname/bin/activate # MacOS
```
3. Install the dependencies:
``` sh
python -m pip install --upgrade pip
pip uninstall camel-ai # Make sure you will get the latest version of Camel
pip install streamlit
pip install -r requirements.txt
```
4. Set up the streamlit app:
``` sh
streamlit run streamlit_app.py
```
5. After starting the Streamlit application, if the system requires the API keys for certain functionalities, you will typically be prompted to enter them within the Streamlit UI. Enter your API keys in the designated field and submit or save it to enable the full features of the application. Ensure that your API key is kept secure and not shared publicly, as it might provide access to sensitive data or functionalities.
- OpenAI API Key
- Google API Key ([Google Cloud Console](https://cloud.google.com/))
- Search Engine ID ([Google Custom Search JSON API page](https://developers.google.com/custom-search/v1/overview))

### Remote Hosting
1. This project is also available on a remote host for easier access and testing. You can find the application hosted: [CAMEL Multi-Agent UI](https://camel-multi-agent-ui.streamlit.app/).
2. After starting the Streamlit application, if the system requires the API keys for certain functionalities, you will typically be prompted to enter them within the Streamlit UI. Enter your API keys in the designated field and submit or save it to enable the full features of the application. Ensure that your API key is kept secure and not shared publicly, as it might provide access to sensitive data or functionalities.
- OpenAI API Key
- Google API Key ([Google Cloud Console](https://cloud.google.com/))
- Search Engine ID ([Google Custom Search JSON API page](https://developers.google.com/custom-search/v1/overview))

### 🚨 Warnings
- ❗Cloud Deployment Stability: The cloud-hosted version of this application is still in testing phases and may be unstable or subject to downtime.
- ⌛Response Time: The free version hosted in the cloud may have longer response times.
- ⚠️Deployment Risk: Be aware of the risks associated with deploying this version, as it is public and still under active development.
- ⚠️ API Influence: The functionality of this version is also influenced by external API dependencies. If you encounter a failure in operation, please refresh the page and attempt to retry. This step can help resolve issues caused by temporary API disruptions or limitations.

## Documentation

[CAMEL package documentation pages](https://camel-ai.github.io/camel/)

## Acknowledgement
Special thanks to [Nomic AI](https://home.nomic.ai/) for giving us extended access to their data set exploration tool (Atlas).

We would also like to thank Haya Hammoud for designing the logo of our project.

## License

The intended purpose and licensing of CAMEL is solely for research use.

The source code is licensed under Apache 2.0.

The datasets are licensed under CC BY NC 4.0, which permits only non-commercial usage. It is advised that any models trained using the dataset should not be utilized for anything other than research purposes.

## Contributing to CAMEL 🐫
We appreciate your interest in contributing to our open-source initiative. We provide a document of [contributing guidelines](https://github.com/camel-ai/camel/blob/master/CONTRIBUTING.md) which outlines the steps for contributing to CAMEL. Please refer to this guide to ensure smooth collaboration and successful contributions. 🤝🚀

## Contact
For more information please contact [email protected].