RAGをノーコードで驚くほど簡単に構築してナレッジ活用 Google Cloudを使った方法とは:サクッと生成AI業務活用ガイド(3)(1/2 ページ)
「RAGシステムの構築は専門家なしでは無理」ではありません。ソフトのインストールすらせずに、RAGを使ったAIチャットbotアプリの社内公開までをノーコード、数ステップでやることができます。今回はその方法を具体的に紹介します。
この連載では、プログラマーではない人たちがサクッと生成AIを業務活用する方法を紹介しています。
前回の記事「生成AI、"使う"から"作る"へ 自前構築を選ぶべき理由と『基本の型』とは」では、既存の生成AIサービスが持つリスクや限界、そしてそれらを克服するアプローチとして「ファインチューニング」と「RAG(Retrieval-Augmented Generation)」を解説しました。特に、ハルシネーション(幻覚)を抑制し、信頼性の高い社内情報に基づいて回答を生成するRAGは、多くの企業にとって有力な選択肢です。
「自前で構築」と聞くと、多くの専門知識や高い開発コストが必要だと感じるかもしれません。ですが、クラウドでコードを書かずに、数ステップでRAGを使ったAIチャットbotを作る方法があります。
本記事では、Google Cloudの「Vertex AI Search」を使い、RAGの仕組みを驚くほど簡単かつ安全に構築する方法を具体的に紹介します。
※ここでは、Google CloudおよびVertex AI自体の解説や利用開始方法については触れません。また、Amazon Web Services(AWS)での生成AIアプリケーション構築法については、次回紹介します。
なぜGoogle CloudのVertex AI Searchなのか?
生成AIの自前構築には、大規模言語モデル(LLM)の専門知識、インフラ構築、継続的なメンテナンスなど、多くの課題が伴います。Vertex AI Searchは、これらの課題を解決するために設計されたフルマネージドサービスです。
専門知識のハードルを低減:データソースを指定するだけで、情報の検索(リトリーバル)から回答生成まで、RAGシステムの根幹をなす複雑なプロセスを自動で構築してくれます。
高いセキュリティ:入力されたデータは自社のGoogle Cloudプロジェクト内で管理され、モデルの学習に利用されることはありません。これにより、機密情報の漏えいリスクを低減できます。
最新・高性能モデルの利用:Googleの強力な生成AIモデル(Geminiなど)を、回答のジェネレーターとして簡単に利用できます。
今回は、船員法を情報ソースとしたRAGアプリケーションを構築します。船員法は、長時間陸上から離れるなど、海上労働の特殊な環境に対応した労働法です。RAGを使用しないチャットbotだと労働基準法に基づく回答が多くなりますが、船員法の参照により、アプリケーションは船員の人たちに対して適切な回答ができるようになります。RAGの効果が分かりやすいため、この例を選びました。
Vertex AI Searchで作成するアプリケーションは以下のようなものになります(画像クリックでアニメーション表示)。
Vertex AI SearchでRAGシステムはここまで手軽になる
本来、RAGシステムの構築には、「データのベクトル化」「検索エンジンの選定」「LLMとの連携」など、複雑なステップが必要です。しかし、Vertex AI Searchを使えば、これらのプロセスが劇的に簡素化されます。
構築は、わずか3ステップで完了します。
ナレッジの器を作る(データストアの作成):AIに参照させたい社内文書(PDFやHTMLなど)をGoogle Cloud Storageにアップロードします。
検索アプリの作成と設定:次に、Vertex AI Searchのコンソール上で、そのデータ群を「知識ソース」として指定し、数クリックで検索アプリケーションを作成します。
テストと確認:最後に、作成したアプリケーションのプレビューによって確認します。
作成後すぐに、プレビュー画面で動作確認が可能です。社内文書に関する質問を入力すれば、AIが内容を理解し、根拠となるドキュメントへのリンク付きで回答を生成します。この「根拠の提示」機能こそ、ビジネス利用における信頼性を担保する上で極めて重要です。
では、実際にVertex AI Searchを使って、RAGシステムを構築する手順を見ていきましょう。基本的に、ガイドに従って作成するだけなので、思ったより簡単にできると思います。
ステップ1:ナレッジの器を作る(データストアの作成)
まずデータストア、つまりナレッジを格納する場所を作ります。今回は、「Google Cloud Storage(Cloud Storage)」のバケットをデータストアとして利用します。Cloud Storage とは、ドキュメントやPDF、動画などを格納できるファイルサーバです。AWSに慣れている人には、「Amazon S3」と同じようなサービスだと言えば通じると思います。
「バケットを作成」を選択すると、バケット情報登録画面が表示されるので、以下の要領でバケットの情報を入力します。
手順 | 項目 | 入力値(例) |
---|---|---|
バケットに名前を付ける | 名前 | 任意の名前(半角英数字) |
データの保存場所の選択 | ロケーションタイプ | Region |
ロケーション | asia-northeast1(東京) | |
Storage Transfer Service経由でクロスバケット レプリケーションを追加する | オフ(チェックしない) | |
データのストレージ クラスを選択する | デフォルトのストレージ クラス | Standard |
このバケットで階層的な名前空間を有効にする | オフ(チェックしない) | |
オブジェクトへのアクセスを制御する方法を選択する | 公開アクセスの防止 | オン(チェックする) |
アクセス制御 | 均一 | |
削除(復元可能)ポリシー(データ復旧用) | オフ(チェックしない) | |
オブジェクト データを保護する方法を選択する | オブジェクトのバージョニング | オフ(チェックしない) |
バケット保持ポリシー | オフ(チェックしない) | |
オブジェクト保持 | オフ(チェックしない) | |
データ暗号化/暗号化のタイプ | Googleが管理 |
一通り入力できたら、「作成」ボタンを押してください。そうすると、公開アクセスの防止という警告が出てきます。"このバケットに対する公開アクセス禁止を適用する" にチェックを入れて「確認」ボタンを押しましょう。これでバケットが作成されます。
作成したバケットを選択し、「ファイルをアップロード」ボタンを選択します。すると、アップロードファイルの選択画面が表示されるので、ドキュメントを一式選択してアップロードしてください。
Copyright © ITmedia, Inc. All Rights Reserved.