综合介绍
AI Chatbot Supabase是一个基于Next.js和Supabase构建的开源AI聊天机器人模板。该项目由Vercel开发,旨在提供一个功能全面、可定制的聊天机器人解决方案。通过集成Supabase数据库,用户可以实现聊天记录和用户数据的高效存储与管理。该模板支持多种AI模型提供商,并具备实时响应功能,适用于各种应用场景。
功能列表
- 模型提供商集成:支持OpenAI、Anthropic、Cohere等多种模型提供商。
- 实时响应:内置流媒体支持,实现实时AI响应。
- 数据库集成:使用Supabase Postgres数据库存储聊天记录和用户数据。
- 文件管理:通过Supabase文件存储高效管理和上传文件。
- 用户认证:支持多种认证提供商和行级安全。
- 自定义主题:支持Tailwind CSS和Radix UI组件,提供灵活的主题和暗模式支持。
- 本地开发:提供详细的本地开发和部署指南。
使用帮助
安装和设置
- 安装必要工具:
- Node.js 18+
- pnpm(通过
npm install -g pnpm
安装) - Git
- 代码编辑器(推荐VS Code)
- 设置Supabase项目:
- 安装Supabase CLI:
- Mac:
brew install supabase/tap/supabase
- Windows(PowerShell):
scoop bucket add supabase https://github.com/supabase/scoop-bucket.git && scoop install supabase
- Linux:
brew install supabase/tap/supabase
- NPM/Bun:
npx supabase <command>
- Mac:
- 创建Supabase项目:
npx supabase projects create -i "ai-chatbot-supabase"
- 初始化Supabase配置:
npx supabase init npx supabase link --project-ref your-project-id
- 安装Supabase CLI:
- 配置环境变量:
- 创建
.env.local
文件,添加以下变量:
NEXT_PUBLIC_SUPABASE_URL=<api-url> NEXT_PUBLIC_SUPABASE_ANON_KEY=<anon-key>
- 创建
- 初始化数据库架构:
supabase db push
supabase db reset --dry-run
本地开发
- 克隆并安装项目:
git clone https://github.com/nolly-studio/ai-chatbot-supabase.git
cd ai-chatbot-supabase
pnpm install
- 启动开发服务器:
pnpm dev
应用将运行在http://localhost:3000
。
部署到Vercel
- 配置Vercel项目:
- 在Vercel仪表板中点击“New Project”。
- 导入克隆的仓库,选择“Next.js”作为框架。
- 设置环境变量:
NEXT_PUBLIC_SUPABASE_URL=<api-url> NEXT_PUBLIC_SUPABASE_ANON_KEY=<anon-key> OPENAI_API_KEY=<your-openai-api-key>
- 配置构建设置:
- 构建命令:
pnpm build
- 输出目录:
.next
- 安装命令:
pnpm install
- 构建命令:
- 部署:
- 点击“Deploy”,Vercel将自动构建并部署应用。
常见问题
- Supabase连接问题:
- 确认环境变量设置正确。
- 检查Supabase仪表板中的数据库状态。
- 构建错误:
- 清理
.next
文件夹:rm -rf .next
- 重新安装依赖:
pnpm clean-install
- 清理