ChatGPT Next Web
ê°ì¸ ChatGPT ì¹ ì í리ì¼ì´ì
ì í ë²ì í´ë¦ì¼ë¡ 무ë£ë¡ ë°°í¬íì¸ì.
[ë°ëª¨ Demo](https://chat-gpt-next-web.vercel.app/) / [í¼ëë°± Issues](https://github.com/Yidadaa/ChatGPT-Next-Web/issues) / [Discord ì°¸ì¬](https://discord.gg/zrhvHCr79N) / [QQ 그룹](https://user-images.githubusercontent.com/16968934/228190818-7dd00845-e9b9-4363-97e5-44c507ac76da.jpeg) / [ê°ë°ììê² ê¸°ë¶](https://user-images.githubusercontent.com/16968934/227772541-5bcd52d8-61b7-488c-a203-0330d8006e2b.jpg) / [ê¸°ë¶ Donate](#기ë¶-donate-usdt)
[![Vercelë¡ ë°°í¬í기](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FYidadaa%2FChatGPT-Next-Web&env=OPENAI_API_KEY&env=CODE&project-name=chatgpt-next-web&repository-name=ChatGPT-Next-Web)
[![Gitpodìì ì´ê¸°](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/Yidadaa/ChatGPT-Next-Web)
![ë©ì¸ íë©´](./docs/images/cover.png)
## ì¬ì© ìì
1. [OpenAI API Key](https://platform.openai.com/account/api-keys)를 ì¤ë¹í©ëë¤.
2. ì¤ë¥¸ìª½ ë²í¼ì í´ë¦íì¬ ë°°í¬ë¥¼ ììíììì¤:
[![Vercelë¡ ë°°í¬í기](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FYidadaa%2FChatGPT-Next-Web&env=OPENAI_API_KEY&env=CODE&project-name=chatgpt-next-web&repository-name=ChatGPT-Next-Web). Github ê³ì ì¼ë¡ ë°ë¡ ë¡ê·¸ì¸íììì¤. API Keyì [íì´ì§ ì ê·¼ ë¹ë°ë²í¸](#íì´ì§-ì ê·¼-ë¹ë°ë²í¸-ì¤ì ) CODE를 íê²½ ë³ì íì´ì§ì ì
ë ¥íììì¤.
3. ë°°í¬ê° ìë£ëë©´ ì¬ì©ì ììíììì¤.
4. (ì í ì¬í) [ì¬ì©ì ì ì ëë©ì¸ ë°ì¸ë©](https://vercel.com/docs/concepts/projects/domains/add-a-domain) : Vercelìì í ë¹í ëë©ì¸ DNSê° ì¼ë¶ ì§ììì ì¤ì¼ëì´ ììµëë¤. ì¬ì©ì ì ì ëë©ì¸ì ë°ì¸ë©íë©´ ì§ì ì°ê²°í ì ììµëë¤.
## ì
ë°ì´í¸ ì ì§
ìì ë¨ê³ëë¡ íë¡ì í¸ë¥¼ ë°°í¬í ê²½ì° "ì
ë°ì´í¸ê° ììµëë¤"ë¼ë ë©ìì§ê° íì íìë ì ììµëë¤. ì´ë Vercelì´ ê¸°ë³¸ì ì¼ë¡ ì íë¡ì í¸ë¥¼ ìì±íê³ ì´ íë¡ì í¸ë¥¼ í¬í¬íì§ ì기 ë문ì
ëë¤. ì´ ë¬¸ì ë ì
ë°ì´í¸ë¥¼ ì¬ë°ë¥´ê² ê°ì§í ì ììµëë¤.
ìë ë¨ê³ë¥¼ ë°ë¼ ë¤ì ë°°í¬íììì¤:
- 기존 ì ì¥ì를 ìì í©ëë¤.
- íì´ì§ ì¤ë¥¸ìª½ ìë¨ì í¬í¬ ë²í¼ì ì¬ì©íì¬ ì´ íë¡ì í¸ë¥¼ í¬í¬í©ëë¤.
- Vercelìì ë¤ì ì ííì¬ ë°°í¬íììì¤. [ìì¸í íí ë¦¬ì¼ ë³´ê¸°](./docs/vercel-cn.md#ì-íë¡ì í¸-ë§ëë-ë°©ë²).
### ìë ì
ë°ì´í¸ íì±í
> Upstream Sync ì¤ë¥ê° ë°ìí ê²½ì° ìëì¼ë¡ Sync Fork를 í ë² ì¤ííììì¤!
íë¡ì í¸ë¥¼ í¬í¬í í GitHubì ì íì¼ë¡ ì¸í´ í¬í¬í íë¡ì í¸ì ëì íì´ì§ìì ìí¬íë¡ì°ë¥¼ ìëì¼ë¡ íì±íí´ì¼ í©ëë¤. Upstream Sync Actionì íì±ííë©´ 매ìê°ë§ë¤ ìë ì
ë°ì´í¸ê° íì±íë©ëë¤:
![ìë ì
ë°ì´í¸](./docs/images/enable-actions.jpg)
![ìë ì
ë°ì´í¸ íì±í](./docs/images/enable-actions-sync.jpg)
### ìëì¼ë¡ ì½ë ì
ë°ì´í¸
ìëì¼ë¡ ì¦ì ì
ë°ì´í¸íë ¤ë©´ [GitHub 문ì](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork)ìì í¬í¬ë íë¡ì í¸ë¥¼ ì´ë»ê² ì본 ì½ëì ë기ííëì§ íì¸íììì¤.
ì´ íë¡ì í¸ì ë³í/ê°ì를 ë¶ì¬íê±°ë ìì±ì를 íë¡ì°íì¬ ì ê¸°ë¥ ì
ë°ì´í¸ ì림ì ë°ì ì ììµëë¤.
## íì´ì§ ì ê·¼ ë¹ë°ë²í¸ ì¤ì
> ë¹ë°ë²í¸ê° ì¤ì ë í, ì¬ì©ìë ì¤ì íì´ì§ìì ì ê·¼ ì½ë를 ìëì¼ë¡ ì
ë ¥íì¬ ì ìì ì¼ë¡ ì±í
í ì ììµëë¤. ê·¸ë ì§ ìì¼ë©´ ë©ìì§ë¥¼ íµí´ ê¶íì´ ìë ìíê° íìë©ëë¤.
> **ê²½ê³ ** : ë¹ë°ë²í¸ì 길ì´ë¥¼ 충ë¶í ê¸¸ê² ì¤ì íììì¤. ìµì 7 ì리 ì´ìì´ ì¢ìµëë¤. ê·¸ë ì§ ìì¼ë©´ [í´í¹ë ì ììµëë¤](https://github.com/Yidadaa/ChatGPT-Next-Web/issues/518).
ì´ íë¡ì í¸ë ì íë ê¶í ì ì´ ê¸°ë¥ì ì ê³µí©ëë¤. Vercel íë¡ì í¸ ì»¨í¸ë¡¤ í¨ëì íê²½ ë³ì íì´ì§ìì `CODE`ë¼ë íê²½ ë³ì를 ì¶ê°íììì¤. ê°ì ì¼íë¡ êµ¬ë¶ë ì¬ì©ì ì ì ë¹ë°ë²í¸ë¡ ì¤ì ë©ëë¤. (ìë ììì ê²½ì° `code1` `code2` `code3` 3ê°ì ë¹ë°ë²í¸ê° ìì±ë©ëë¤.)
```
code1,code2,code3
```
ì´ íê²½ ë³ì를 ì¶ê°íê±°ë ìì í íìë íë¡ì í¸ë¥¼ ë¤ì ë°°í¬íì¬ ë³ê²½ ì¬íì ì ì©í´ì¼ í©ëë¤.
## íê²½ ë³ì
> ì´ íë¡ì í¸ìì ëë¶ë¶ì ì¤ì ììë¤ì íê²½ ë³ì를 íµí´ ì¤ì ë©ëë¤. [Vercel íê²½ë³ì ìì ë°©ë².](./docs/vercel-ko.md)ã
## OPENAI_API_KEY (íì í목)
OpenAI í¤ë¡, openai ê³ì íì´ì§ìì ì ì²í api keyì
ëë¤.
## CODE (ì í ê°ë¥)
ì ê·¼ ë¹ë°ë²í¸ë¡, ì íì ì
ëë¤. ì¼í를 ì¬ì©íì¬ ì¬ë¬ ë¹ë°ë²í¸ë¥¼ 구ë¶í ì ììµëë¤.
**ê²½ê³ ** : ì´ í목ì ì
ë ¥íì§ ìì¼ë©´, ë구ë ì¬ë¬ë¶ì´ ë°°í¬í ì¹ì¬ì´í¸ë¥¼ ì§ì ì¬ì©í ì ìê² ë©ëë¤. ì´ë¡ ì¸í´ í í°ì´ ë¹ ë¥´ê² ìì§ë ì ìì¼ë¯ë¡, ì´ í목ì ë°ëì ì
ë ¥íë ê²ì´ ì¢ìµëë¤.
## BASE_URL (ì í ê°ë¥)
> 기본ê°: `https://api.openai.com`
> ìì: `http://your-openai-proxy.com`
OpenAI ì¸í°íì´ì¤ íë¡ì URLì
ëë¤. ë§ì½, ìëì¼ë¡ openai ì¸í°íì´ì¤ proxy를 ì¤ì íë¤ë©´, ì´ í목ì ì
ë ¥íì
ì¼ í©ëë¤.
**ì°¸ê³ **: SSL ì¸ì¦ì 문ì ê° ë°ìí ê²½ì°, BASE_URLì íë¡í ì½ì httpë¡ ì¤ì íì¸ì.
## OPENAI_ORG_ID (ì í ê°ë¥)
OpenAI ë´ì ì¡°ì§ ID를 ì§ì í©ëë¤.
## HIDE_USER_API_KEY (ì í ê°ë¥)
ì¬ì©ìê° API Key를 ì§ì ì
ë ¥íë ê²ì ìíì§ ìë ê²½ì°, ì´ íê²½ ë³ì를 1ë¡ ì¤ì íì¸ì.
## DISABLE_GPT4 (ì í ê°ë¥)
ì¬ì©ìê° GPT-4를 ì¬ì©íë ê²ì ìíì§ ìë ê²½ì°, ì´ íê²½ ë³ì를 1ë¡ ì¤ì íì¸ì.
## HIDE_BALANCE_QUERY (ì í ê°ë¥)
ì¬ì©ìê° ìì¡ì ì¡°ííë ê²ì ìíì§ ìë ê²½ì°, ì´ íê²½ ë³ì를 1ë¡ ì¤ì íì¸ì.
## ê°ë°
ìë ë²í¼ì í´ë¦íì¬ ê°ë°ì ììíì¸ì:
[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/Yidadaa/ChatGPT-Next-Web)
ì½ë ìì±ì ì , íë¡ì í¸ ë£¨í¸ ëë í 리ì `.env.local` íì¼ì ìë¡ ë§ë¤ê³ í´ë¹ íì¼ì íê²½ ë³ì를 ì
ë ¥í´ì¼ í©ëë¤:
```
OPENAI_API_KEY=<ì¬ê¸°ì ì¬ë¬ë¶ì api í¤ë¥¼ ì
ë ¥íì¸ì>
#ì¤êµ ì¬ì©ìë¤ì ì´ íë¡ì í¸ì í¬í¨ë íë¡ì를 ì¬ì©íì¬ ê°ë°í ì ììµëë¤. ëë ë¤ë¥¸ íë¡ì 주ì를 ìì ë¡ê² ì íí ì ììµëë¤.
BASE_URL=https://chatgpt1.nextweb.fun/api/proxy
```
### ë¡ì»¬ íê²½ììì ê°ë°
1. nodejs 18ê³¼ yarnì ì¤ì¹íì¸ì. ìì¸í ì¬íì ChatGPTì 문ìíììì¤.
2. `yarn install && yarn dev` ëª
ë ¹ì ì¤ííì¸ì. â ï¸ ì£¼ì: ì´ ëª
ë ¹ì ë¡ì»¬ ê°ë° ì ì©ì
ëë¤. ë°°í¬ì©ì¼ë¡ ì¬ì©íì§ ë§ììì¤!
3. ë¡ì»¬ìì ë°°í¬íê³ ì¶ë¤ë©´, `yarn install && yarn build && yarn start` ëª
ë ¹ì ì¬ì©íì¸ì. pm2ì í¨ê» ì¬ì©íì¬ íë¡ì¸ì¤ë¥¼ ë³´í¸íê³ , ê°ì ì¢
ë£ëì§ ìëë¡ í ì ììµëë¤. ìì¸í ë´ì©ì ChatGPTì 문ìíì¸ì.
## ë°°í¬
### 컨í
ì´ë ë°°í¬ (ì¶ì²)
> Docker ë²ì ì 20 ì´ìì´ì´ì¼ í©ëë¤. ê·¸ë ì§ ìì¼ë©´ ì´ë¯¸ì§ë¥¼ ì°¾ì ì ìë¤ë ë©ìì§ê° íìë©ëë¤.
> â ï¸ ì£¼ì: docker ë²ì ì ëë¶ë¶ì ê²½ì° ìµì ë²ì ë³´ë¤ 1~2ì¼ ë¤ì²ì§ëë¤. ë°ë¼ì ë°°í¬ í "ì
ë°ì´í¸ ê°ë¥" ìë¦¼ì´ ì§ìì ì¼ë¡ ëíë ì ìì¼ë©°, ì´ë ì ìì ì¸ íìì
ëë¤.
```shell
docker pull yidadaa/chatgpt-next-web
docker run -d -p 3000:3000 \
-e OPENAI_API_KEY=sk-xxxx \
-e CODE=íì´ì§ ì ê·¼ ë¹ë°ë²í¸ \
yidadaa/chatgpt-next-web
```
íë¡ì를 ì§ì íë ¤ë©´ ë¤ìì ì¬ì©íì¸ì:
```shell
docker run -d -p 3000:3000 \
-e OPENAI_API_KEY=sk-xxxx \
-e CODE=íì´ì§ ì ê·¼ ë¹ë°ë²í¸ \
--net=host \
-e PROXY_URL=http://127.0.0.1:7890 \
yidadaa/chatgpt-next-web
```
ë¡ì»¬ íë¡ìì ì¬ì©ì ì´ë¦ê³¼ ë¹ë°ë²í¸ê° íìí ê²½ì°, ìëì ê°ì´ ì¬ì©íì¸ì:
```shell
-e PROXY_URL="http://127.0.0.1:7890 ì¬ì©ìì´ë¦ ë¹ë°ë²í¸"
```
ë¤ë¥¸ íê²½ ë³ì를 ì§ì í´ì¼ íë ê²½ì°, ìì ëª
ë ¹ì `-e íê²½ë³ì=íê²½ë³ìê°`ì ì¶ê°íì¬ ì§ì íì¸ì.
### ë¡ì»¬ ë°°í¬
ì½ììì ìëì ëª
ë ¹ì ì¤ííì¸ì:
```shell
bash <(curl -s https://raw.githubusercontent.com/Yidadaa/ChatGPT-Next-Web/main/scripts/setup.sh)
```
â ï¸ ì£¼ì: ì¤ì¹ ì¤ ë¬¸ì ê° ë°ìí ê²½ì°, dockerë¡ ë°°í¬íì¸ì.
## ê°ì¬ì ë§
### 기ë¶ì
> ì문 ë²ì 참조.
### 기ì¬ì
[íë¡ì í¸ ê¸°ì¬ì ëª©ë¡ ë³´ê¸°](https://github.com/Yidadaa/ChatGPT-Next-Web/graphs/contributors)
### ê´ë ¨ íë¡ì í¸
- [one-api](https://github.com/songquanpeng/one-api): íµí© ëí ëª¨ë¸ í ë¹ ê´ë¦¬ íë«í¼, 주ì ëí ì¸ì´ ëª¨ë¸ ëª¨ë ì§ì
## ì¤íìì¤ ë¼ì´ì¼ì¤
[MIT](https://opensource.org/license/mit/)