# Chatbot UI
## About
Chatbot UI is an open source chat UI for AI models.
See a [demo](https://twitter.com/mckaywrigley/status/1640380021423603713?s=46&t=AowqkodyK6B4JccSOxSPew).
![Chatbot UI](./public/screenshots/screenshot-0402023.jpg)
## Updates
Chatbot UI will be updated over time.
Expect frequent improvements.
**Next up:**
- [ ] Sharing
- [ ] "Bots"
## Deploy
**Vercel**
Host your own live version of Chatbot UI with Vercel.
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fmckaywrigley%2Fchatbot-ui)
**Docker**
Build locally:
```shell
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**
```bash
git clone https://github.com/mckaywrigley/chatbot-ui.git
```
**2. Install Dependencies**
```bash
npm i
```
**3. Provide OpenAI API Key**
Create a .env.local file in the root of the repo with your OpenAI API Key:
```bash
OPENAI_API_KEY=YOUR_KEY
```
> You can set `OPENAI_API_HOST` where access to the official OpenAI host is restricted or unavailable, allowing users to configure an alternative host for their specific needs.
> Additionally, if you have multiple OpenAI Organizations, you can set `OPENAI_ORGANIZATION` to specify one.
**4. Run App**
```bash
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_HOST | `https://api.openai.com` | The base url, for Azure use `https://