ChatGPT with Plugins

ChatGPT with Plugins is an open source chat UI with plugins access. It utilizes the chatbot-ui as the base UI.

Test it with your nova API key at: https://dongsiqie-chatbot.hf.space/ Get you nova API key here: https://nova-oss.com/

Test it with your OpenAI API key at: https://chat-gpt-with-plugins.vercel.app/

If you don't have access to the OpenAI API, you can test it for free using the ai4all API here: https://ai-4-all.vercel.app

Get you ai4all API key here: https://ai4all.saq1bb.repl.co

Plugins Demo:

demo

Example Plugins to try:

https://websearch.plugsugar.com/.well-known/ai-plugin.json
https://www.accesslinks.ai/.well-known/ai-plugin.json
https://openapi-af.op-mobile.opera.com/openapi/testplugin/.well-known/ai-plugin.json
https://pdfreader.maila.ai/.well-known/ai-plugin.json
https://chatgpt-plugin.mindfuldataai.com/.well-known/ai-plugin.json

Note:

Currently, the only plugin url form it can handle is the one that ends with /.well-known/ai-plugin.json and does not require authentication.

Even if you select more than one plugin, only one plugin is used for making a response.

Currently, all the plugins you selected are shown upon a response.

Docker

Build locally:

docker build -t chatgpt-ui .
docker run -e OPENAI_API_KEY=xxxxxxxx -p 3000:3000 chatgpt-ui

Pull from ghcr:

docker run -e OPENAI_API_KEY=xxxxxxxx -p 3000:3000 ghcr.io/mckaywrigley/chatbot-ui:main

Running Locally

1. Clone Repo

git clone https://github.com/yangjianchuan/chatbot-ui.git

2. Install Dependencies

npm i

3. Provide API Key

Create a .env.local file in the root of the repo with your API Key:

OPENAI_API_KEY=YOUR_KEY

You can set another OpenAI Host by modifying main/utils/app/const.ts. By default, it is set to 'https://api.openai.com'.

Additionally, if you have multiple OpenAI Organizations, you can set OPENAI_ORGANIZATION to specify one.

4. Run App

npm run dev

5. Use It

You should be able to start chatting.

Configuration

When deploying the application, the following environment variables can be set:

Environment Variable Default value Description
OPENAI_API_KEY The default API key used for authentication with OpenAI
OPENAI_API_TYPE openai The API type, options are openai or azure
OPENAI_API_VERSION 2023-03-15-preview Only applicable for Azure OpenAI
AZURE_DEPLOYMENT_ID Needed when Azure OpenAI, Ref Azure OpenAI API
OPENAI_ORGANIZATION Your OpenAI organization ID
DEFAULT_MODEL gpt-3.5-turbo The default model to use on new conversations, for Azure use gpt-35-turbo
NEXT_PUBLIC_DEFAULT_SYSTEM_PROMPT see here The default system prompt to use on new conversations
NEXT_PUBLIC_DEFAULT_TEMPERATURE 1 The default temperature to use on new conversations
GOOGLE_API_KEY See [Custom Search JSON API documentation][GCSE]
GOOGLE_CSE_ID See [Custom Search JSON API documentation][GCSE]

If you do not provide an OpenAI API key with OPENAI_API_KEY, users will have to provide their own key.

If you don't have an OpenAI API key, you can get one here.

Credits

This project has been made possible by:

https://github.com/mckaywrigley/chatbot-ui For the base UI of the project.

https://github.com/devnjw For the plugin implementation and functionality.