rag-search

快速搭建语义搜索 API,让应用具备私有知识问答能力

开源 🏷️定价信息待确认 🔌 仅提供 API 接口 搜索知识 🍴 复刻 154 🐛 待处理 3 👀 关注 7
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1181
维护状态 低维护
是否开源 开源
定价模式 🏷️定价信息待确认

项目预览

rag-search 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队thinkany-ai
定价模式🏷️定价信息待确认
价格说明定价信息待确认
访问状态🔌 仅提供 API 接口
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型ai-search-engine,rag
GitHub 星标★ 1181
上线时间2024-03-25 00:00:00
代码更新2024-07-29
仓库体积405 KB
本站数据更新2026-11-09
维护状态低维护
收录时间2026-08-09
浏览次数2

项目介绍

rag-search 是一个基于 Python 的 RAG(检索增强生成)搜索 API 项目,旨在将检索与生成能力结合,为开发者提供开箱即用的语义搜索接口。它解决了传统关键词搜索无法理解语义、以及单独使用大模型时缺乏实时知识的问题。核心能力包括:文档索引、向量化存储、混合检索(关键词+向量)、以及与大模型生成管线的无缝衔接。项目通过简洁的 API 设计,让开发者可以快速集成到现有应用中,实现基于私有知识库的智能问答或搜索功能。其技术栈围绕向量数据库和嵌入模型构建,支持多种数据源接入,适合作为构建企业级知识问答系统的后端基础。

Star 增长趋势

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

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

技术标签

使用教程

难度:进阶 约 10 分钟 部署方式:本地安装 5 步

环境要求

  • Python 环境(可运行 pip 与 uvicorn)
  • OpenAI 兼容的 API(OPENAI_API_KEY / OPENAI_BASE_URL)
  • Zilliz(Milvus)向量库的 URI 与 Token
  • Serper 搜索服务的 SERPER_API_KEY
  • 可访问外网以调用上述第三方服务

安装与启动步骤

  1. 1准备 .env 文件

    在项目根目录新建 .env,按 README 模板逐项填写搜索、OpenAI、Zilliz 与鉴权配置,留空的项服务会不可用。

    SERPER_API_KEY=
    OPENAI_BASE_URL=
    OPENAI_API_KEY=
    OPENAI_MODEL=gpt-3.5-turbo
    OPENAI_EMBED_MODEL=text-embedding-ada-002
    
    ZILLIZ_URI=
    ZILLIZ_TOKEN=
    ZILLIZ_DIM=1536
    ZILLIZ_COLLECTION=
    
    AUTH_API_KEY=
  2. 2安装依赖

    在项目根目录执行,按 requirements.txt 安装 FastAPI、uvicorn 等运行依赖,建议先建虚拟环境。

    pip install -r requirements.txt
  3. 3启动 FastAPI 服务

    在项目根目录用 uvicorn 启动 main:app,默认监听 8069 端口,--reload 便于开发时热更新。

    uvicorn main:app --reload --port 8069
  4. 4验证 ping 接口

    服务起来后访问根路径,确认进程与路由正常,再继续调用检索接口。

    GET http://127.0.0.1:8069/
  5. 5调用 RAG 搜索

    向 /rag-search 发 POST,请求头带 Bearer 鉴权,body 控制检索条数、是否重排与阈值过滤。

    {
        "query": "ThinkAny.AI",
        "search_n": 10,
        "search_provider": "google",
        "is_reranking": true,
        "is_detail": true,
        "detail_min_score": 0.7,
        "detail_top_k": 3,
        "is_filter": true,
        "filter_min_score": 0.8,
        "filter_top_k": 6
    }

关键配置

配置项必填说明示例
SERPER_API_KEY是Serper 搜索服务的密钥,用于执行 google 等搜索检索sk-serper-xxxxxxxx
OPENAI_BASE_URL是OpenAI 兼容接口地址,可指向自建或第三方网关https://api.openai.com/v1
OPENAI_API_KEY是调用大模型与嵌入模型的密钥sk-xxxxxxxx
ZILLIZ_URI是Zilliz/Milvus 向量库的连接地址https://in03-xxxx.api.gcp-us-west1.zillizcloud.com
ZILLIZ_TOKEN是Zilliz 向量库的访问令牌xxxxxxxx:xxxxxxxx
AUTH_API_KEY是本服务自身的鉴权密钥,请求需带 Bearer 该值xxx

