Настройка результатов поиска с помощью коэффициента гибкости поиска

Помимо основ работы с маркерами поиска и свойствами поиска, позволяющими получать более точные результаты поиска в хранилище (см. раздел Поиск в хранилище) администраторы также могут использовать для управления "диапазоном" результатов поиска в хранилище изменяемый коэффициент гибкости поиска Lucene в файле web.config.

Коэффициент гибкости поиска определяет максимальное допустимое количество позиций между любыми двумя терминами в поисковой фразе для достижения совпадения. Эти позиции находятся в диапазоне от точного соответствия строке поиска до некоторого количества комбинаций этой строки.

"Гибкость" в данном случае — это редакционное расстояние, где единицы расстояния — это число перемещений, которые могут совершать маркеры относительно своей позиции в поисковой фразе и при этом входить в результаты поиска. Например, для изменения порядка двух слов в поисковой фразе требуется два перемещения. При первом перемещении слова помещаются друг над другом, при втором меняется их порядок. Таким образом, для переупорядочивания поисковой строки с двумя словами или маркерами гибкость должна равняться хотя бы двум (2).

Проще говоря, коэффициент гибкости определяет, насколько неупорядоченными могут быть маркеры поиска, чтобы все еще быть включенными в его результаты. И хотя по умолчанию более точные соответствия имеют приоритет, это значение может напрямую повлиять на общее количество результатов поиска.

Настройка коэффициента гибкости

  1. В файле web.config (C:\Program Files\Autodesk\ADMS Professional 20xx\Server\Web\Services) найдите следующие две строки:

    !-- slop factor provided to lucene search -->
    
    <add key="SearchSlopFactor" value="10" />
  2. Измените значение SearchSlopFactor на сервере ADMS для изменения результатов, получаемых при определенных критериях поиска. В зависимости от внесенных изменений будет получен уточненный или расширенный набор результатов поиска.

    По умолчанию для гибкости задано значение 10. Можно сделать это значением равным 0 для поиска только точных соответствий или увеличить этот диапазон до требуемого уровня.

    Прим.: Следует помнить, как эти изменения влияют на работу пользователей с поиском. Если значение слишком низкое, пользователи могут не найти нужных им данных. Если значение слишком велико, им придется сортировать слишком много результатов поиска.

Пример 1: поиск с несколькими маркерами

Пример 2: поиск с меньшим количеством маркеров