gpt4 book ai didi

solr - 在构建字典时查询建议器

转载 作者:行者123 更新时间:2023-12-04 14:12:33 26 4
gpt4 key购买 nike

我的建议者 conf:

 <searchComponent name="suggest" class="solr.SuggestComponent">
<lst name="suggester">
<str name="name">titleSuggester</str>
<str name="lookupImpl">AnalyzingInfixLookupFactory</str>
<str name="field">name</str>
<str name="suggestAnalyzerFieldType">text_pt</str>
<str name="payloadField">type</str>
<str name="weightField">weightField</str>
<str name="buildOnCommit">false</str>
<str name="buildOnStartup">false</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="indexPath">/home/dev/suggestions</str>
</lst>

<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy" >
<lst name="defaults">
<str name="suggest">true</str>
<str name="suggest.count">10</str>
<str name="suggest.dictionary">titleSuggester</str>
<str name="suggest.onlyMorePopular">true</str>
</lst>
<arr name="components">
<str>suggest</str>
</arr>
</requestHandler>

这是工作!但是,我需要每小时构建我的字典,而这个构建需要 2 分钟。
我每小时运行:
localhost:8983/solr/AutoComplete/suggest?suggest.q=term&suggest.build=true

在此期间,我需要获得结果,但是当我运行查询时:
localhost:8983/solr/AutoComplete/suggest?suggest.q=term

我得到这个返回(因为构建正在运行):
<response>
<lst name="responseHeader">
<int name="status">500</int>
<int name="QTime">5</int>
</lst>
<lst name="error">
<str name="msg">suggester was not built</str>

在构建运行时我该怎么做才能获得结果?

最佳答案

这个问题很老了,但我有同样的问题(我的重建可能运行一个小时),我来到了这个解决方案:
配置两个组件,例如具有不同 indexPath 值的建议_A 和建议_B。
配置两个请求处理程序,例如建议和建议_重建。
将suggest_A 分配给suggest 并将suggest_B 分配给suggest_Rebuild。
在suggest_Rebuild 处理程序上进行重建。重建完成后,通过config API(update-requesthandler)切换两个组件的组件分配。
此解决方案的缺点是您需要双磁盘空间。

关于solr - 在构建字典时查询建议器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35708094/

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