nextjs-openai-doc-search

用自然语言提问,秒级获取带引用的文档答案

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 对话助手 🍴 复刻 309 🐛 待处理 12 👀 关注 17
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1727
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源模板,基于Next.js、OpenAI和Supabase构建,可自行部署,无内置付费功能。

项目预览

nextjs-openai-doc-search 项目界面预览图
图片来源:项目官网

项目数据

分类对话助手
开发团队supabase-community
定价模式🏷️完全免费
价格说明开源模板,基于Next.js、OpenAI和Supabase构建,可自行部署,无内置付费功能。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言TypeScript
技术栈/模型ai,chatgpt,nextjs,openai,postgres,supabase,template,vector-search
GitHub 星标★ 1727
上线时间2023-04-01 00:00:00
代码更新2026-05-12
仓库体积194 KB
本站数据更新2026-11-10
维护状态低维护
收录时间2026-08-09
浏览次数4

项目介绍

这是一个基于 Next.js、OpenAI 和 Supabase 构建的文档搜索模板,旨在帮助开发者快速打造类似 ChatGPT 的定制化文档问答助手。它解决了传统文档搜索只能匹配关键词、无法理解语义和上下文的问题,通过向量搜索和生成式 AI,让用户可以用自然语言提问,并获得精准、有来源依据的答案。核心能力包括:将文档内容分块并生成向量嵌入存入 Supabase(支持 pgvector),提供流式响应和引用来源,以及开箱即用的 Next.js 前端界面。项目代码结构清晰,易于定制和部署,适合作为企业内部知识库、产品文档或技术支持的问答入口。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1727

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 10 分钟 部署方式:云服务 7 步

环境要求

  • Node.js 环境(Next.js 应用运行所需)
  • 一个 Supabase 项目或本地 Supabase CLI 环境(提供 pgvector 与数据库)
  • OpenAI API Key(用于生成嵌入和文本补全)
  • Vercel 账号(README 推荐的一键部署平台)

安装与启动步骤

  1. 1获取项目代码

    把模板仓库克隆到本地,后续所有配置都在项目根目录下进行。

    git clone https://github.com/supabase-community/nextjs-openai-doc-search.git
    cd nextjs-openai-doc-search
  2. 2安装项目依赖

    在项目根目录安装 Next.js 应用的依赖包,确保后续可以构建和本地预览。

    npm install
  3. 3复制环境变量文件

    README 明确要求先把示例环境变量文件复制成实际使用的 .env 文件。

    cp .env.example .env
  4. 4填写 OpenAI 密钥

    编辑 .env,把 OPENAI_KEY 换成你自己的 OpenAI API Key,这是唯一必须手动设置的变量。

  5. 5启动 Supabase 获取密钥

    README 提示必须先运行 Supabase 才能拿到密钥,迁移会在此步骤自动建表和启用 pgvector。

    supabase start
  6. 6填入 Supabase 密钥

    把上一步得到的 NEXT_PUBLIC_SUPABASE_ANON_KEY 与 SUPABASE_SERVICE_ROLE_KEY 写进 .env。

  7. 7部署到 Vercel

    README 推荐直接部署到 Vercel,Supabase 集成会自动注入环境变量并配置数据库 Schema,只需设置 OPENAI_KEY。

关键配置

配置项必填说明示例
OPENAI_KEY是OpenAI API 密钥,用于生成嵌入与文本补全sk-xxxxxxxxxxxxxxxx
NEXT_PUBLIC_SUPABASE_ANON_KEY是Supabase 匿名密钥,前端访问数据库使用eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.xxxxxxxx
SUPABASE_SERVICE_ROLE_KEY是Supabase 服务角色密钥,构建时写入嵌入数据使用eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.yyyyyyyy

如何确认成功

打开部署或本地站点,在搜索框输入自然语言问题,能返回流式生成且带引用来源的答案即成功。

常见问题

Q:如何获取 Supabase 的两个密钥?

A:README 说明必须先运行 supabase start,启动本地实例后在输出中获取 anon key 和 service role key,再填入 .env。

Q:数据库表和 pgvector 扩展需要手动创建吗?

A:不需要。初始化 SQL 位于 supabase/migrations 目录,运行 supabase start 时会自动应用到本地 Postgres;部署到 Vercel 时 Supabase 集成会自动配置 Schema。

Q:知识库内容从哪来?

A:构建时会读取 pages 目录下的所有 .mdx 文件,分块后生成向量嵌入并存入 Postgres 的 pgvector,替换这些文件即可换成自己的内容。

Q:运行时是怎么工作的?

A:用户提问后由 Edge Function(pages/api/vector-search.ts)先做向量相似度检索,再把相关内容注入 GPT-3 补全提示,以流式返回给前端 SearchDialog 组件。

注意事项

  • README 强调只需手动设置 OPENAI_KEY,其余环境变量由 Supabase 集成自动注入。
  • 嵌入向量维度为 1536,对应 OpenAI 的 embedding 输出。
  • 向量检索与流式回答的核心文件是 components/SearchDialog.tsx 和 pages/api/vector-search.ts。
  • 本教程依据 README 节选整理,具体端口与详细部署按钮请以官方仓库和 Supabase 博客为准。

核心亮点

  • 内置向量搜索与 OpenAI 生成式回答,语义理解准确
  • 支持流式输出和引用来源,答案可信可追溯
  • 基于 Next.js 和 Supabase,全栈 TypeScript,部署简单

不足之处

  • 依赖 OpenAI 和 Supabase 外部服务,成本与网络需自担
  • 文档/社区待观察,模板功能相对基础,高级定制需自行扩展

适用场景

  • 企业产品文档的智能客服问答
  • 开发者快速搭建内部知识库检索工具
  • 为静态文档站点添加 AI 对话式搜索

替代项目

ChatGPT Retrieval Plugin、quivr、docsgpt

上一篇:chatWeb

下一篇:oneglanse

同类项目推荐

fess 开源

自建一个搜索,公司文档网页全都能翻

Open-source, self-hosted enterprise & site search server built on OpenSearch. Crawls···

★ 1146 2026-08-09
cognita 开源

模块化 RAG 框架,快速搭建生产级问答应用

RAG (Retrieval Augmented Generation) Framework for building modular, open source app···

★ 4408 2026-08-09
searxNcrawl 开源

给 AI 装搜索和整站抓取,免 Key 自托管

Open-source MCP server that gives AI agents web search (SearXNG) and clean Markdown ···

★ 188 2026-10-21
denser-chat 开源

上传 PDF,直接提问,答案带原文高亮。

Chat with PDF files with source highlights

★ 151 2026-08-09
DyPRAG 开源

测试时动态更新模型参数,让知识永不落伍

[NeurIPS 2026 TTCL] Dynamic Parametric Retrieval Augmented Generation for Test-time ···

★ 187 2026-08-09
StruInfo 开源

把文档变成可追溯、可编辑的知识图谱,数据自己掌控

Self-hosted, traceable document-to-knowledge workspace with deterministic workflows,···

★ 91 2026-10-09
fojin 开源

一站式检索万部佛典,AI 问答直达经义

Buddhist Digital Text Platform — 10,500+ texts, 613 sources, trilingual cross-canon···

★ 359 2026-08-09
LLMSys-PaperList 开源

按主题整理 LLM 系统论文,快速找到方向内必读清单

Large Language Model (LLM) Systems Paper List

★ 2321 2026-10-14
logseq-copilot 开源

浏览器里随手搜 Logseq 笔记,不用切窗口

Logseq Copilot is a Browser extension that allows you to access your Logseq via your···

★ 315 2026-11-06