Code Monkey home page Code Monkey logo

chatgpt-perfectui's Introduction

🚧 项目正在施工... 🚧


Vue3 + Vite + Tailwindcss

复刻ChatGPT网页,体验一模一样的web-app!

🍑 ChatGPT PerfectUII

项目开发

后端部分

获取 Openai Api KeyaccessToken 并填写本地环境变量, 更多其他环境变量的介绍

#进入文件夹 `/service`
mv .env.example .env

# OpenAI API Key - https://platform.openai.com/overview
OPENAI_API_KEY=

# change this to an `accessToken` extracted from the ChatGPT site's `https://chat.openai.com/api/auth/session` response
OPENAI_ACCESS_TOKEN=

pnpm install
pnpm start

前端部分

#根目录下运行以下命令
mv .env.example .env

pnpm bootstrap
pnpm dev

环境变量

API 可用:

  • OPENAI_API_KEYOPENAI_ACCESS_TOKEN 二选一
  • OPENAI_API_MODEL 设置模型,可选,默认:gpt-3.5-turbo
  • OPENAI_API_BASE_URL 设置接口地址,可选,默认:https://api.openai.com

ACCESS_TOKEN 可用:

  • OPENAI_ACCESS_TOKENOPENAI_API_KEY 二选一,同时存在时,OPENAI_API_KEY 优先
  • API_REVERSE_PROXY 设置反向代理,可选,默认:https://bypass.duti.tech/api/conversation社区(注意:只有这两个是推荐,其他第三方来源,请自行甄别)

通用:

  • AUTH_SECRET_KEY 访问权限密钥,可选
  • MAX_REQUEST_PER_HOUR 每小时最大请求次数,可选,默认无限
  • TIMEOUT_MS 超时,单位毫秒,可选
  • SOCKS_PROXY_HOSTSOCKS_PROXY_PORT 一起时生效,可选
  • SOCKS_PROXY_PORTSOCKS_PROXY_HOST 一起时生效,可选
  • HTTPS_PROXY 支持 httphttps, socks5,可选
  • ALL_PROXY 支持 httphttps, socks5,可选

部署上线

Docker部署
docker build -t chatgpt-web .

# 前台运行
docker run --name chatgpt-web --rm -it -p 3002:3002 --env OPENAI_API_KEY=your_api_key chatgpt-web

# 后台运行
docker run --name chatgpt-web -d -p 3002:3002 --env OPENAI_API_KEY=your_api_key chatgpt-web

# 运行地址
http://localhost:3002/
手动打包

后端服务

如果你不需要本项目的 node 接口,可以省略如下操作

复制 service 文件夹到你有 node 服务环境的服务器上。

# 安装
pnpm install

# 打包
pnpm build

# 运行
pnpm prod

PS: 不进行打包,直接在服务器上运行 pnpm start 也可

前端网页

1、修改根目录下 .env 文件中的 VITE_GLOB_API_URL 为你的实际后端接口地址

2、根目录下运行以下命令,然后将 dist 文件夹内的文件复制到你网站服务的根目录下

参考信息

pnpm build

参与贡献

本项目参考chatgpt-web

贡献之前请先阅读 贡献指南

感谢飞叶在林的小伙伴,以及所有做过贡献的人!

License

MIT © river

chatgpt-perfectui's People

Contributors

leizhenpeng avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

chatgpt-perfectui's Issues

🚰 部署问题反馈: 手动打包 pnpm build 、pnpm prod

问题描述 🤔

我卡在后端服务,手动打包 pnpm build 、pnpm prod

附加信息 📝

PS C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service> pnpm prod

[email protected] prod C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service
esno ./build/index.js

node:events:491
throw er; // Unhandled 'error' event
^

Error: listen EADDRINUSE: address already in use :::3002
at __node_internal_captureLargerStackTrace (node:internal/errors:490:5)
at __node_internal_uvExceptionWithHostPort (node:internal/errors:589:12)
at Server.setupListenHandle [as _listen2] (node:net:1740:16)
at listenInCluster (node:net:1788:12)
at Server.listen (node:net:1876:7)
at Function.listen (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\node_modules.pnpm\[email protected]\node_modules\express\lib\application.js:635:24)
at __defProp (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\build\index.js:285:5)
at Object. (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\build\index.js:285:80)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Object.F (C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\node_modules.pnpm@[email protected]\node_modules@esbuild-kit\cjs-loader\dist\index.js:1:941)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Module._load (node:internal/modules/cjs/loader:958:12)
at ModuleJob.run (node:internal/modules/esm/module_job:194:25)
Emitted 'error' event on Server instance at:
at emitErrorNT (node:net:1767:8)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
code: 'EADDRINUSE',
errno: -4091,
syscall: 'listen',
address: '::',
port: 3002
}

Node.js v18.16.0
 ELIFECYCLE  Command failed with exit code 1.

PS C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service> pnpm start

[email protected] start C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service
esno ./src/index.ts

node:events:491
throw er; // Unhandled 'error' event
^

Error: listen EADDRINUSE: address already in use :::3002
at __node_internal_captureLargerStackTrace (node:internal/errors:490:5)
at __node_internal_uvExceptionWithHostPort (node:internal/errors:589:12)
at Server.setupListenHandle [as _listen2] (node:net:1740:16)
at listenInCluster (node:net:1788:12)
at Server.listen (node:net:1876:7)
at Function.listen (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\node_modules.pnpm\[email protected]\node_modules\express\lib\application.js:635:24)
at (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\src\index.ts:86:5)
at Object. (c:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\src\index.ts:86:80)
at Module._compile (node:internal/modules/cjs/loader:1254:14)
at Object.F (C:\Users\Oscar\Desktop\VScode\ChatGPT-PerfectUI-master\service\node_modules.pnpm@[email protected]\node_modules@esbuild-kit\cjs-loader\dist\index.js:1:941)
at Module.load (node:internal/modules/cjs/loader:1117:32)
at Module._load (node:internal/modules/cjs/loader:958:12)
at ModuleWrap. (node:internal/modules/esm/translators:169:29)
at ModuleJob.run (node:internal/modules/esm/module_job:194:25)
Emitted 'error' event on Server instance at:
at emitErrorNT (node:net:1767:8)
at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
code: 'EADDRINUSE',
errno: -4091,
syscall: 'listen',
address: '::',
port: 3002
}

Node.js v18.16.0
 ELIFECYCLE  Command failed with exit code 1.

🐞 错误报告

切换白色主题在页面没生效,只在设置组件和消息组件生效了

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.