混合搜索函数参数

选择文档版本:

AlloyDB Omni hybrid_search 函数接受多个参数来控制搜索和融合过程。了解这些参数有助于您优化搜索结果,以满足您的特定需求。本文档简要介绍了可用参数。如需了解如何使用 vector 扩展程序执行混合搜索,请参阅运行混合向量相似性搜索。

主要参数

参数 类型 说明
search_inputs JSONB[] 必需。JSONB 对象数组,其中每个对象都定义一个搜索组件。
id_type anyelement 输出 ID 列的数据类型。默认值为 NULL::TEXT。
include_json_output BOOLEAN 在结果中包含详细的 JSON 输出。默认值为 FALSE。将此值设置为 TRUE 可能会影响查询性能。
fusion_algorithm TEXT 要使用的融合算法。唯一支持的值是 'RRF'。默认值为 'RRF'。

在 search_inputs JSONB 对象中,将 data_type 字段设置为 'vector'。

参数 类型 说明
data_type TEXT 必需。必须为 'vector'。
table_name TEXT 必需。要搜索的表的名称。
key_column TEXT 必需。文档 ID 列的名称。
vec_column TEXT 必需。向量列的名称。
distance_operator TEXT 必需。要使用的距离运算符,例如,对于余弦距离,使用 '<=>'。
query_vector TEXT 必需。要搜索的向量的字符串表示形式。
limit INTEGER 必需。要从此搜索组件返回的最大结果数。
weight FLOAT 此组件对最终 RRF 分数的贡献,范围为 0.0 到 1.0。如果您未提供权重,系统会均匀分配权重。
filter_condition TEXT 要应用于此组件的子查询的 SQL WHERE 子句。

文本搜索参数

在 search_inputs JSONB 对象中,将 data_type 字段设置为 'text'。

参数 类型 说明
data_type TEXT 必需。必须为 'text'。
table_name TEXT 必需。要搜索的表的名称。
key_column TEXT 必需。文档 ID 列的名称。
text_column TEXT 必需。tsvector 或文本列的名称。
query_text_input TEXT 必需。用于关键字匹配的文本字符串。
limit INTEGER 必需。要从此搜索组件返回的最大结果数。
weight FLOAT 此组件对最终 RRF 分数的贡献,范围为 0.0 到 1.0。如果您未提供权重,系统会均匀分配权重。
ranking_function TEXT 全文搜索排名函数。对于 GIN 索引,请设置为 'ts_rank'。 对于 RUM 索引,请设置为 '<=>'。默认值为 'ts_rank'。
query_parser TEXT 全文搜索查询解析器函数。默认值为 'ai.g_to_tsquery'。
filter_condition TEXT 要应用于此组件的子查询的 SQL WHERE 子句。

后续步骤