makr.AI 是一个 ChatGPT 克隆,在使用 Next.js、TypeScript、Supabase、Jotai 和 Tailwind CSS 的基础上构建,为创客和独立黑客提供了增强的功能。
查看此 YouTube 视频以了解更多信息。
随着时间的推移,我将构建新功能。如果您有任何建议,请随时展开讨论或在 Twitter 上与我联系。我在下面列出了我接下来要开发的功能。
期待什么:
韦尔塞尔
使用 Vercel 托管您自己的 makr.AI 实时版本。
1. 创建 Supabase 项目该应用程序在 Supabase 数据库中保存对话。您可以在此处创建一个免费帐户。
makr.AI 需要 Supabase URL 和匿名密钥才能连接到您的数据库。您可以在 Supabase 项目设置中找到它们。
您必须在 SUPABASE 项目中创建 3 个表:
您可以使用我在存储库的sql
文件夹中创建的sql function
创建所需的所有表。您可以使用存储库的sql
文件夹中的create-tables.sql
文件来创建表。请记住,在创建表之前必须启用pg_vector
扩展。
您可以使用create-profile.sql
在注册时自动创建用户配置文件。
创建嵌入列后,您应该基于该列创建index
。您可以使用存储库的sql
文件夹中的create-index.sql
文件来创建索引。
最后,您必须在 Supabase 项目中创建一个名为search-messages
的 sql 函数。您可以使用存储库的sql
文件夹中的search-messages.sql
文件来创建该函数。
项目设置教程。 ChatGPT 教程的长期记忆。
2. 克隆存储库
git clone https://github.com/batuhanbilginn/makr-ai.git
3.安装依赖项
yarn install
4. 创建环境变量
使用 Supabase URL、Supabase Anon Key、Auth Redirect URL 和 OpenAI API Key 在存储库的根目录中创建 .env.local 文件:
NEXT_PUBLIC_SUPABASE_URL=YOUR_URL * required
NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_KEY * required
NEXT_PUBLIC_AUTH_REDIRECT_URL=YOUR_URL * required
OPENAI_API_KEY=YOUR_KEY * optional
4.1 创建.env文件
.env.example
的文件。template
扩展名创建此文件的副本,将其命名为.env
。最简单的方法是在命令提示符/终端窗口中执行此操作cp .env.example .env
。.env
文件。注意:以点开头的文件可能会被操作系统隐藏。.env
文件。4.2 OpenAI API 密钥
当您将OpenAI API Key
设置为环境变量时,应用程序不会提示您再次输入它来初始化自身。如果您将OpenAI API Key
设置为环境变量并托管它,请小心,任何访问您的托管版本的人都可以使用它。如果您没有OpenAI API Key
,可以在此处获取。
4.3 身份验证重定向 URL
您必须将生产环境中的Auth Redirect URL
设置为环境变量。如果您不设置它,您在尝试登录时将会收到错误消息。此外,请确保您在 Supabase 项目设置以及为 Vercel 创建的环境变量中设置了正确的Auth Redirect URL
。如果您有不同的用于预览和生产的Auth Redirect URL
,您可以将它们设置为 Vercel 和 Supabase 中的环境变量。
5. 运行开发服务器
yarn dev
部署应用程序时,可以设置以下环境变量:
环境变量 | 必需的 | 描述 |
---|---|---|
NEXT_PUBLIC_SUPABASE_URL | 是的 | Supabase 项目的基本 URL |
NEXT_PUBLIC_SUPABASE_ANON_KEY | 是的 | Supabase 项目的匿名密钥 |
NEXT_PUBLIC_AUTH_REDIRECT_URL | 是(生产) | Supabase 项目的基本 URL |
OPENAI_API_KEY | 选修的 | Supabase 项目的匿名密钥 |
如果您没有 OpenAI API 密钥,可以在此处获取。
如果您有任何疑问,请随时在 Twitter 上与我联系。