个人知识库是2026年最热门的AI应用场景之一。本教程将带你用Cursor IDE + Claude 5模型,从零搭建一个支持RAG的AI知识库网站,全程30分钟,最终部署到Vercel免费托管。
准备条件
- Cursor IDE(已安装Claude 5作为默认模型)
- Node.js 20+ 和 pnpm
- GitHub账号(用于Vercel部署)
- 一些你想纳入知识库的文档(PDF/Markdown/TXT均可)
第一步:创建Next.js项目(5分钟)
在Cursor中打开终端,执行:
pnpm create next-app@latest my-knowledge-base --typescript --tailwind --app
cd my-knowledge-base
pnpm add ai @ai-sdk/openai @vercel/postgres drizzle-orm pgvector
pnpm add -D @types/pg
项目创建后,在Cursor中用 Cmd+I 打开Composer,输入以下prompt:
设置Drizzle ORM schema,创建一个documents表,包含id、title、content、embedding(vector 1536)、created_at字段。使用pgvector扩展。
Claude 5会自动生成完整的数据库schema和迁移脚本。
第二步:构建文档上传与向量化管道(10分钟)
这是最核心的部分。在Composer中输入:
创建一个API路由 /api/upload,接受PDF和Markdown文件上传。上传后:1. 使用pdf-parse或gray-matter解析文件内容 2. 将文本分块(每块500字,重叠50字) 3. 调用OpenAI text-embedding-3-small生成向量 4. 存入documents表 5. 返回上传结果。同时创建上传页面,支持拖拽上传,显示进度条。
Claude 5会一次性生成所有需要的代码。注意检查它是否正确处理了文件大小限制和大文件分块上传。
第三步:实现RAG问答接口(7分钟)
继续在Composer中输入:
创建一个API路由 /api/chat,实现RAG问答:1. 接收用户问题 2. 对问题调用embedding API生成向量 3. 使用pgvector余弦相似度查询最相关的5个文档片段 4. 将检索到的片段作为上下文,与用户问题一起发给Claude 5 5. 流式返回答案。前端实现一个ChatGPT风格的对话界面,每条消息显示引用的文档来源。
第四步:部署到Vercel(5分钟)
在项目根目录初始化Git仓库:
git init && git add . && git commit -m "init: AI knowledge base"
在Vercel中导入GitHub仓库后,需要设置环境变量:
OPENAI_API_KEYDATABASE_URL(使用Vercel Postgres自动生成)ANTHROPIC_API_KEY
部署完成后,你就拥有了一个功能完整的个人AI知识库。
第五步:进阶优化(3分钟)
基础版搭建完成后,以下优化可以让体验更上一层楼:
- 混合检索:结合关键词BM25和向量相似度,提升检索精度
- 重新排序:使用Cohere Rerank对检索结果二次排序
- 自动同步:监听Google Drive/Notion文件夹变动,自动更新知识库
- 权限控制:添加NextAuth.js实现多用户隔离
常见问题
Q:不付费能用吗?
完全免费。Next.js + Vercel Postgres免费额度足够个人使用(1GB存储、60小时计算时间/月)。Embedding API约$0.02/1000次调用,新手用量基本在免费额度内。
Q:可以不用OpenAI的Embedding API吗?
可以。推荐使用BGE-M3(通过Hugging Face Inference API)、Jina Embeddings v3、或本地的ollama + nomic-embed-text,全部免费。
Q:支持中文吗?
BGE-M3和Jina Embeddings v3对中文支持很好。Claude 5的中文问答能力也非常出色。分块策略上建议中文用300-500字一块,英文500-800字。
完成以上步骤后,你就拥有了一个可以不断进化的个人AI知识库。每次上传新文档,它都会自动学习,成为一个越来越了解你的AI助手。