ローカルRAGを作る最小構成|LLM・Embedding・indexを分けて考える

目次
結論
最小RAGはLLMにPDFを読ませる1機能ではなく、ingest→embedding/index→retrieve→LLM answer→citationの工程です。小さいcorpusで各componentを交換できる構成から始めます。
まずこの表で判断する
documents → parse/chunk → embedding → index query → embed → retrieve top-k → LLM context → answer + citation → evaluation/log
この判断表は、未測定の数字をそれらしく埋めるための表ではありません。価格・性能・品質など実測が必要なセルは、公式一次情報または自分の観測値だけで更新してください。
選び方・進め方
1. 判断ポイント
LLMは回答生成、embeddingは検索用表現、indexは検索/metadata filterを担当し、役割を分けます。
2. 判断ポイント
小規模では軽量storageから始め、ACL・大量更新・高concurrencyが必要になって専用vector DBを検討できます。
3. 判断ポイント
回答の印象より、正解文書がtop-kへ入ったかを先に測ります。retrievalが外れればLLMを大きくしても根拠は戻りません。
実行前チェック
- source 責任者
- chunk/update
- retrieval単独評価
- citation
- 削除/更新検証
迷ったときの優先順位
最初に不可逆な条件を確認します。契約・権限・必要メモリ・物理互換・商用権利など、後から簡単に直せない条件を先に落とし、その後に価格や操作感を比較します。逆に、価格や画面の好みから選び始めると、導入後に「そもそも要件を満たせない」状態になりやすくなります。
まとめ
- 最小RAGはLLMにPDFを読ませる1機能ではなく、ingest→embedding/index→retrieve→LLM answer→citationの工程です。小さいcorpusで各componentを交換できる構成から始めます。