【要約】ObsidianとClaudeCodeで公式ドキュメント群を「測定できるグラフRAG」に変換する — 軽量検索基盤の作成記録 [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
ドキュメント管理者が、蓄積したナレッジをAIに効率よく参照させたいと考えた際、以下の課題に直面した。
- ・LLMへの直接入力は、コンテキスト肥大化によるコスト増と精度低下を招く。
- ・既存の検索ツールでは、意味検索や関連度順のチャンク取得が困難である。
- ・検索精度を定量的に評価し、改善を繰り返す仕組みが不足している。
// Approach
筆者は、LLMの性能に依存せず検索精度を担保するため、以下のステップでシステムを構築した。
- ・取得: git cloneやllms.txtを優先し、Markdown形式でドキュメントを収集。
- ・整形: 内部リンクをWikiLink化し、製品固有の形式を正規化。
- ・グラフ化: NetworkXを用い、WikiLinkから有向グラフを構築。
- ・検索: BM25、グラフ中心性、ベクトル検索をRRFで融合。
- ・評価: hit@kやMRRを用いた評価ハーネスを実装し、改善を数値化。
// Result
構築したシステムは、大規模なドキュメント群に対して以下の成果を示した。
- ・6製品・約1,900ページに対し、hit@1=94%、hit@3=100%、MRR=0.97を記録。
- ・torch非依存(量子化ONNX)により、CPUのみの軽量環境で動作を実現。
- ・「検索はローカル、LLMは最小限」の設計により、機密情報への転用も容易となった。
Senior Engineer Insight
> 検索精度をLLMの知能に依存させず、仕組み(語幹化、同義語、グラフ)で担保する設計思想は極めて実戦的だ。特に「評価ハーネス」による回帰テストの導入は、継続的な改善を可能にする。ただし、自作ゆえの保守コストと、大規模化に伴うBM25再構築の計算コストが運用上の懸念点となる。機密性の高いナレッジベースにおいて、ローカルLLMと組み合わせる構成は、セキュリティと精度の両立において非常に強力な選択肢だ。