Поиск по синониму в упругом поиске

Я осуществляю поиск по синониму.
Это изменения для поиска по синониму.
Это моя настройка в индексе. Я использовал расширение поиска пузырьков для этого и изменил этот код.

$indexSettings['analysis']['analyzer'] = array(
'std' => array(
'tokenizer' => 'standard',
'char_filter' => 'html_strip', // strip html tags
'filter' => array('standard', 'elision', 'asciifolding',                             'lowercase', 'stop', 'length'),
),
'keyword' => array(
'tokenizer' => 'keyword',
'filter' => array('asciifolding', 'lowercase'),
),
'keyword_prefix' => array(
'tokenizer' => 'keyword',
'filter' => array('asciifolding', 'lowercase', 'edge_ngram_front'),
),
'text_prefix' => array(
'tokenizer' => 'standard',
'char_filter' => 'html_strip', // strip html tags
'filter' => array('standard', 'elision', 'asciifolding', 'lowercase', 'stop', 'edge_ngram_front'),
),
'text_suffix' => array(
'tokenizer' => 'standard',
'char_filter' => 'html_strip', // strip html tags
'filter' => array('standard', 'elision', 'asciifolding', 'lowercase', 'stop', 'edge_ngram_back'),
),
/*This is my analyzer for synonym*/
'synonym' => array(
'tokenizer' => 'standard',
'type' => 'custom',
// 'char_filter' => 'html_strip', // strip html tags
'filter' => array('synonym','standard', 'elision', 'asciifolding', 'lowercase', 'stop',"kstem", "length" )
),

);

$indexSettings['analysis']['filter'] = array(
'edge_ngram_front' => array(
'type' => 'edgeNGram',
'min_gram' => 2,
'max_gram' => 10,
'side' => 'front',
),
'edge_ngram_back' => array(
'type' => 'edgeNGram',
'min_gram' => 2,
'max_gram' => 10,
'side' => 'back',
),
'stop' => array(
'type' => 'stop',
'stopwords' => '_none_',
),
'length' => array(
'type' => 'length',
'min' => 2,
),
/*This is filter for synonym */
'synonym' => array(
'type' => 'synonym',
'expand' => true,
'synonyms_path' => 'synonyms.txt',
),
);
$properties[$key]['analyzer'] = 'synonym';

Я получаю результат, но не на должном уровне.
например, lkjhgf => арилацетамид деацетилаза типа 3
Если я ищу lkjhgf, то это даст результат для
арилацетамид деацетилаза, как 1
арилацетамид деацетилаза типа 2
арилацетамид деацетилаза типа 3
арилацетамид деацетилаза типа 4

    I want exact match and my fuzzy login is also disabled.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]