gpt4 book ai didi

c# - 按特定顺序对 Lucene.net 搜索结果进行排序

转载 作者:太空宇宙 更新时间:2023-11-03 15:56:26 24 4
gpt4 key购买 nike

我们使用 Lucene.Net 在网站上搜索产品。对于一个类别,我们获取与具有类别唯一 ID 的字段类别完全匹配的所有产品。

对于一个客户,我们要求在没有其他条件的情况下按特定顺序列出产品。这些按类别排列,一个产品可以出现在多个类别中。所以我们不能只有一个全局订单字段。对于开箱即用的 Lucene.net 解决方案,我的第一个想法是为产品的每个类别设置一个字段,其中包含排序顺序。但如果有很多类别,这将无法很好地扩展。

输入搜索词或选择方面后,我们便会使用常规评分系统按最佳匹配对产品进行排序。但是当只有一个类别的术语查询时,我们希望能够按特定顺序对它们进行排序。

有没有一种方法可以使用自定义计分器来执行此操作,该计分器可以接受 ID 列表或类似列表并据此对它们进行评分?本质上,我们需要做的是按照数据库表或其他外部源中指定的顺序对 Lucene 搜索结果进行排序。

最佳答案

这不是开箱即用的解决方案,我们使用的是 Open Search Server,我认为它是同一搜索引擎的包装器。我们有类似的要求以及一大堆其他要求(复杂的过滤/权限/安全性),这促使我们将来自搜索引擎的结果缓存在数据库中(它将在后台线程上分页结果并将它们保存到数据库),之后你可以在搜索结果和数据库中的其他表之间进行连接,并对你的内容进行索引排序。只是一个想法...

关于c# - 按特定顺序对 Lucene.net 搜索结果进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23409931/

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