gpt4 book ai didi

solr - 在 Solr 中实现提升的文档

转载 作者:行者123 更新时间:2023-11-30 23:54:10 25 4
gpt4 key购买 nike

有没有一种方法可以使用一个请求在 Solr 中实现促销(又名“广告”)文档?

要求:

  • 广告文档是带有 ad=true 标志的常规文档。
  • 广告文档是动态的(文档可以频繁更改广告状态)。
  • 广告文档应该有它们的排名逻辑(另一组提升和分组)
  • 广告文档应该有自己的过滤器集

  • 广告文档应与常规(非促销)文档一起返回。

    每页结果必须有 N 个广告文档(例如 3 个),其余的应该是常规列表。

    我们目前正在通过发出两个请求来实现我们想要的,一个请求广告文档,然后另一个请求常规文档(排除过滤器以不在常规文档中显示广告文档)。但是在一个查询中完成它可能会非常有帮助。

    我们正在尝试复制 Google 广告的行为,即在结果的每一页上显示 5-6 个广告(在顶部和底部)。 Google 上的付费链接取自付费链接池,并与有机项目一起显示在页面上。如果广告链接显示在页面上,则不会显示在自然搜索结果中。

    最佳答案

    Query Elevation Component
    The Query Elevation Component lets you configure the top results for a given query regardless of the normal Lucene scoring. This is sometimes called "sponsored search," "editorial boosting," or "best bets." This component matches the user query text to a configured map of top results.



    [elevate.xml]
    <elevate>
    <query text="foo bar">
    <doc id="1" />
    <doc id="2" />
    <doc id="3" />
    </query>
    <query text="ipod">
    <doc id="MA147LL/A" /> <!-- put the actual ipod at the top -->
    <doc id="IW-02" exclude="true" /> <!-- exclude this cable -->
    </query>
    </elevate>

    在此示例中,查询“foo bar”将首先返回文档 1、2 和 3,然后返回通常出现的文档
    同样的查询。对于查询“ipod”,它将首先返回“MA147LL/A”,并确保“IW-02”不是
    在结果集中。

    forceElevation 参数

    您可以通过添加 在运行时强制提升forceElevation=true 到查询网址:
    [solrconfig.xml]
        <searchComponent name="elevator" class="solr.QueryElevationComponent" >
    <!-- pick a fieldType to analyze queries -->
    <str name="queryFieldType">string</str>
    <str name="config-file">elevate.xml</str>
    </searchComponent>
    <requestHandler name="/elevate" class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
    <str name="echoParams">explicit</str>
    </lst>
    <arr name="last-components">
    <str>elevator</str>
    </arr>
    </requestHandler>

    关于solr - 在 Solr 中实现提升的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40731241/

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