/chatgpt-demo

A demo repo based on OpenAI API (gpt-3.5-turbo)

Primary LanguageTypeScriptMIT LicenseMIT

ChatGPT-API Demo

English | 简体中文

A demo repo based on OpenAI GPT-3.5 Turbo API.

🍿 Live preview: https://chatgpt.ddiu.me

⚠️ Notice: Our API Key limit has been exhausted. So the demo site is not available now.

chat-logo

Running Locally

Pre environment

  1. Node: Check that both your development environment and deployment environment are using Node v18 or later. You can use nvm to manage multiple node versions locally。
     node -v
  2. PNPM: We recommend using pnpm to manage dependencies. If you have never installed pnpm, you can install it with the following command:
     npm i -g pnpm
  3. OPENAI_API_KEY: Before running this application, you need to obtain the API key from OpenAI. You can register the API key at https://beta.openai.com/signup.

Getting Started

  1. Install dependencies
     pnpm install
  2. Copy the .env.example file, then rename it to .env, and add your OpenAI API key to the .env file.
     OPENAI_API_KEY=sk-xxx...
  3. Run the application, the local project runs on http://localhost:3000/
     pnpm run dev

Deploy

Deploy With Vercel

Deploy with Vercel

image

Deploy With Netlify

Deploy with Netlify

Step-by-step deployment tutorial:

  1. Fork this project,Go to https://app.netlify.com/start new Site, select the project you forked done, and connect it with your GitHub account.

image

image

  1. Select the branch you want to deploy, then configure environment variables in the project settings.

image

  1. Select the default build command and output directory, Click the Deploy Site button to start deploying the site。

image

Deploy with Docker

# build
docker-compose build .
# run
docker-compose up -d
# stop
docker-compose down

Deploy on more servers

Please refer to the official deployment documentation:https://docs.astro.build/en/guides/deploy

Environment Variables

You can control the website through environment variables.

Name Description Default
OPENAI_API_KEY Your API Key for OpenAI. null
HTTPS_PROXY Provide proxy for OpenAI API. e.g. http://127.0.0.1:7890 null
OPENAI_API_BASE_URL Custom base url for OpenAI API. https://api.openai.com
HEAD_SCRIPTS Inject analytics or other scripts before </head> of the page null
SECRET_KEY Secret string for the project. Use for generating signatures for API calls null
SITE_PASSWORD Set password for site. If not set, site will be public null

Frequently Asked Questions

Q: TypeError: fetch failed (can't connect to OpenAI Api)

A: Configure environment variables HTTPS_PROXY,reference: anse-app#34

Q: throw new TypeError(${context} is not a ReadableStream.)

A: The Node version needs to be v18 or later,reference: anse-app#65

Contributing

This project exists thanks to all those who contributed.

Thank you to all our supporters!🙏

img

License

MIT © ddiu8081