问答社区
DiscovAI-Search:一个用于人工智能工具和自定义数据的人工智能搜索引擎。
分类:语言模型
DiscovAI-Search:一个用于人工智能工具和自定义数据的人工智能搜索引擎。使用 Next.js、OpenAI、Supabase 等构建。具有基于矢量的搜索、Redis 缓存和 LLM 支持的响应。
特点
-
基于向量的搜索:将用户查询转换为向量,以便在我们的人工智能产品数据库中进行精确的相似性匹配。
-
Redis 支持的缓存:利用 Redis 缓存搜索结果和输出,显着缩短重复查询的响应时间。
-
全面的人工智能数据库:维护各个类别和行业的最新人工智能产品集合。
-
LLM 支持的响应:利用大型语言模型根据搜索结果提供详细的、上下文感知的答案。
-
用户友好的界面:提供直观的设计,可轻松导航和高效的人工智能产品发现。
🧱 堆栈
- 应用程序框架:Next.js
- 文本流:Vercel AI SDK
- 法学硕士型号:gpt-4o-mini
- 数据库:Supabase
- 矢量: Pgvector
- 嵌入模型:Jina AI
- Redis 缓存:Upstash
- 组件库:shadcn/ui
- 无头组件原语:Radix UI
- 样式:Tailwind CSS
🚀 快速入门
1. 克隆仓库
运行以下命令来克隆存储库:
git clone https://github.com/DiscovAI/DiscovAI-search
2.安装依赖
cd discovai-search
pnpm i
3. 设置 Supabase
创建一个supabase项目,然后在SQL编辑器中运行src/db/init.sql来设置数据库
4. 设置 Upstash
请按照以下指南设置 Upstash Redis。创建数据库并获取UPSTASH_REDIS_REST_URL
和UPSTASH_REDIS_REST_TOKEN
。请参阅Upstash 指南,了解如何继续操作的说明。
4. 填写机密:
cp .env.local.example .env.local
您的 .env.local 文件应如下所示:
# Required
# for match documents
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
# for embedding query, retrieved here: https://jina.ai/embeddings/
JINA_API_KEY=
# for llm output, retrieved here: https://platform.openai.com/api-keys
OPENAI_API_KEY=
OPENAI_API_URL=
# for llm cache and serach cache
UPSTASH_REDIS_REST_URL=
UPSTASH_REDIS_REST_TOKEN=
5.本地运行应用程序
pnpm dev
您现在可以访问http://localhost:3000。
🌐 部署
您可以在任何 SaaS 平台上部署,例如 vercel、zeabur、cloudflare Pages。