端末内セマンティック検索
端末上の埋め込みモデルで、貼った文書群を意味で検索する。質問に近い順に並べ替える。
初回利用時に埋め込みモデル all-MiniLM-L6-v2(約25MB)を Hugging Face からダウンロードする。その後はすべて端末上で処理され、文書もクエリもアップロードされることはない。
重要:この埋め込みモデルは英語中心。英語の文書はよく順位づけできるが、日本語など英語以外のテキストはモデルの学習データがほぼ英語のため、うまく一致しないことが多い。
使い方
- 文書を空行で区切って貼り付ける(2〜20件)。各ブロックの1行目はタイトルとして表示される。
- クエリを入力して「検索する」を押す。初回は埋め込みモデルのダウンロードが入る。
- 意味の近い順に、コサイン類似度つきで文書が並ぶ。
注意事項
埋め込みモデルは Xenova/all-MiniLM-L6-v2 を Transformers.js で端末上実行する。文書もクエリもアップロードされない。このモデルは学習データがほぼ英語のため英語中心で、日本語など英語以外の文書はうまく順位づけできないことが多い。その制約はツール内にも明記している。
よくある質問
- キーワード検索と何が違う?
- キーワード検索は同じ語が含まれるかだけを見る。セマンティック検索は文をベクトルに変換して意味の近さで比べるため、語が一致しなくても関連する文書が上位に来ることがある。反面、完全一致が必要な場面ではキーワード検索の方が確実。
- スコアの絶対値に意味はある?
- 順位付けのための相対値として見ること。文書集合が変わればスコアも変わり、0.5 が「半分正解」のような意味はない。