この形式のコマンドを受け入れることができるシステムを設計しています
command context
コンテキストは、次のような約 200 個の単語のタプルのリストから定義されます。
physical therapy
cardiac
physician visit
hospital inpatient
hospital outpatient
etc.
スペルミスなどのユーザーエラーを修正できるようにするだけでなく、「理学療法」が「理学療法士」と同じであることを理解し、同義語を受け入れることもシステムに求めています。
最後に、完全に一致しない場合は、ユーザーに最適な一致を明確にするように求める必要があります。
これは私がそれを行うことを考えている方法です:
- コンテキスト ワードと着信クエリの両方をステム処理する
- クエリからコマンド文字列を削除/分離する
- アナグラムを確認して修正します (ただし、これはスペルミスの 1 つのカテゴリのみを対象としています)。
- 完全に一致する単語を探す
- 「近い一致」を探す
これは、特に手順 3 と 5 で、きちんとした解決策とは思えません。
これを行うためのより良い/より簡単な方法は何ですか? C#でそれを行うためのライブラリ、ボーナス。
Luceneはおそらくこれを行うことができますか?任意のガイダンスをいただければ幸いです。
ありがとう!