Open elwinschmitz opened 2 years ago
Also:
Add a "relevance"-score to each result, so we can sort the results on it.
For example a level of relevance could be: ("number of matches in the answer" * 10) + ("number of matches in the question" * 1) =
Other things to consider:
There are fancy semantic search models that can be deployed without re-training them, e.g. https://www.sbert.net/examples/applications/semantic-search/README.html Much more robust than RegEx. But need to be hosted, cannot run on client-side
Note to self: See PowerPoint-file: "HIA FAQ UT 2 presentation 26092022"
Also an option: Using a (commercial) third-party service.
Like: https://www.algolia.com/
Other options for third-party search tools: https://patrickposner.dev/tutorials/search-on-a-static-site/
Use https://fusejs.io/ ?
Possibly, to create a "chatbot-as-a-search"-feature: https://azure.microsoft.com/en-us/products/cognitive-services/question-answering/
Another option, maybe: https://lunrjs.com/
@elwinschmitz we were approached by Deloitte who's looking for a data science project as part of their CSR, see this convo. The "chatbot-as-a-search" might be part of it, although the use case needs to be refined with @JLijftogt .
For Future Reference: When going the static-generator route(See #552): Use https://pagefind.app
Currently the search-feature uses a (case-INsensitive) RegEx-matching algorithm like: If
<search input>
can be found as-is ANYWHERE in theAnswer
- ORQuestion
-fields of aQ&A-set
. So for example:Maybe more intuitive would be to match ANY keyword (by splitting the input on spaces) found anywhere in the Question/Answer. So for example:
See #286 See #433