Git Product home page Git Product logo

agentok's Introduction

Agentok Studio

AutoGen Visualized - Build Multi-Agent Apps with Drag-and-Drop Simplicity.

Open in Dev Containers Open in GitHub Codespaces License GitHub release GitHub star

๐ŸŒŸ What is Agentok Studio

Agentok Studio is a tool built upon AutoGen, a powerful agent framework from Microsoft and a vibrant community of contributors.

We consider AutoGen to be at the forefront of next-generation Multi-Agent Applications technology. Agentok Studio takes this concept to the next level by offering intuitive visual tools that streamline the creation and management of complex agent-based workflows. This simplifies the entire process for creators and developers.

studio-1

We strive to create a user-friendly tool that generates native Python code with minimal dependencies. Simply put, Agentok Studio is a diagram-based code generator for autogen. The generated code is self-contained and can be executed anywhere as a normal Python program, relying solely on the official pyautogen library.

codegen-1

Contributions (Issues, Pull Requests, Documentation, even Typo-corrections) to this project are welcome! All contributors will be added to the Contribution Wall.

๐Ÿ’ก Quickstart

To quickly explore the features of Agentok Studio, visit https://studio.agentok.ai. While we offer an online deployment of this project, please note that it is not intended for production use. The service level agreement is not guaranteed, and stored data may be wiped due to breaking changes.

After login as Guest or with your OAuth2 account, you can click the Create New Project button to create a new project. The new project comes with a sample workflow. You can click the robot icon flashing on the right bottom to start the conversation.

studio-2

Due to the limitations of GPT-4 and AutoGen, this simple workflow may not work as expected, but it's a good starting point to understand the basic concepts of Agentic App and Agentok Studio.

For a more in-depth look at the project, please refer to Getting Started.

Migration of Official Notebooks

We made tutorials based on the official notebooks from Autogen repository. You can refer to the original notebook here.

๐Ÿ”ฒ Planned/Working โœ… Completed ๐Ÿ†˜ With Issues โญ• Out of Scope

Warning

Due to data format incompatibility, the current results have been wiped and need to be re-migrated.

Example Status Comments
simple_chat โœ… Simple Chat
auto_feedback_from_code_execution โœ… Feedback from Code Execution
auto_build โญ• This is a feature to be considered to add to flow generation. #40
chess ๐Ÿ”ฒ This depends on the feature of importing custom Agent #38
compression โœ…
dalle_and_gpt4v โœ… Supported with app.extensions
function_call_async โœ…
function_call โœ…
graph_modelling_language โญ• This is out of project scope. Open an issue if necessary
group_chat_RAG ๐Ÿ†˜ This notebook does not work
groupchat_research โœ…
groupchat_vis โœ…
groupchat โœ…
hierarchy_flow_using_select_speaker ๐Ÿ”ฒ
human_feedback โœ… Human in the Loop
inception_function ๐Ÿ”ฒ
langchain โญ• No plan to support
lmm_gpt-4v โœ…
lmm_llava โœ… Depends on Replicate
MathChat โœ… Math Chat
oai_assistant_function_call โœ…
oai_assistant_groupchat ๐Ÿ†˜ Very slow and not work well, sometimes not returning.
oai_assistant_retrieval โœ… Retrieval (OAI)
oai_assistant_twoagents_basic โœ…
oai_code_interpreter โœ…
planning โœ… This sample works fine, but does not exit gracefully.
qdrant_RetrieveChat ๐Ÿ”ฒ
RetrieveChat ๐Ÿ”ฒ
stream ๐Ÿ”ฒ
teachability ๐Ÿ”ฒ
teaching ๐Ÿ”ฒ
two_users โœ… The response will be very long and should set a large max_tokens.
video_transcript_translate_with_whisper โœ… Depends on ffmpeg lib, should brew install ffmpeg and export IMAGEIO_FFMPEG_EXE. Since ffmpeg occupies too much space, the online version has removed the support.
web_info โœ…
cq_math โญ• This example is quite irrelevant to autogen, why not just use OpenAI API?
Async_human_input โญ• Need scenario.
oai_chatgpt_gpt4 โญ• Fine-tuning, out of project scope
oai_completion โญ• Fine-tuning, out of project scope

๐Ÿณ Run on Local (with Docker)

The project contains Frontend (Built with Next.js) and Backend service (Built with Flask in Python), and have been fully dockerized.

The easiest way to run on local is using docker-compose:

cp ui/.env.example ui/.env
rm ui/.env.production
docker-compose up -d

You can also build and run the ui and service separately with docker:

docker build -t agentok-api ./api
docker run -d -p 5004:5004 agentok-api

docker build -t agentok-ui ./ui
docker run -d -p 2855:2855 agentok-ui

docker build -t agentok-db ./pocketbase
docker run -d -p 7676:7676 agentok-db

(The default port number 2855 is the address of our first office.)

๐Ÿš€ Deployment

Deploy on Railway

Railway.app supports the deployment of applications in Dockers. By clicking the "Deploy on Railway" button, you'll streamline the setup and deployment of your application on Railway platform:

  1. Click the "Deploy on Railway" button to start the process on Railway.app.
  2. Log in to Railway and set the following environment variables:
    • PORT: Please set for each services as 2855, 5004, 7676 respectively.
  3. Confirm the settings and deploy.
  4. After deployment, visit the provided URL to access your deployed application.

๐Ÿ› ๏ธ Run on Local (Without Docker)

If you're interested in contributing to the development of this project or wish to run it from the source code, you have the option to run the ui and service independently. Here's how you can do that:

  1. UI (Frontend)

    • Navigate to the ui directory cd ui.
    • Rename .env.sample to .env.local and set the value of variables correctly.
    • Install the necessary dependencies using the appropriate package manager command (e.g., pnpm install or yarn).
    • Run the ui service using the start-up script provided (e.g., pnpm dev or yarn dev).
  2. API (Backend Services)

    • Switch to the api service directory cd api.
    • Rename .env.sample to .env, OAI_CONFIG_LIST.sample to OAI_CONFIG_LIST, and set the value of variables correctly.
    • Create virtual environment: python3 -m venv venv.
    • Activate virtual environment: source venv/bin/activate.
    • Install all required dependencies: pip install -r requirements.txt.
    • Launch the api service using command uvicorn app.main:app --reload --port 5004.

REPLICATE_API_TOKEN is needed for LLaVa agent. If you need to use this agent, make sure to include this token in environment variables, such as the Environment Variables on Railway.app.

IMPORTANT: For security reasons, the latest version of autogen requires Docker for code execution. So you need to install Docker on your local machine beforehand, or add AUTOGEN_USE_DOCKER=False to file /api/.env.

  1. PocketBase:

    • Switch to the PocketBase directory cd pocketbase.
    • Build the container: docker build -t agentok-db .
    • Run the container: docker run -it --rm -p 7676:7676 agentok-db

Each new commit to the main branch triggers an automatic deployment on Railway.app, ensuring you experience the latest version of the service.

Warning

Changes to Pocketbase project will cause the rebuild and redeployment of all instances, which will swipe all the data.

Please do not use it for production purpose, and make sure you export flows in time.

Once you've started both the ui and api services by following the steps previously outlined, you can access the application by opening your web browser and navigating to:

If your services are started successfully and running on the expected ports, you should see the user interface or receive responses from the api services via this URL.

๐Ÿ‘จโ€๐Ÿ’ป Contributing

Contributions are welcome! It's not limited to code, but also includes documentation and other aspects of the project. You can open a GitHub Issue or leave comments on our Discord Server.

This project welcomes contributions and suggestions. Please read our Contributing Guide first.

If you are new to GitHub, here is a detailed help source on getting involved with development on GitHub.

Please consider contributing to AutoGen, as Agentok Studio relies on a robust foundation to deliver its capabilities. Your contributions can help enhance the platform's core functionalities, ensuring a more seamless and efficient development experience for Multi-Agent Applications.

This project uses ๐Ÿ“ฆ๐Ÿš€semantic-release to manage versioning and releases. To avoid too frequent auto-releases, we make it a manual GitHub Action to trigger the release.

To follow the Semantic Release process, we enforced commit-lint convention on commit messages. Please refer to Commitlint for more details.

Contributors Wall

๐Ÿ“ License

The project is licensed under Apache 2.0 with additional terms and conditions.

agentok's People

Contributors

hughlv avatar dependabot[bot] avatar nsvrana avatar

Stargazers

huihai avatar Xiaoyun Zhang avatar Janghoo Lee avatar  avatar  avatar Dominik Antal avatar  avatar  avatar Azam Iftikhar avatar Alejandro Escanero Blanco avatar Juan avatar SofyrusAdmin avatar NAITIVE avatar Adel Eddarai avatar  avatar  avatar danielchen avatar Samet Yilmaz avatar  avatar Basit Mustafa avatar Morty avatar  avatar Andri avatar  avatar  avatar cuiyi avatar Victor Minchev avatar A avatar ๆตฎ็”Ÿ avatar Atanas Mahony avatar Degen avatar Oleksii avatar Jackie Moo avatar  avatar tesang avatar  avatar  avatar Yang Sun avatar Zac avatar  avatar Samuel Devdas avatar Nuno Poรงo avatar Vithor Jaeger avatar  avatar Marco Fiocco avatar Camilo Saa avatar Mingyang Dai avatar  avatar  avatar gyunggyung avatar Andrea Bernini avatar Lion M. avatar  avatar  avatar Joel Ryan avatar  avatar Ravi Teja avatar  avatar  avatar Shankar Ambady avatar Ilyes avatar  avatar Retali Tristan avatar  avatar  avatar  avatar  avatar Jose Suarez avatar Jesus Pacheco avatar Minjie Sun avatar Wender Teixeira avatar Erik Nomitch avatar Yufan Dang avatar  avatar  avatar Thinkwee avatar Meta Twin avatar SpongeBob avatar  avatar  avatar Arnas Stasiulis avatar  avatar TU. CHENG SHIN avatar Zohaib Ahmed avatar SquidBlock avatar Woojin Kim avatar  avatar Miraclewang avatar  avatar  avatar Peggy Wang avatar Vlad K avatar Vladislav Sorokin avatar Ebrahim Mohammed avatar tensorboy avatar David Green avatar Richard Andresen avatar frbrn avatar Zachary BENSALEM avatar  avatar

Watchers

Lucian avatar Alexander Wang avatar  avatar  avatar Peter avatar  avatar HuFeiHu avatar

agentok's Issues

awesome project

does this support handling user input when its set to always?

The custom get_human_input did not send finish message

The custom get_human_input did not send finish message

# Replace the default get_human_input function for status control
def custom_get_human_input(self, prompt: str) -> str:
    # Set wait_for_human_input to True
    print('__STATUS_WAIT_FOR_HUMAN_INPUT__', prompt, flush=True)
    reply = input(prompt)
    # Restore the status to running
    print('__STATUS_RECEIVED_HUMAN_INPUT__', prompt, flush=True)
    return reply

Public and User data management

Need to implement these features:

  1. List public flows in Gallery, readonly to all, owner can revoke but should not edit the published flows direclty;
  2. User flows CRUD;
  3. Create Chat Session from flow (both public and user-level); #3
  4. List user flows in Flow page;
  5. Fork a public flow from Gallery;
  6. Publish a user flow to Gallery as public flow;

Waiting for background tasks to complete

The backend service will hangup and does not receive new message

INFO:     127.0.0.1:60493 - "POST /chats/dpe1c8692zrdp65/messages HTTP/1.1" 200 OK
INFO:     Waiting for background tasks to complete. (CTRL+C to force quit)

Need to review the process control logic to make sure it quite gracefully after task done.

Issue Report: Invalid URL / Ui problem on docker (windows/raspberry)

Environment Details:
Date/Time: 2024-05-27 21:28:54
Platform: Windows Docker desktop container build with docker compose command + raspberry pi with portainer

Summary:
The UI is not functioning correctly... I am encountering several issues:

  • Unable to log in with Google
  • Unable to create an API key in the settings
  • Cannot generate a chat window
  • Unable to use templates
  • Attached are the UI and API logs.

log_api.txt
log_ui.txt

Slow first response

Need to implement some sort of acceleration or caching mechanism, to shorten the time of first response message.

Twitter (X) avatar does not display

pbs.twimg.com/profile_images/1554647454666338304/9paBkZ2V_normal.jpg:1

    GET https://pbs.twimg.com/profile_images/1554647454666338304/9paBkZ2V_normal.jpg net::ERR_BLOCKED_BY_CLIENT

Image (async)
aU @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
a0 @ d16e89e2-9ba597a53a28b46c.js:1
a$ @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
o8 @ d16e89e2-9ba597a53a28b46c.js:1
n1 @ d16e89e2-9ba597a53a28b46c.js:1
n3 @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
layout-85c60bdce56980ab.js:1 Failed to load avatar image https://pbs.twimg.com/profile_images/1554647454666338304/9paBkZ2V_normal.jpg
onError @ layout-85c60bdce56980ab.js:1
ak @ d16e89e2-9ba597a53a28b46c.js:1
az @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
sb @ d16e89e2-9ba597a53a28b46c.js:1
sk @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
oH @ d16e89e2-9ba597a53a28b46c.js:1
iN @ d16e89e2-9ba597a53a28b46c.js:1
sz @ d16e89e2-9ba597a53a28b46c.js:1
uS @ d16e89e2-9ba597a53a28b46c.js:1
error (async)
sx @ d16e89e2-9ba597a53a28b46c.js:1
sw @ d16e89e2-9ba597a53a28b46c.js:1
sI @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
o6 @ d16e89e2-9ba597a53a28b46c.js:1
o2 @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1
o1 @ d16e89e2-9ba597a53a28b46c.js:1
n1 @ d16e89e2-9ba597a53a28b46c.js:1
n3 @ d16e89e2-9ba597a53a28b46c.js:1
(anonymous) @ d16e89e2-9ba597a53a28b46c.js:1

bug

I've experienced your platform and it feels great. But now there seems to be something wrong with the backend api, hope you can fix it.

Incorrect import indentation in generated code

try:
  from autogen import AssistantAgent
  from autogen import UserProxyAgent
  from autogen.agentchat.contrib.gpt_assistant_agent import GPTAssistantAgent
  from autogen import GroupChat
from autogen import GroupChatManager
except ImportError as e:
  print(colored(f'Error: {e}', 'red'))
  raise

DALLE image expires very soon

Website Homepage

Consider to work on the homepage in website (docusaurus) to provide a homepage of FlowGen.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.