「ChatGPT は便利だけど、自社の業務知識を知らないから使えない」 — これを解決するのが RAG(Retrieval-Augmented Generation、検索拡張生成)です。自社のマニュアル・FAQ・議事録を AI に検索させ、出典付きで回答させる仕組みです。

本記事では、RAG の仕組み、ファインチューニングとの違い、ベクトル DB の選び方、「使い物になる」判断基準までを大阪の中小企業視点で解説します。

RAG とは — 3 行で理解する

RAG(Retrieval-Augmented Generation)を 3 行で要約するとこうです:

  1. Retrieval(検索):質問に関連する社内文書を検索する
  2. Augmented(拡張):検索結果を LLM のコンテキストに追加する
  3. Generation(生成):LLM が文書を参照しながら回答を生成する

つまり「会社の本棚から関連書類を選んで、それを見ながら答える図書館員 AI」のようなものです。ChatGPT 単体だと「世間一般の知識」しか答えられませんが、RAG なら「御社固有の答え」を返せます。

RAG の仕組み — 4 ステップで動く

① ドキュメント取り込み(Indexing)

PDF・Word・Excel・議事録・FAQ などの社内文書を読み込み、適切なサイズに分割(チャンク化)して ベクトル DB に保存します。各チャンクは 埋め込みベクトル(Embedding)と呼ばれる数値列に変換されます。

② クエリの埋め込み

ユーザーの質問も同じ Embedding モデルでベクトル化します。これで「質問」と「文書」が同じ「意味空間」で比較できる状態になります。

③ 検索(Retrieval)

ベクトル DB から、質問ベクトルに近い文書チャンクを Top K(通常 3〜10 件)取得します。「意味的に近い」検索なので、キーワード完全一致でなくても探せます。

④ 生成(Generation)

取得した文書チャンクを LLM のプロンプトに「これを参照して答えなさい」と添えて投入。LLM は文書内容に基づいた回答を生成します。

重要なのは、LLM が 「自分の記憶」ではなく「与えられた文書」から答えるという点。だからハルシネーションが大幅に抑制されます。

RAG vs ファインチューニング、どちらを選ぶ?

「社内専用 AI を作る」と言うと、ファインチューニング(既存 LLM を自社データで再学習)を思い浮かべる方が多いです。しかし 中小企業のほぼ全てのケースで RAG が優位 です。

5 つの判断軸での比較

  • 初期コスト:RAG は 50 万円〜、ファインチューニングは 数百万円〜
  • 更新頻度:RAG は文書追加だけで反映、ファインチューニングは再学習必要
  • 透明性:RAG は出典明示可能、ファインチューニングは「なぜそう答えたか」が不透明
  • 運用コスト:RAG は LLM API 利用料のみ、ファインチューニングはモデルバージョン管理が必要
  • 適用範囲:RAG は文書ベースなら何でも、ファインチューニングは「会社の文体・トーン」など特殊用途

結論:まず RAG から始める。ファインチューニングは「RAG では絶対に解決できない」と判明してから検討で十分です。

ベクトル DB の選び方(Pinecone / ChromaDB / Qdrant)

ベクトル DB は RAG の心臓部です。中小企業向けに代表的な 3 つを比較:

  • Pinecone:マネージド SaaS、運用が楽。月 $70〜$700。中規模以上向け
  • ChromaDB:オープンソース、ローカルで動く。無料。小規模 PoC〜中規模向け
  • Qdrant:オープンソース、高速。自己ホスト or マネージド。大規模・性能要求高い向け
  • Weaviate / Milvus:大規模・複雑なフィルタリング要件向け

スグレルの推奨:PoC は ChromaDB(無料)、本番は Pinecone(運用楽)。データ量が 100 万チャンク超えるなら Qdrant 検討。

閉域化 — データを外部に出さない構成

「社外秘文書を外部 LLM API に送りたくない」というニーズには 3 段階の対応策があります:

  1. Azure OpenAI / Amazon Bedrock:企業契約でデータ学習されないことを契約保証。一般的な中小企業はここで十分
  2. ローカル LLM(Llama 3 / Mistral など):社内サーバーで LLM を動かす完全閉域。クラウドに 1 バイトも出ない。GPU サーバー必要
  3. ハイブリッド:機密度の高い文書はローカル LLM、それ以外は Azure OpenAI に振り分け

医療・士業・金融など機密性の高い業種では選択肢 2 が有力。スグレルは GPU サーバー構築から運用まで対応します(RAG チャットボット構築サービス)。

ハルシネーション対策と出典付き回答

RAG の魅力は「LLM が文書から答える」点ですが、それでもハルシネーションは完全には消えません。実装で押さえるべき 4 つの対策:

  1. 出典明示:「答えは XX マニュアル 第 3 章」と必ず引用元を表示
  2. 確信度の表示:「文書から見つかった」「文書にない(推測)」を区別する UI
  3. フォールバック:関連文書が見つからなければ「分かりません」と答えさせる
  4. 定期評価:サンプル質問で精度を継続測定し、悪化したら再調整

「使い物になる」判断基準 5 つ

RAG を導入したものの「使われない」失敗を避けるには、本番運用前に以下 5 項目をチェック:

  1. 回答精度 80% 以上:30 件のサンプル質問で「正しい回答 + 正しい出典」が 80% 以上
  2. 応答速度 3 秒以内:遅いと使われない。LLM とベクトル DB のチューニング必要
  3. UI が既存ツールに統合:Slack / Teams / LINE Bot から呼べる。新ツール覚えさせない
  4. 文書更新が自動:SharePoint / Google Drive / Notion などと連携して自動再学習
  5. 誰でも社員が使える:「プロンプトを工夫しないと答えない」は失敗。自然な質問で答える設計

構築・運用コストの目安

  • PoC:50 万円・3〜4 週間(文書 100 件・1 領域)
  • 本格導入:100〜300 万円・8〜12 週間(複数領域・閉域化)
  • 月額運用:1〜5 万円(LLM API + ベクトル DB ホスティング、文書 500〜2,000 件規模)

市場相場(小規模 500〜1,000 万円)より大幅に安いのは、オープンソース(LangChain・LlamaIndex・ChromaDB)の活用と、自社運用ノウハウによるものです。

よくあるご質問

RAG とファインチューニング、どちらを選ぶべき?

中小企業のほぼ全てのケースで RAG が優位です。ファインチューニングは膨大な学習データと運用コストが必要。RAG は文書を追加・更新するだけで反映され、出典付きで回答できるため透明性も高い。

RAG の構築費用はいくらですか?

市場相場は小規模で 500〜1,000 万円、中規模で 1,000〜3,000 万円。スグレルは LangChain・LlamaIndex・ChromaDB などのオープンソース活用で PoC 50 万円から、本格導入 100〜300 万円で実装します。

社内データが LLM の学習に使われる心配はありますか?

Azure OpenAI や Amazon Bedrock の企業契約では、入力データがモデル学習に使われないことが契約で保証されています。機密性が高い場合は社内サーバー設置の Llama 3 / Mistral などで完全閉域化も可能。

RAG の精度はどれくらい信用できますか?

RAG は事前に取得した社内文書からしか回答できないため、ハルシネーションは大幅に抑制されます。「どの文書のどのページから引用したか」を明示する出典付き UI を実装することで、ユーザーが真偽を判断できる設計が標準です。