Nutch Solr自动语言检测-未显示特定于语言的字段

Nutch Solr自动语言检测-未显示特定于语言的字段,solr,nutch,Solr,Nutch,我试图在Solr中启用语言检测,但索引后不会出现新的特定于语言的字段 以下是我目前的配置: solrconfig.xml: <processor class="org.apache.solr.update.processor.LangDetectLanguageIdentifierUpdateProcessorFactory"> <str name="langid.fl">title</str>

我试图在Solr中启用语言检测,但索引后不会出现新的特定于语言的字段

以下是我目前的配置:

solrconfig.xml:

<processor class="org.apache.solr.update.processor.LangDetectLanguageIdentifierUpdateProcessorFactory">
                <str name="langid.fl">title</str>
                <str name="langid.langField">lang_detect</str>
                <str name="langid.fallback">en</str>
                <bool name="langid.map">true</bool>
                <str name="langid.map.lcmap">en:en, zh:zh</str>
                <bool name="langid.individual">true</bool>
                <str name="langid.individual.fl">title</str>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
<field name="lang123" type="string" indexed="true" stored="true" />
<field name="title" type="text_general" indexed="true" stored="true" />
<field name="title_en" type="text_en" indexed="true" stored="true" />
<field name="title_zh" type="text_cjk" indexed="true" stored="true" />
<property>
  <name>plugin.includes</name>
  <value>protocol-http|urlfilter-regex|parse-(html|tika)|index-(basic|anchor)|indexer-solr|scoring-opic|urlnormalizer-(pass|regex|basic)|language-identifier</value>
</property>
问题

  • 为什么会出现“lang”字段,即使我有意将语言检测字段设置为“lang_detect”
  • 结果中既不显示“title_zh”,也不显示“title_en”。是否缺少步骤/配置
    谢谢。

    我注意到的一件事是,您试图在Solr和Nutch两个位置检测内容的语言,通常使用其中一个。如果您在Nutch上使用
    语言标识符
    插件,则识别过程仅在Nutch上出现,基本上在Solr端,您将获得一个带有该语言的文档,因此您不需要使用
    LangDetectLanguageIdentifierUpdateProcessor工厂
    处理器

    如果希望在Solr端识别语言,那么可以使用Solr处理器,这样就不需要Nutch上的
    语言标识符
    插件,只需从两个插件中选择一个即可

    至于字段问题,
    language identifier
    插件没有更改字段名称()的选项,因此如果使用它,您将在索引中获得一个
    lang
    字段


    对于第二个问题,您希望
    标题上有什么内容?Nutch/Solr上的语言标识只检测文本的语言,并将此“分类”放在字段中(
    lang\u detect

    我注意到的一件事是,您试图在Solr和Nutch两个位置检测内容的语言,通常使用一个或另一个。如果您在Nutch上使用
    语言标识符
    插件,则识别过程仅在Nutch上出现,基本上在Solr端,您将获得一个带有该语言的文档,因此您不需要使用
    LangDetectLanguageIdentifierUpdateProcessor工厂
    处理器

    如果希望在Solr端识别语言,那么可以使用Solr处理器,这样就不需要Nutch上的
    语言标识符
    插件,只需从两个插件中选择一个即可

    至于字段问题,
    language identifier
    插件没有更改字段名称()的选项,因此如果使用它,您将在索引中获得一个
    lang
    字段


    对于第二个问题,您希望
    标题上有什么内容?Nutch/Solr上的语言标识只检测文本的语言,并将该“分类”放在字段中(
    lang\u detect
    )。那么,是哪一部分使“title”能够被语言自动检测并复制到各自的“title_en”、“title_zh”字段?因为我们可以在Solr输出中看到
    lang_detect
    字段,所以Solr上的语言检测工作正常,尝试删除
    langid.individual.*
    选项并使用Solr Admin UI手动索引文档以进行测试,现在不确定各个设置会发生什么,因为您在那里设置的字段与
    langid.fl
    中的字段相同。我想(老实说,现在不记得了)这是我过去使用过的配置,试试看。那么,是哪一部分使“title”能够被语言自动检测并复制到各自的“title_en”、“title_zh”字段?因为我们可以在Solr输出中看到
    lang_detect
    字段,所以Solr上的语言检测工作正常,尝试删除
    langid.individual.*
    选项并使用Solr Admin UI手动索引文档以进行测试,现在不确定各个设置会发生什么,因为您在那里设置的字段与
    langid.fl
    中的字段相同。我想(老实说,现在不记得了)这是我过去使用过的配置,试试吧
    {
               "tstamp":["2017-07-18T08:44:35.470Z"],
                "segment":[20170718164424],
                "digest":["23c66ec3785ca1fe1e71bc636e6f6f37"],
                "host":["test.com"],
                "boost":[1.0],
                "id":"https://test.com",
                "title":["保新"],
                "lang_detect":["zh"],
                "metatag.keywords":["meta keywords here",
                  "meta keywords here"],
                "url":["http://test.com"],
                "content":["test test"],
                "_version_":12312312
        }