PostgreSQL:是否可以手动构建 tsvector 值?

Nin*_*ina 5 postgresql inverted-index tsvector

我想实现一个使用向量空间模型的信息检索系统,但具有多术语标记和自定义术语加权函数。

我正在考虑在 PostgreSQL 而不是文件系统中构建倒排索引。我读到有关 GIN 索引的内容,它在 tsvector 列上构建这样的索引。

我可以手动构建 tsvector 值而不调用 to_tsvector 函数,以便我可以使用自定义标记和自定义权重构建我的“自定义”向量吗?

jja*_*nes 3

您可以手工制作 tsvector。但据我所知,您只能分配 4 个不同的权重,A、B、C 或 D。多词标记必须放在单引号中,以便将它们作为一个标记放在一起。

select $$'two words':1c oneword$$::tsvector;
         tsvector         
--------------------------
 'oneword' 'two words':1C
Run Code Online (Sandbox Code Playgroud)