生成AIで社内データを利用する方法|Fine-tuning、ICL、RAG、そしてMCP!

1

「今月の売上はいくら?」

「A社との過去のやり取りをまとめて」

ChatGPTやClaude、Copilotにこんな質問をして、すぐに答えが返ってきたら仕事がはかどりそうですよね。

しかし、通常のテキスト生成AI(以下、生成AI)はあなたの会社のデータを知らないため、こうした質問に答えることができません。何らかの方法で、生成AIとあなたの会社のデータ、社内データを連携する必要があります。

これまで、生成AIと社内データを連携させる方法として、主に次の3つが使われてきました。

  • ファインチューニング(Fine-tuning)
  • インコンテキスト学習(ICL:In-Context Learning)
  • 検索拡張生成(RAG:Retrieval-Augmented Generation)

そして今、4つ目の選択肢として「Model Context Protocol(MCP)」が登場しました。CDataでは、このMCPを活用して生成AIと社内データの連携を実現するCData MCP Serversの提供を開始しています。

本記事では、これら4つの方法をできるだけ分かりやすく解説します。MCPと従来の方法の違いを知りたい方や、どの方法を選ぶべきか検討されている方の参考になれば幸いです。

目次

まず、生成AIの仕組みを簡単に

生成AIが私たちの指示や質問(プロンプト)を的確に解釈し、答えることができる秘密は「大規模言語モデル(LLM:Large Language Model)」にあります。

LLMは、簡単に言えば生成AIの「脳」です。

この脳は、私たちが一生かけても読みきれないほど膨大な文章を学習しています。その結果、人間のように文章を理解したり書いたりできるようになりました。

ファインチューニングとは?

ファインチューニングとは、生成AIの「脳」であるLLMを、あなたの会社専用にカスタマイズする方法です。

通常のLLMはインターネット上の一般的な情報から学習していますが、ファインチューニングでは、これに加えて社内の文書やデータを追加で学習させます。

2

つまり、汎用的な生成AIを「我が社専用の生成AI」に作り変えるイメージです。

通常の生成AIに「報告書を作成して」と依頼すると一般的な形式で作成しますが、ファインチューニング後は、あなたの会社独自の報告書形式や専門用語を使って作成できるようになります

魅力的に聞こえますが、実際にはかなり大がかりな取り組みになります。

追加学習させるデータを特定の形式に整える準備だけで相当な時間がかかり、学習自体にも費用が発生します。さらに、一度学習させて終わりではありません。生成AIの回答精度を定期的にチェックし、必要に応じて再学習させる継続的なメンテナンスも欠かせません。

このように時間もコストもかかるため、ファインチューニングは「最終手段」として位置づけられることが一般的です。他の方法で要求を満たせない場合に初めて検討する、という選択肢になっています。

インコンテキスト学習(ICL)とは?

ファインチューニングは大がかりで費用もかかります。もっと手軽に生成AIに社内データを理解させる方法はないでしょうか?

その答えの一つが「インコンテキスト学習(ICL)」です。ICLとは、プロンプトを通じて生成AIに文書を読ませる方法です。

3

会社の営業マニュアルを生成AIにアップロードし、「このマニュアルを読んでください」と指示すれば、以降はその内容について質問に答えられるようになります。

実際に私も、自社のホワイトペーパーを生成AIに読み込ませて質問してみたところ、正確に答えてくれました。

4  

5

この方法の最大の魅力は手軽さです。特別な準備も費用も必要なく、文書をアップロードするだけで始められます。

ただし、重要な制限があることも理解しておく必要があります。

生成AIが一度に読める文書の量には限界があります。人間が一度に覚えられる情報量に限界があるように、生成AIにも「コンテキストウィンドウ」と呼ばれる処理能力の上限があるのです。数百ページの報告書を読ませようとしても、エラーになってしまうことがあります。

さらに重要なのは、生成AIは読み込んだ内容を「一時的にしか覚えていない」という点です。その会話(チャット)を閉じてしまうと、読み込んだ内容はすべて忘れてしまいます。翌日また同じ質問をしたければ、もう一度文書を読み込ませる必要があるのです。

つまりICLは「今すぐ、この文書について質問したい」という場面では非常に便利ですが、「社内データを恒久的に活用したい」という用途には向いていません。毎回データを読み込ませる手間を許容できるかが、この方法を選ぶ際の判断基準となるでしょう。

検索拡張生成(RAG)とは?

ICLは手軽な反面、毎回データを読み込ませる必要があり、実務では不便な面があります。

大きな文書を丸ごと読み込ませると、実際に必要な情報は数ページだけなのに、関係ない部分まで処理してしまい、生成AIの処理能力を無駄に使ってしまうという問題もあります。

これらの課題を解決するのが「検索拡張生成(RAG)」という方法です。

RAGの仕組みを図書館に例えると分かりやすいでしょう。従来のICLが「必要な本を全部持ってきて机に積み上げる」方法だとすれば、RAGは「図書館の検索システムを使って、必要な本の必要なページだけを探して参照する」方法です。

具体的には、社内データを専用のデータベース(ベクトルデータベース)に保管しておき、質問があったときに生成AIがそのデータベースから関連する情報だけを検索して取り出します。

「2023年の売上について教えて」という質問なら、膨大な社内データの中から2023年の売上に関する部分だけを探し出して回答に使うわけです。

6

この方法なら、毎回データを読み込ませる手間がなくなり、必要な情報だけを効率的に使えるため、より実用的な社内データ活用が可能になります。

ただし、RAGを導入するには相応の準備が必要です。

専用のデータベース(ベクトルデータベース)を構築し、社内データを特殊な形式(ベクトルデータ)に変換して保存する必要があります。この準備作業には専門知識が必要で、それなりの時間がかかります。新しいデータが追加されたら都度更新する必要があるなど、継続的なメンテナンスも欠かせません。

