跳到主要内容

重排序搜索

重排序搜索(Rerank Search)是一种基于 AI 重排序模型(Rerank Model)对搜索结果进行二次排序的技术。它通过深度学习模型对查询词和候选文档之间的语义相关性进行精细评估,从而优化搜索结果的排序,提升搜索的准确性和用户体验。

在检索增强生成(RAG)应用中,AI 重排序是一个关键环节。seekdb 提供了 AI_RERANK 函数,让您可以直接在 SQL 中调用 AI 重排序模型,无需编写额外代码即可实现搜索结果的智能优化。AI_RERANK 函数通过 model_key 指定一个已注册的重排序模型(Rerank Model),将用户提供的查询词和文档列表按厂商规则组织消息发送给指定模型,解析并返回模型返回的排序结果。

使用 AI_RERANK 函数

AI_RERANK 函数通过 model_key 指定一个已注册的重排序模型,将用户提供的查询词和文档列表发送给模型,解析并返回模型的排序结果。

语法

AI_RERANK(model_key, query, documents[, document_key])

参数说明:

参数描述类型是否可空
model_key数据库内注册的模型。VARCHAR(128)No
query用户输入的搜索文本。VARCHAR(1024)No
documents用户输入的文档列表。JSON ARRAY,例如 '["apple", "banana"]'No

必须指定 model_keyquerydocuments,并且其中一个为 NULL 时,函数提示报错。

返回值:

  • JSON 数组,包含重排序模型返回的文档及其相关性分数,并按相关性分数降序排列。

示例

SELECT AI_RERANK("ob_rerank", "Apple", '["apple", "banana", "fruit", "vegetable"]');

返回结果如下:

+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| ai_rerank("ob_rerank","Apple",'["apple","banana","fruit","vegetable"]') |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| [{"index": 0, "document": {"text": "apple"}, "relevance_score": 0.9912109375}, {"index": 1, "document": {"text": "banana"}, "relevance_score": 0.0033512115478515625}, {"index": 2, "document": {"text": "fruit"}, "relevance_score": 0.0003669261932373047}, {"index": 3, "document": {"text": "vegetable"}, "relevance_score": 0.00001996755599975586}] |
+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+