如何确认成功

浏览器或客户端访问 http://127.0.0.1:8069/ 的 GET ping 接口能正常返回,即代表服务启动成功。

常见问题

Q:请求 /rag-search 返回鉴权失败怎么办?

A:检查请求头 Authorization: Bearer {{apiKey}} 中的值是否与 .env 里的 AUTH_API_KEY 完全一致,注意大小写与空格。

Q:为什么检索没有结果或报向量库错误?

A:确认 ZILLIZ_URI、ZILLIZ_TOKEN 正确,ZILLIZ_COLLECTION 对应集合存在,且 ZILLIZ_DIM=1536 与 text-embedding-ada-002 的向量维度一致。

Q:能改默认端口吗?

A:可以,修改 uvicorn main:app --reload --port 8069 中的端口号,并同步调整客户端请求的 baseUri。

Q:可以用自建模型服务替代 OpenAI 吗?

A:可以,把 OPENAI_BASE_URL 指向兼容 OpenAI 协议的地址,并按需修改 OPENAI_MODEL 与 OPENAI_EMBED_MODEL。

注意事项

  • .env 必须放在项目根目录,服务启动时读取。
  • OPENAI_MODEL 默认 gpt-3.5-turbo,OPENAI_EMBED_MODEL 默认 text-embedding-ada-002,改动嵌入模型时需同步设置 ZILLIZ_DIM。
  • ZILLIZ_DIM、ZILLIZ_COLLECTION 等其余配置项也需按 .env 模板补齐,否则相关功能不可用。
  • 该服务依赖 Serper、OpenAI、Zilliz 三方密钥,建议先各自申请并验证可用后再启动。

核心亮点

  • 提供统一 REST API,集成简单,降低 RAG 开发门槛
  • 内置混合检索策略,兼顾关键词匹配与语义理解
  • 支持多种文档格式与向量库,适配常见业务场景

不足之处

  • 项目处于成长阶段,文档和社区生态有待完善
  • 高级定制能力有限,复杂场景可能需要自行扩展

适用场景

  • 企业内部知识库智能检索与问答
  • 电商商品语义搜索与推荐
  • 法律/医疗等专业领域的文档辅助查询

替代项目

LangChain、Haystack、txtai

上一篇:VSA

下一篇:RAG_Techniques

同类项目推荐

zvec-grep 开源

本地工作区一句话搜代码和文档,人和 AI 都能用

Local-first search across your workspace, built for humans and AI agents.

★ 4293 2026-09-22
awesome-llm-wiki 开源

一站式找到构建AI知识库的蓝图、框架和指南。

A curated list of foundational blueprints, functional frameworks, and technical guid···

★ 269 2026-08-09
AIGEOTOOLS 开源

让品牌在 AI 回答中脱颖而出,被优先引用

GEO(AI 搜索引擎优化)智能内容优化平台 — 帮助品牌在 ChatGPT、Perplexity 等 AI 回答中···

★ 183 2026-08-09
grepai 开源

让 AI 代理本地语义搜代码、看调用关系,不传云端

Semantic Search & Call Graphs for AI Agents (100% Local)

★ 1945 2026-09-12
awesome-OpenPrice 开源

查遍全网AI订阅价,一眼挑出最划算渠道

开源的 AI 订阅价格聚合与比价平台,收录 ChatGPT、Claude、Gemini、Grok、Cursor 等产品的···

★ 1088 2026-08-09
rag-chatbot 开源

把你的 Markdown 文档变成智能问答机器人

RAG (Retrieval-augmented generation) ChatBot that provides answers based on contextu···

★ 443 2026-08-09
consult-web 开源

在 Emacs 里直接搜全网,不切窗口效率翻倍

Powerful Web and Omni Search inside Emacs

★ 98 2026-08-09
asreview 开源

让 AI 帮你优先读最该读的文献,综述筛选省时数倍

Active learning for systematic reviews

★ 1068 2026-09-16
open-deep-research 开源

给个主题,开源模型自动查资料写报告

The Open Deep Research app – generate reports with OSS LLMs

★ 438 2026-11-07