Анализатор Bleve "en" выполняет стемминг?
Проблема
Насколько я понимаю, анализаторы языка Bleve выполняют стемминг. Поэтому, когда я выполняю запрос "проигравшего" на следующих данных, я ожидаю, что будет возвращена запись с "проигравшими". Однако это не так. Что я делаю неправильно?
(Примечание: запрос для точного термина "проигравших" действительно успешно возвращает запись в вопросе.)
Шаги
# bleve create dialogue -m dialogue-mapping.json
# bleve bulk dialogue dialogue.json
# bleve query dialogue loser
No matches
# bleve query dialogue losers
1 matches, showing 1 through 1, took 266.788µs
1. whTHc (1.507452)
text
So long, losers.
Данные
dialogue.json
(неважно, что это не совсем правильный JSON, Bleve все равно импортирует его):
{"speaker":"Maia","text":"This is not over.","filename":"www/images/dialogue/maia- this_is_not_over_.png"}
{"speaker":"Saru","text":"Indeed. He has not taken his defeat well.","filename":"www/images/dialogue/saru-indeed__he_has_not_taken_his_defeat_well_.png"}
{"speaker":"HARRY MUDD","text":"That harlot! That no good, two timing backstabber!","filename":"www/images/dialogue/harry_mudd-that_harlot__that_no_good__two_timing_backstabber_.png"}
{"speaker":"VESTA","text":"So long, losers.","filename":"www/images/dialogue/vesta-so_long__losers_.png"}
{"speaker":"VESTA","text":"Optimal course of action determined. Leave Mudd to rot. Save own skin.","filename":"www/images/dialogue/vesta-optimal_course_of_action_determined__leave_mudd_to_rot__save_own_skin_.png"}
{"speaker":"HARRY MUDD","text":"Eh, maybe she needs to work on the witty repartee.","filename":"www/images/dialogue/harry_mudd-eh__maybe_she_needs_to_work_on_the_witty_repartee_.png"}
{"speaker":"Michael Burnham","text":"What are you talking about?","filename":"www/images/dialogue/michael_burnham-what_are_you_talking_about_.png"}
{"speaker":"Michael Burnham","text":"This is obviously a trap.","filename":"www/images/dialogue/michael_burnham-this_is_obviously_a_trap_.png"}
{"speaker":"Paul Stamets","text":"He played us all for fools, is what he did.","filename":"www/images/dialogue/paul_stamets-he_played_us_all_for_fools__is_what_he_did_.png"}
{"speaker":"Paul Stamets","text":"Right. That.","filename":"www/images/dialogue/paul_stamets-right__that_.png"}
{"speaker":"Paul Stamets","text":"Does anyone else have the distinct feeling that we’re forgetting something?","filename":"www/images/dialogue/paul_stamets-does_anyone_else_have_the_distinct_feeling_that_we_re_forgetting_something_.png"}
{"speaker":"KOMAL","text":"Qapla’, my brother.","filename":"www/images/dialogue/komal-qapla___my_brother_.png"}
dialogue-mapping.json
:
{
"types": {
"dialogue": {
"properties": {
"speaker": {
"fields": [
{
"include_term_vectors": true,
"include_in_all": true,
"index": true,
"store": true,
"analyzer": "standard",
"type": "text"
}
],
"dynamic": true,
"enabled": true
},
"fulltext": {
"fields": [
{
"include_term_vectors": true,
"include_in_all": true,
"index": true,
"store": true,
"analyzer": "en",
"type": "text"
}
],
"dynamic": true,
"enabled": true
},
"filename": {
"fields": [
{
"include_term_vectors": true,
"include_in_all": true,
"index": true,
"store": true,
"analyzer": "keyword",
"type": "text"
}
],
"dynamic": true,
"enabled": true
},
"id": {
"dynamic": false,
"enabled": false
}
}
}
},
"default_type": "dialogue"
}