Discourse 검색이 오타에 영향을 받지 않나요? 여러 단어 검색은 어떻게 작동하나요?

예를 들어, 다음 쿼리들을 사용하여 DC 검색 엔진이 "John Max Dolittle"을 찾을 수 있을까요?

  • hohn <== 오타
  • john dolittle <== 문자열 누락
  • john mx doelitle <== 퍼지 검색

이 게시물에서 해당 문제를 알게 되었습니다: Discourse search is awfully unsmart!
하지만 이 게시물은 꽤 오래되었습니다(2017년). 이후로 개선된 부분이 있을까요?

Algolia 플러그인이 더 이상 공식 지원이 아닌 것 같습니다.

AI 기반 검색은 오타에 강하지만, 속도가 빠르지는 않습니다:

다만, 유사도를 확인하기 전에 LLM을 사용하여 검색어를 확장해야 하므로 이 기법을 사용하면 처리가 다소 느려집니다.

일반 검색은 Snowball을 통해 스템 처리를 수행합니다: Snowball Stemmer - NLP - GeeksforGeeks

이 방식은 부수적으로 일부 오타를 잡아낼 수 있지만, 이는 어디까지나 부수적인 효과일 뿐입니다. 메타포네(Metaphone)나 다른 정교한 오타 수정 기법은 사용하지 않으며, Postgres에는 이를 위한 간단한 내장 기능이 없습니다.

Algolia 플러그인은 계속 지원되며 공식적으로 유지됩니다: Discourse Algolia Search

참고로 Algolia 검색 플러그인은 여전히 #공식입니다. :+1:

(당사에게 호스팅을 맡기신 경우, 엔터프라이즈 플랜에서 사용 가능합니다)