quickwit-oss / quickwit-oss/quickwit
Japanese support observation
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 11.7k
- Forks
- 597
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 37
Description
This is not really a feature request ticket. More of a discussion about the state of our current support of japanese.
Observation 1
We interpret text that is not tokenizer by the query parser as a phrase query, regardless of whether there are quotation mark or not.
In english, most of the time, it does not matter. (there are some exception associated with punctutation though).
In japanese this is more common.
For instance searching...
text:データや処理結果などを提供する
is the same as searching
text:"データや処理結果などを提供する"
It might be a good thing or a bad thing... depending on the user base.
Observation 2
We do not do any normalization as far as I could tell.
half-width character.
A low hanging fruit would probably be:
- NFKC
- halfwidth -> fullwidth
Ideally we should also reduce trailing ー in katakana words https://ja.m.wikipedia.org/wiki/%E9%95%B7%E9%9F%B3%E7%AC%A6
e.g. サーバー・サーバ ユーザー・ユーザ
Observation 3
We do seem to tokenize tightly which is what we want for search. For instance:
text:かぶしきがいしゃなりたくうこうびせいしゃ AND title:空港
does match the 成田空港 page.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue discusses query parser behavior, tokenizer handling, and Japanese text normalization, but names no files or tests. Start by locating those entry points and reviewing how Japanese queries are currently processed; the desired semantics and acceptance criteria still need to be agreed before implementation can be considered done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- search
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100