Skip to content

andreicozma1/GroupChat-GPT

Repository files navigation

GroupChat-GPT

Imagine a world where multiple Large Language Models (LLMs) collaborate together to help us humans with various tasks.
Well, this application is a step towards that world.

Table of Contents

Features:

Chat with Specialized & Personalized Assistants:

  • Powered by the OpenAI GPT-3 API
  • Current members: @davinci, @dalle, and @codex
  • Assistants are given their own distinct personalities, behaviors, and capabilities through dynamically-created generation prompts.
    • Subject to tweaks and changes over time, so read through the following files instead: ./src/util/chat/users
    • Tip: if you want to see the final prompt text that was created for each assistant message, I am printing them as 'error' to the JS console, lol

introductions

Response Coordinator

  • @coordinator is a special assistant who dictates who should respond to the user's message by tagging other assistants
  • Tip: Directly tag an assistant (ex: @davinci) to only have them respond (this skips the coordinator)

coordinator-all

coordinator-one

Generate Images

  • @gen_image is an assistant helper that directly uses the OpenAI DALL·E 2 API, which can generate images from text prompts.
  • @dalle (the chatting assistant) can help you generate these text prompts to generate images as you'd like.
  • Tip: you can also directly prompt the OpenAI DALL·E 2 API just like @dalle did (<gen_image>A picture of a cat.<gen_image>)

dalle

Contexts, Follow-ups, and Ignored Messages

  • Hover over a message to visualize the messages that were used to provide context
  • Coordinator messages are ignored by default - they won't be used as generation context for other assistants because that would waste tokens
  • You can manually ignore messages by clicking the 'eye' icon at the bottom-right of a message

message-contexts

Markdown Formatting

  • The UI for the chat message bubbles supports Markdown formatting

markdown

Setup Project & Dependencies

Install Node.JS (version ^18 required) and Yarn:

nvm install 18
# Optional: set this version as default:
nvm alias default node

Install Yarn:

npm install -g yarn

Install the rest of the project dependencies

yarn install

Important!! - You will have to put your OpenAI API Key inside the .env file.

  • If forking this repository, run git update-index --assume-unchanged .env to make sure you don't accidentally push your API key to the repo

Run & Build

Start the app in development mode

  • hot-code reloading, error reporting, etc.
yarn start

Build the app for production

yarn build

Additional Commands

Lint the files

yarn lint

Format the files

yarn format

License & Credit

You may use this software and/or modify its functionality as you wish, but I ask you to keep the in-app credits intact and include a link to this repository in any derivative work.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages