myChat 是一个模仿 ChatGPT 的开源项目。它提供了一个用户友好的界面,用于通过 OpenAI API 与类似 GPT 的 LLM 进行交互。该项目与 OpenAI 没有任何直接关系。
我们使用 MongoDB 来存储用户信息和会话数据。您可以通过多种方式设置 MongoDB 实例:
一旦您拥有正在运行的 MongoDB 实例,您将需要获取连接字符串。如果您使用的是 MongoDB Atlas,则可以在集群的连接设置中找到连接字符串。
将 MongoDB 连接字符串添加到您的.env.local
文件中,如下所示:
我们使用 Redis 在 API 路由中进行速率限制。您可以通过多种方式设置 Redis 实例,包括:
一旦您拥有正在运行的 Redis 实例,您将需要获取连接字符串。如果您使用 RedisLabs,则可以在数据库的配置页面中找到连接字符串。
克隆此存储库:
git clone https://github.com/your-username/myChat.git
或开始使用 GitHub 的模板功能
导航到项目目录:
cd myChat
安装依赖项:
npm install
在项目根目录中创建一个.env.local
文件并添加必要的环境变量:
touch .env.local
将以下内容添加到.env.local
文件中:
NEXTAUTH_URL=http://localhost:3000
MONGODB_URI=yourURI
NEXTAUTH_SECRET=yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
将http://localhost:3000
替换为应用程序运行的任何端口,将yourURI
替换为 MongoDB 连接字符串,将yourSecret
替换为安全随机字符串,将your32HexDigitString
替换为用于 AES-128 加密的 32 位十六进制字符串,将yourRedisConnectionString
为您的 Redis连接字符串。
...
运行开发服务器:
npm run dev
构建生产应用程序:
npm run build
启动生产服务器:
npm run start
要将 myChat 克隆部署到 Vercel,请按照以下步骤操作:
如果您还没有注册 Vercel 帐户,请注册。
安装 Vercel CLI:
npm install -g vercel
从命令行登录您的 Vercel 帐户:
vercel login
导航到您的项目目录:
cd myChat
运行以下命令来部署您的应用程序:
vercel --prod
在部署过程中,Vercel CLI 将询问您环境变量。提供与.env.local
文件相同的值:
NEXTAUTH_URL: https://your-vercel-url.vercel.app
MONGODB_URI: yourURI
NEXTAUTH_SECRET: yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
将http://localhost:3000
替换为应用程序运行的任何端口,将yourURI
替换为 MongoDB 连接字符串,将yourSecret
替换为安全随机字符串,将your32HexDigitString
替换为用于 AES-128 加密的 32 位十六进制字符串,将yourRedisConnectionString
为您的 Redis连接字符串。
请记住,每次对 myChat 克隆进行更改并想要部署更新版本时,只需从项目目录运行vercel --prod
即可。
我们欢迎贡献!如需贡献,请按照以下步骤操作:
git clone https://github.com/your-username/myChat.git
git checkout -b feature/my-new-feature
或git checkout -b fix/my-new-fix
git commit -am 'Add some feature'
git push origin feature/my-new-feature
该项目已获得 MIT 许可证的许可。