1

我们已经成功实现了 Apache Solr 以在我们的对话系统中返回 x 个最相关的对话作为搜索结果。

每个对话 (node.nid) 都由评论 (comment.cid) 组成,每个对话/评论都由用户 (node.uid / comment.uid) 创作。

目前,Solr 配置为搜索所有对话内容(评论、用户、时间戳等)。我们希望扩展我们的搜索结果,不仅显示与查询最相关的对话框,还返回最相关的作者。

问题是,为了确定作者与查询的相关性,我们需要 Solr 来区分节点和评论,以及 node.uid 和 comment.uid 分别。

是否可以使用 Solr 返回不同类型的搜索结果:对话框和作者,例如首先显示与搜索查询相关的前 5 个作者,然后显示与同一查询相关的前 50 个相关查询。

4

1 回答 1

1

是的,可以使用 Solr 返回不同类型的搜索结果。Solr 有一个开放的模式,这意味着您可以在 Solr 中索引任何您想要的内容,只要每个文档都有一个唯一的 id。因此,您可以在同一个 Solr 索引中索引作者和对话。它们可能应该有不同的字段(例如作者姓名和作者的对话文本,只是对话的对话文本)。

我相信DisMax 查询模式可能会帮助您以不同的方式对作者和对话进行评分。

于 2012-06-19T14:39:56.650 回答