Model Context Protocol(MCP)とは?

RAGは準備やメンテナンスに手間がかかるとお伝えしました。

もっとシンプルな方法はないでしょうか?社内データをわざわざ別の場所にコピーするのではなく、今保存されている場所から直接使えたら便利ですよね。

そこで登場するのが「Model Context Protocol(MCP)」です。

MCPは、生成AIに「社内システムへの通行証」を渡すようなものです。この通行証(ツール)があれば、生成AIは必要なときに必要なデータを、元々保存されている場所に直接取りに行けるようになります。

7

技術的には「MCPサーバー」と呼ばれる橋渡し役のソフトウェアを使います。弊社CDataのMCPサーバーの場合、使い方は次のとおりです。

(1)Claude DesktopなどのMCP対応生成AIチャットツールが入っているPCに、利用したいデータソース向けのMCPサーバー(Salesforce MCP Serverなど)をインストール
(2)MCPサーバーに同梱されている設定ウィザードでデータソースとの接続設定を実施
(3)生成AIチャットツールを開いてMCPサーバーの利用設定を実施

以上で生成AIから社内データの利用を開始できます。Claude Desktopを利用している場合は、MCPサーバーのインストールと同時に必要な利用設定を自動で実施してくれるため、(3)の手順が不要になります。
(ご参考)インストールガイド:CData MCP Servers (Google Sheets)

これまでご紹介したファインチューニングやRAGと比較すると、MCPの簡単さは際立っています。既存のデータをそのまま活用できるため、「まずは試してみたい」という方に最適な方法と言えるでしょう。

特に便利なのは、データが更新されても特別な作業が不要な点です。元のデータが更新されれば、生成AIも自動的に最新のデータを参照します。

RAG vs MCP ?

ここまで4つの方法をご紹介してきましたが、特にRAGとMCPは「必要なデータを探して使う」という点で似ていると感じた方も多いのではないでしょうか。

確かに基本的な考え方は似ていますが、それぞれに向いている用途があります。

RAGが得意なこと:文書の検索と分析

データには大きく分けて2種類あることを理解しておきましょう。「表形式のデータ」(ExcelやCSVなど、きちんと行と列で整理されたもの)と「文書形式のデータ」(WordやPDF、メールの本文など、自由な文章で書かれたもの)です。

RAGは特に文書形式のデータの扱いが得意です。

過去5年分の提案書や契約書、議事録などから必要な情報を探し出すような用途では、RAGが威力を発揮します。RAGが使用する特殊なデータベース(ベクトルデータベース)が、文章の意味を理解して関連する内容を見つけ出すのに優れているためです。

あなたの会社で活用したいデータの多くが報告書やマニュアルなどの文書であれば、RAGが向いているかもしれません。

MCPが得意なこと:データの読み書きとリアルタイム連携

一方、MCPの最大の特徴は「データを読むだけでなく、書き込みもできる」という点です。

「明日の14時に会議の予定を入れて」と生成AIに依頼すれば、実際にカレンダーシステムに予定を登録してくれます。「顧客情報を更新して」と依頼すれば、顧客管理システムのデータを直接更新できます。

このような「AIアシスタント」としての使い方を想定している場合、MCPがフィットします。RAGは基本的に「読み取り専用」なので、このような書き込み操作はできません。

MCPは既存のシステムやデータベースとリアルタイムで連携できるため、常に最新のデータを参照できるという利点もあります。

RAGとMCPの使い分けの目安

簡単にまとめると、「大量の文書から情報を探したい」ならRAG、「システムと連携してデータの読み書きをしたい」ならMCPを選ぶのが基本的な考え方と言えるでしょう。

もちろん、両方を組み合わせて使うことも可能です。まずは自社のニーズに近い方から試してみてはいかがでしょうか。

まとめ

以上解説してまいりました生成AIで社内データを利用するための4つの方法(ファインチューニング、ICL、RAG、MCP)を比較表にまとめると以下のとおりです(なお、本記事を元にClaudeが作成!)。

項目 ファインチューニング ICL RAG MCP
概要 LLM(生成AIの脳)を会社専用にカスタマイズ プロンプトで文書を読み込ませる 専用DBから必要な情報を検索 データソースに直接アクセス
仕組み 社内データをLLMに追加学習させる 文書をアップロードして一時的に読み込み ベクトルDBに保存した社内データから関連情報を検索 MCPサーバー経由で既存システムに直接接続
導入の手軽さ
コスト感 無料
データの永続性 恒久的 一時的 恒久的 リアルタイム参照
メンテナンス 定期的な再学習が必要 不要
(都度読み込み)
定期的なベクトルDBのデータ更新が必要 ほぼ不要
(自動で最新データ参照)
扱える社内データ量

得意なデータ形式 あらゆる形式
(要追加学習データ化)
小~中規模の文書 文書形式
(Word、PDF、メール等)
表形式・システムデータ
データ書き込み 不可 不可 不可 可能
専門知識の必要性 必要
(機械学習等の知識が必要)
不要 ある程度必要 基本的に不要
向いている用途 会社独自の文書スタイルや専門用語での回答が必要な場合 今すぐこの文書について質問したい場合 大量の文書から情報を検索・分析したい場合 AIアシスタントとしてシステムと連携したい場合
選択の目安 最終手段として検討 社内データを一時的な利用でOKなら最適 文書検索が主な用途なら最適 まず試してみたい場合に最適

このうちMCPを試してみたいな、という方がいらしたらぜひCData MCP Serversをお試しいただければうれしく思います。生成AIの活用の幅が広がること間違いなしです!

トライアル・お問い合わせ

関連コンテンツ