New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature request] Prefix match support fuzziness #30720
Comments
Wouldn‘t it be possible to add a simple component that first run a internal fuzzy matching query and with the corrected result a usual prefix query? Greetings, |
@KazaBen I've started working on this feature between a few other things. Implementation will be a two-step process:
I should be able to give an estimate once I've started work on part 2 (hopefully within a few days, assuming nothing else pops up) and have gotten a gist of the complexity involved. |
Update: part 2 has been completed and its PR is pending code review. Once it has been merged and a new Vespa version has been released containing the changes, fuzzy prefix matching can be used by adding a
Assuming no other blockers, I'd expect it to be available as part of an Open-source release some time next week. I'll update this issue with a concrete version number once that happens. A few notes:
|
@KazaBen version 8.337.85 is now on Docker hub, which contains support for fuzzy prefix matching. I haven't added it to the official documentation just yet, but my previous comment should have the most important bits of information (and caveats...!). Would be great if you could test it out and let me know if it solves your use case. |
Is your feature request related to a problem? Please describe.
When implementing autocomplete application, most of the queries are incomplete words.
Sometimes misspells happen in incomplete queries too. Let's look at an example:
Document = Fjallraven
(notice double L)Query = Fjalr
(incomplete query, with misspell: only a single L)It is a must do for autocomplete application to be still able to match
Fjallraven
with user queryFjalr
.Describe the solution you'd like
When using Prefix match add support for Fuzziness.
Describe alternatives you've considered
Combining prefix matching with word fuzzy matching:
term (prefix) contains OR term contains fuzzy
However, it would not cover the previously mentioned common case:
Document = Fjallraven
(notice double L)Query = Fjalr
(incomplete query, with misspell: only a single L)term (prefix) contains
couldn't match as it query has a misspell and there is no fuzziness supportterm contains fuzzy
couldn't match as it is incomplete wordAdditional context
This exact functionality exists in Elasticsearch’s Completion Suggester Fuzzy Queries
The text was updated successfully, but these errors were encountered: