検索
kura は、速度と精度をトレードオフする 3 つの検索コマンドを提供します。 いずれもすべてローカルで動きます。
3 つのモード
Section titled “3 つのモード”kura search — キーワード
Section titled “kura search — キーワード”BM25 ランキングによる FTS5 全文検索です。新規インストール時は sqlite-vaporetto 形態素解析トークナイザーを使うため、日本語クエリは文字 n-gram では なく実際の単語に分割されます。高速(通常 100ms 未満)で、LLM プロバイダを必要としません。常に動くモードです。
kura search "WAL チェックポイント"ドキュメントに現れる語が概ね分かっているときに使います。
kura vsearch — セマンティック
Section titled “kura vsearch — セマンティック”sqlite-vec を使った、embedding に対するベクトル K 近傍検索です。ドキュメントはチャンクに分割されて ローカルモデルで embedding 化されるため、クエリは正確な語ではなく 意味で一致します。「書き込み中も読める仕組み」というクエリが、 共通語が無くても「WAL チェックポイント」というメモを引き当てられます。
kura vsearch "書き込み中も読める仕組み"vsearch は embedding を必要とし、embedding はプロバイダを必要と
します。下の劣化動作を参照してください。
kura query — ハイブリッド(最高精度)
Section titled “kura query — ハイブリッド(最高精度)”フルパイプラインです。キーワード検索とセマンティック検索を実行し、 2 つのランク付きリストを融合してから、上位候補をローカル LLM で リランクします。最高精度のモードで、正確な語が分からないときに 使います。
kura query "SQLite の並行性"どのモードを使うか
Section titled “どのモードを使うか”| 分かっているもの | 使うモード |
|---|---|
| 現れる語 | kura search |
| 語ではなく発想だけ | kura vsearch |
| 語はさておき最良の答えが欲しい | kura query |
質問への回答 — kura ask
Section titled “質問への回答 — kura ask”ドキュメントの一覧ではなく答えが欲しいときは kura ask を使い
ます。ハイブリッド検索を実行したうえで、上位ヒットだけを根拠に
ローカル LLM が質問に回答し、出典を [1], [2] … の形で引用します。
kura ask "WAL モードで reader は writer をブロックする?"回答の後に番号付きの出典一覧が表示されるため、どの主張もドキュメント まで遡って確認できます。回答の根拠はナレッジベースの内容だけで、 該当する情報が無ければ推測せずにその旨を答えます。LLM プロバイダが 無いときは、通常の検索結果を表示します。
Embedding
Section titled “Embedding”セマンティック検索とハイブリッド検索は、投入済みのベクトル
インデックスから読み取ります。書き込み時は新しいチャンクを未処理として
記録するだけです。検索前に未処理チャンクが100件以下なら自動で embedding
化し、それより多い場合や中断後の再開には kura embed を使います。
kura status は embedding カバレッジを表示するので、バックフィルの
要否が分かります。
embedding モデルを変更したら、kura doctor --fix(変更の検出)に
続けて kura embed を実行し、新しいモデルの次元でベクトルを再生成
してください。
プロバイダが無いときの劣化
Section titled “プロバイダが無いときの劣化”キーワード検索とハイブリッド検索はオフラインでも動きます。モデルが 必要なのは純粋なセマンティック検索だけです。
kura searchはプロバイダの有無にかかわらず常に動きます。kura queryは、セマンティック検索やリランクが利用できない ときはキーワード結果側へフォールバックします。モデル由来の精度 向上は無いものの、答えは返ります。kura askは、回答の生成ができないときは通常の検索結果の表示 へフォールバックします。kura vsearchは例外で、embedding プロバイダを必須とし、 フォールバックしません。到達できない場合は終了コード4(LLM プロバイダ利用不可)で終わります。キーワード検索へ劣化させたい ときはkura queryを使ってください。
これはコアの保証です。ナレッジベースはオフラインでも検索可能なまま です。プロバイダの選択や無効化は 設定 を 参照してください。