Этот вопрос задавался различными способами ранее, но мне интересно, могли бы люди, которые имеют опыт с автоматическим предложением поискового запроса, предложить совет относительно наиболее полезных и эффективных подходов. Вот сценарий:
Я только начинаю на веб-сайте книги, которая представляет собой словарь терминов (примерно 1000 записей, в среднем 300 словосочетаний), многие из которых довольно неясны, и, вероятно, многие посетители сайта не знал бы, как пишутся слова. Издатель хочет сделать полнотекстовый поиск доступным для каждой записи. Итак, я надеюсь реализовать поисковик с исправлением орфографии. Основной сайт, вероятно, будет выполнен в среде PHP (или, возможно, Django) с базой данных MySQL.
Может ли кто-нибудь с опытом в этой области дать совет по следующим вопросам:
- С установленным корпусом такого рода, я должен использовать что-то вроде Lucene или Sphinx для поисковой системы?
- Насколько я могу судить, ни один из них не имеет встроенной функции предложения. Так что, похоже, мне нужно будет интегрировать одно или несколько из следующего. Каковы преимущества / недостатки:
Я обеспокоен спецификой моего корпуса и не хочу, чтобы Google начал предлагать вещи, которые не имеют ничего общего с этой книгой. Я также не уверен, стоит ли мне пытаться использовать как сравнение метафонов, так и сравнение Левенштейна, или какую-то другую комбинацию методов для захвата как опечаток, так и попыток фонетического написания.