• 作者简介:大家好,我是Zeeland,全栈领域优质创作者。
  • CSDN主页:Zeeland
  • 我的博客:Zeeland
  • Github主页: Undertone0809 (Zeeland) (github.com)
  • 支持我:点赞+收藏⭐️+留言
  • 系列专栏:Python系列专栏
  • 介绍:The mixture of software dev+Iot+ml+anything

本人的Python开源项目

  • 【prompt-me】一个专为Prompt Engineer设计LLM Prompt Layer框架,支持连续对话、角色预设、提供缓存的功能,可以记录历史对话等功能,可以无需代理直接访问,开箱即用。 通过 prompt-me,你可以轻松构建起属于自己的GPT应用程序。
  • 【cushy-storage】一个基于磁盘缓存的Python框架
  • 【cushy-socket】 一款轻量级的Python Socket框架
  • 【cushy-serial】 一个轻量级Python serial库
  • 【broadcast-service】一个轻量级Python发布订阅者框架
  • 【Python实战】从架构设计到实现:一个Powerful的图书管理系统

前言

理论上,部署一个属于自己的chatgpt网站,你只需要一个github帐号,再去注册一个vercel就可以了,使用vercel,你可以轻松构建起一个前端应用,并且vercel的服务器在国外,可以直接调用openai官方的API。下面的教程将会教会你如何用最短的时间内搭建一个自己的chatgpt网站。

相关项目地址:https://github.com/Undertone0809/Simple-GPT

主要功能

  • 在 1 分钟内使用 Vercel 免费一键部署
  • 精心设计的 UI,响应式设计,支持深色模式,支持 PWA
  • 极快的首屏加载速度(~100kb),支持流式响应
  • 隐私安全,所有数据保存在用户浏览器本地
  • 海量的内置 prompt 列表,来自中文和英文
  • 自动压缩上下文聊天记录,在节省 Token 的同时支持超长对话
  • 一键导出聊天记录,完整的 Markdown 支持
  • 拥有自己的域名?好上加好,绑定后即可在任何地方无障碍快速访问

开始使用

  1. 准备好你的 OpenAI API Key;
  2. 点击 这里开始部署,直接使用 Github 账号登录即可,记得在环境变量页填入 API Key 和页面访问密码 CODE;
  3. 部署完毕后,即可开始使用;
  4. (可选)绑定自定义域名:Vercel 分配的域名 DNS 在某些区域被污染了,绑定自定义域名即可直连。

保持更新

如果你按照上述步骤一键部署了自己的项目,可能会发现总是提示“存在更新”的问题,这是由于 Vercel 会默认为你创建一个新项目而不是 fork 本项目,这会导致无法正确地检测更新。 推荐你按照下列步骤重新部署:

  • 删除掉原先的仓库;
  • 使用页面右上角的 fork 按钮,fork 本项目;
  • 在 Vercel 重新选择并部署,请查看详细教程。

打开自动更新

当你 fork 项目之后,由于 Github 的限制,需要手动去你 fork 后的项目的 Actions 页面启用 Workflows,并启用 Upstream Sync Action,启用之后即可开启每小时定时自动更新:

手动更新代码

如果你想让手动立即更新,可以查看 Github 的文档 了解如何让 fork 的项目与上游代码同步。

你可以 star/watch 本项目或者 follow 作者来及时获得新功能更新通知。

配置页面访问密码

配置密码后,用户需要在设置页手动填写访问码才可以正常聊天,否则会通过消息提示未授权状态。

警告:请务必将密码的位数设置得足够长,最好 7 位以上,否则会被爆破。

本项目提供有限的权限控制功能,请在 Vercel 项目控制面板的环境变量页增加名为 CODE 的环境变量,值为用英文逗号分隔的自定义密码:

code1,code2,code3

增加或修改该环境变量后,请重新部署项目使改动生效。

环境变量

本项目大多数配置项都通过环境变量来设置。

OPENAI_API_KEY (必填项)

OpanAI 密钥,你在 openai 账户页面申请的 api key。

CODE (可选)

访问密码,可选,可以使用逗号隔开多个密码。

警告:如果不填写此项,则任何人都可以直接使用你部署后的网站,可能会导致你的 token 被急速消耗完毕,建议填写此选项。

BASE_URL (可选)

Default: https://api.openai.com

Examples: http://your-openai-proxy.com

OpenAI 接口代理 URL,如果你手动配置了 openai 接口代理,请填写此选项。

如果遇到 ssl 证书问题,请将 BASE_URL 的协议设置为 http。

OPENAI_ORG_ID (可选)

指定 OpenAI 中的组织 ID。

最终效果