项目简介:rag-search
rag-search 是一个由 thinkany.ai 提供的 RAG Search API,旨在帮助用户构建更加智能化的搜索体验。这个项目结合了多种技术和服务,为开发者提供强大的搜索能力。以下是对该项目的详细介绍。
快速开始
为了快速启动 rag-search 项目,需要按照以下步骤进行设置和启动:
环境配置
首先,需要在项目的根目录下创建一个 .env
文件,并设置相关的环境变量。常见的变量包括:
SERPER_API_KEY
:用于访问搜索服务的 API 密钥。OPENAI_BASE_URL
和OPENAI_API_KEY
:OpenAI 的接口地址和访问密钥。OPENAI_MODEL
和OPENAI_EMBED_MODEL
:指定 OpenAI 使用的模型,这里默认使用gpt-3.5-turbo
和text-embedding-ada-002
。ZILLIZ_URI
、ZILLIZ_TOKEN
、ZILLIZ_DIM
和ZILLIZ_COLLECTION
:与数据嵌入相关的设置。AUTH_API_KEY
:用于 API 认证的密钥。
安装依赖
在配置完环境变量后,接下来需要安装项目所需的所有依赖。可以通过以下命令来完成:
pip install -r requirements.txt
启动服务器
安装完依赖后,就可以启动 FastAPI 服务器了。通过以下命令,可以在本地启动服务器:
uvicorn main:app --reload --port 8069
这里使用了 uvicorn
,并指定重新加载功能,并将其运行在 8069 端口。
发起 API 请求
服务器启动成功后,可以通过 API 请求来使用 rag-search 的功能。以下是示例请求的格式:
- 基本请求示例:
@baseUri=http://127.0.0.1:8069
@apiKey=xxx
- Ping 请求:
GET {{baseUri}}/
- Rag Search 请求:
POST {{baseUri}}/rag-search
Content-Type: application/json
Authorization: Bearer {{apiKey}}
{
"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
}
在这个请求中,用户可以根据需要定制查询参数,例如 query
是要搜索的关键词,search_n
是搜索结果数量,is_reranking
,is_detail
和 is_filter
等参数用于决定是否进行结果重排、详情查询和过滤等操作。
总结
rag-search 项目通过结合先进的搜索技术和 API 接口设计,为用户提供了强大的信息检索能力。通过配置与安装,开发者可以快速建立一个功能丰富的搜索系统,并根据实际需求自定义搜索参数,以获得最佳的搜索效果。