gpt4 book ai didi

ruby-on-rails - 没有词干的 Searchkick

转载 作者:数据小太阳 更新时间:2023-10-29 07:39:21 24 4
gpt4 key购买 nike

我正在使用 searchkick ( https://github.com/ankane/searchkick ) 作为数组索引我的一些数据,它几乎可以正常工作:)

def search_data
{isbn: isbn,
title: title,
abstract_long: abstract_long,
authors: authors.map(&:name)}
end

我感兴趣的领域是作者。我想要完成的是搜索“Marias”并找到所有在他们的姓氏中实际具有该确切字符串的作者(Javier Marias),而不是 Searchkick 返回的所有 Maria/Mario/Marais,并让他们与一个更大的优先级。

这就是我现在的搜索方式

Book.search(@search_key,
fields: [:authors, :title, {isbn: :exact}],
boost_by: {authors: 10, title: 5, isbn: 1})

这可能吗?时间差

最佳答案

在Elasticsearch中它有一个正则匹配来处理这种情况,但是被Searchkick放弃了。对于这种情况,您可以选择绕行方式:

def search_data
{
isbn: isbn,
title: title,
abstract_long: abstract_long,
author_ids: authors.map(&:id)
}
end

用于搜索:

author_ids = Author.where(surname: 'Marias').map(&:id)
Book.search(
@search_key,
where: {author_ids: {in: author_ids}},
fields: [:title, {isbn: :exact}],
boost_by: {title: 5, isbn: 1}
)

关于ruby-on-rails - 没有词干的 Searchkick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26892673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com