Acabo de instalar Solr, y ahora estoy experimentando para aprender a usarlo. Me gustaría utilizar las funciones Solr Cell y langid, así que seguí los tutoriales relacionados. Solr Cell funciona, pero no puedo hacer que langid haga nada.No se puede hacer trabajo langid en Solr 4.0
En solrconfig.xml
, tengo esto:
<updateRequestProcessorChain name="langid">
<processor class="org.apache.solr.update.processor.LangDetectLanguageIdentifierUpdateProcessorFactory">
<str name="langid.fl">text,title,subject,description</str>
<str name="langid.langField">language_s</str>
<str name="langid.fallback">en</str>
<bool name="langid.map">true</bool>
</processor>
<processor class="solr.LogUpdateProcessorFactory" />
<processor class="solr.RunUpdateProcessorFactory" />
</updateRequestProcessorChain>
(también probé con Tika), y enviar un documento utilizando
curl "http://localhost:8983/solr/update/extract?literal.id=test&commit=true" -F "[email protected]"
Pero cuando me consulta, text:[* TO *]
me devuelve mi documento , pero text_en:[* TO *]
no lo hace; language_s
, incluso si lo declaro como almacenado, está tercamente ausente; *:word
no encuentra nada a pesar de que hay "words"
por lo que no se detiene; y no puedo encontrar nada en el registro. Mi mejor suposición es que langid no funciona, y no tengo idea de por qué.
EDITAR: Encontrado la respuesta: read more docs: p
Desde langid se configura como una cadena de procesador de solicitud de actualización, tiene que ser seleccionado (no es automático). Por lo tanto, esto funciona:
curl "http://localhost:8983/solr/update/extract?literal.id=test&commit=true&update.chain=langid" -F "[email protected]"
Gracias por publicar esto, tenía el mismo problema. P.S en mi caso (último SOLR), la URL de actualización era -Durl = "http: // localhost: 8080/solr/update? Update.chain = langid –