HAQM Web Services ブログ
NetApp ONTAP を使用してオンプレミスのデータを活用するための RAG ベース生成 AI アプリケーション
本記事は、NetApp のソリューションアーキテクト 井上 耕平氏、テクニカルソリューションスペシャリスト 川端 卓氏、シニアクラウドソシューションアーキテクト 藤原 善基氏、AWS セールススペシャリスト 小寺 加奈子氏、アマゾン ウェブ サービス ジャパン合同会社のシニアプロトタイピングソリューションアーキテクト 小泉 秀徳、パートナーソリューションアーキテクト 山田 磨耶による共同執筆です。
データ活用のトレンド
生成 AI の発展により、データ活用の在り方は大きな転換期を迎えました。従来のデータ分析は主に構造化データを対象としていましたが、生成 AI 利用により画像や音声を含む非構造化データのデータ分析も可能となり、活用可能なデータの範囲が拡大しています。また、これまでデータの分析者には専門知識が求められていましたが、生成 AI を活用した自然言語によるデータ分析が実現され、誰もがデータを活用し、インサイトを引き出せるようになりました。
このように生成 AI を活用することで、分析対象となるデータの量や種類、分析プロセスが大きく変化している一方で、データ活用への生成 AI 導入にはいくつかの課題が存在します。
生成 AI × データ活用の課題
生成 AI を使ったデータ活用でまず考えられる課題として、組織の所有データに生成 AI がアクセスする環境を用意することが困難であることが挙げられます。現在多くの生成 AI の機能はクラウドサービスとして提供されており、最新の機能や性能を利用するためにはクラウドからのデータ活用が重要になります。一方で、多くのデータはオンプレミスに存在しており、これらのデータをクラウドに移行するためには、多くのコストと時間が必要となります。既にクラウドストレージを利用している企業であっても、生成 AI 機能を活用するためにデータ移行が必要となるケースも考えられます。
また、これからデータを収集する状況であっても、組織のセキュリティやコンプライアンスの要件により、データをクラウドに保管することが難しいケースも見受けられます。
このような課題に対し、データを既存のデータストレージに保持したまま、AWS が提供する生成 AI 機能によってデータを活用するためのソリューションを NetApp と AWS の 2 社で開発しました。本記事では、共同開発ソリューションを使った国立大学法人広島大学様による実証実験の概要と、共同開発ソリューションの特徴についてご紹介します。
広島大学様との実証実験
2024 年から 2025 年にかけて、広島大学様と共同で行った実証実験についてご紹介します。
広島大学様においても、上述の課題をお持ちでした。大学の情報インフラを管理する上で、学内で持つ機微な研究データをクラウドに保管することはデータの長期保管やセキュリティの観点から難しく、特にデータへのアクセス権の管理についてはこれまで以上に煩雑になることが推測されます。更に、教育や学習データを蓄積するシステムが増加し、これらを活用して教育の質の向上や個別学習支援の期待が高まっているものの、各部門が独立したシステムでデータを管理していること、個人情報保護法や General Data Protection Regulation (GDPR) などのコンプライアンス順守に向けた管理体制が未成熟であることなど、教育データを管理し利活用するためのスキルが不足しているという課題をお持ちでした。
大学の情報インフラもオンプレミスのみの環境からクラウドと混在した環境に変化しており、今後求められるインフラは結局何が良いのかと検討されていた中で、スモールスタートで構築できるハイブリッド生成 AI インフラ環境を構築し実験することとなりました。
ハイブリッド生成 AI 環境を考える上で特に考慮した点は、図 2 のとおり学内のストレージに格納されている機微なデータ、いわゆるクローズドデータの扱いについてでした。AWS にデータを保管する際には、一般的に HAQM Simple Storage Service (HAQM S3) というオブジェクトストレージサービスが利用されます。手元のクローズドデータを利用したハイブリッド生成 AI 環境を考えた際、 「HAQM S3 へデータをアップロードする構成」の課題として、以下の点が挙げられます。
- 一部の機微なデータはクラウドに持っていけない
- 大規模なデータの移動にコストと時間がかかる
- 2 箇所以上 (オンプレミスの元データと HAQM S3) の重複したデータの管理が困難
- オブジェクトストレージ である HAQM S3 にデータを移動すると権限情報などのメタデータが失われる
- データの移動後、セキュリティとデータ保護の再適用が必要
これらの課題に対し、NetApp のテクノロジーを利用した課題解決として NetApp ONTAP によるデータ連携を提案しました。具体的には、FlexCache によるキャッシュの活用、または SnapMirror による非同期複製の活用です。このデータ連携により、データの特性に応じて、生成 AI 機能を利用する環境をクラウドやオンプレミスなどから選択し、シームレスなデータ活用が可能となります。具体的には、Data Mobility と Data Infrastructure により、それぞれの課題の解決を実現します。
- Data Mobility (データの可搬性)
- 生成 AI アプリケーションの近くにデータを配置
- データ転送にかかる時間とコストを削減
- データの二重管理不要
- Data Infrastructure (データの管理)
- フォルダ構造をそのまま保持
- 設定済みのアクセス権をそのまま保持
- データを保護し、セキュリティを確保
実証実験は、以下3パターンの構成で実施しました。
- パターン1:HAQM S3 を利用した構成
- パターン2:NetApp BlueXP Workload Factory と HAQM FSx for NetApp ONTAP (FSx for ONTAP) を利用した構成
- この構成について、詳細は AWS Solutions Library をご確認ください
- パターン3:AWS の標準サービス と FSx for ONTAP を利用した構成
特にパターン 3 では、NetApp ONTAP のキャッシュ機能である FlexCache を利用し、オンプレミスの NetApp ONTAP から FSx for ONTAP にデータ連携することにより、以下の 3 点のメリットを実現できます。
- オンプレミスのデータがそのままキャッシュ側である FSx for ONTAP で参照できる
- キャッシュ側である FSx for ONTAP のデータの容量はオンプレミス NetApp ONTAP の 1/10 程度に抑えられる
- オンプレミスのファイルアクセス権情報をそのまま保持できる
パターンごとの想定利用シーンを吟味して、今回の実証実験ではパターン 3 にフォーカスし、 NetApp と AWS 両社でソリューションとして開発しました。
パターン 3 の構成では、オンプレミス、AWS と環境を問わずエンド・ツー・エンドで NetApp ONTAP の強力なデータ保護機能である SnapLock、Tamperproof Snapshot などをデータ保護の観点で活用できます。これらの活用により、OWASP Top10 for LLM Application (※1) で 4 番目のリスクに上がっている「LLM04: データとモデルのポイズニング」から保護することも可能です。具体的な機能のメリット、利用方法につきましては参考ブログをご覧ください。
※1:出典 ” OWASP Top 10 for LLM Applications 2025”, OWASP,(2024/11)
http://genai.owasp.org/resource/owasp-top-10-for-llm-applications-2025/
AXIES ランチョンセッション発表
共同実証実験の内容について、大学 ICT 推進協議会 (AXIES:Academic eXchange for Information Environment and Strategy) 2024 年度年次大会のランチョンセッションにて、広島大学情報メディア教育研究センター 准教授 渡邉先生、NetApp 保村氏が発表しました。当日は 119 名の方にご参加いただき、事前に構築した生成 AI アプリケーションの動作についてもデモ動画にてご紹介しました。
ご参加いただいた皆様からは、「来る AI 時代に向けて学内のデータをどのように活用すればいいか検討しており大変参考になった」、また「AI の活用ももちろんであるが、学内のデータをいかに守るかというセキュリティの観点からも話を聞けたのは良かった」という声をいただきました。
クラウドサービス利用シンポジウム ハンズオン実施
広島大学様との 共同実証実験で開発したソリューションについて、構築・利用を体験するためのハンズオンコンテンツを NetApp、AWS 両社で作成しました。
作成したハンズオンコンテンツは、2025/3/13 (木) 開催「大学等におけるクラウドサービス利用シンポジウム2025」のハンズオンセミナー「こんなに簡単にできるハイブリッド生成AIインフラ!- 広島大学×NetApp×AWSが考える生成AI環境をつくって、さわってみよう」にて提供しました。当日は 14 名の方が参加し、ハンズオンを完走いただきました。参加者からは「学内のオンプレ環境で実装する際の参考にさせて頂きます。ありがとうございました!」「オンプレミス側のハンズオンが含まれているのが非常に良かったです。引き続きハイブリッド構成による生成 AI 利活用についてディスカッション及び協業させて頂きたいです。」といった声をいただいています。
2 社共同でのソリューション開発・ハンズオンコンテンツ作成にあたって、AWS Prototyping Program と AWS CDK トレーニングを NetApp に提供しました。
ソリューション概要
実証実験で使用されたソリューションは、「HAQM Bedrock と HAQM FSx for NetApp ONTAP を使用して AWS で RAG ベースの生成 AI アプリケーションを構築する」で解説されているソリューションをベースとしています。このオリジナルのソリューションは、生成 AI を実現するための複数の基盤モデル (FM) を提供する HAQM Bedrock や、ONTAP の一般的なデータアクセスおよび管理機能を AWS で提供する FSx for ONTAP から構成されます。また、多くの生成 AI アプリケーションで利用される Retrieval Augmented Generation (RAG) を実現する機能を埋め込んでおり、実践的な生成 AI の利用を支援します。オリジナルのソリューションについて、詳細はこちらの記事をご参照ください。
実証実験では、より簡単にオンプレミスのデータを AWS と連携し、AWS 上に生成 AI を使ったデータ分析の機能を実装するために、オリジナルのソリューションに加えて以下のカスタマイズを行いました。
- オンプレミスと AWS のデータ連携実装
- AWS Cloud Development Kit (AWS CDK) による Infrastructure as a Code (IaC) 化
この 2 点について、それぞれご紹介します。
オンプレミスと AWS のデータ連携実装
実証実験、ハンズオン実施環境については、オンプレミス NetApp ONTAP と FSx for ONTAP を ONTAP のキャッシュ連携機能である FlexCache を利用して接続することにより、オンプレミスに格納しているデータを AWS 上の FSx for ONTAP、ナレッジ DB、生成 AI チャットボットアプリケーション から利用できるようにしています。
AWS CDK による Infrastructure as a Code (IaC) 化
- Architecture
本ソリューションは、オリジナルのソリューションを基にセキュリティ、拡張性、UI 観点でアーキテクチャやコンポーネントを変更しています。なお、Embedding Container による、Vector Embeddings とメタデータ (SID など) を Vector Store に保存するといったコア機能は変更していません。Vector Embeddings に関するフローに関しては、こちらの記事をご確認ください。
- Terraform から AWS CDK へ変更
- 学習コストを抑え、使い慣れたプログラミング言語 (今回は TypeScript) で AWS のインフラを定義する観点で、AWS CDK in TypeScript で定義しています。
- セキュリティ機能の追加
- 生成 AI チャットボットアプリケーションへのアクセス制限として、AWS Web Application Firewall (AWS WAF) と HAQM CloudFront をフロントエンドの前段に配置しています。
- HAQM Cognito を利用したユーザー認証と認証画面を追加実装しています。
- 生成 AI チャットボットアプリケーションの変更
- フロントエンドの言語も AWS CDK と同じ TypeScript に統一する観点から、React のフレームワークである Next.js でフロントエンドを実装しています。
- オリジナルのソリューションではフロントエンドを HAQM Elastic Compute Cloud (HAQM EC2) 上で稼働していましたが、本ソリューションでは AWS Lambda Web Adaptor を利用して AWS Lambda 上で稼働させています。
- RAG による回答に加え、回答生成に利用したドキュメントソースとコンテンツを チャット画面で確認できるよう変更しています。
- Embedding Container と Chatbot Container の分離
- オリジナルのソリューションでは、同一 HAQM EC2 上で両 Container が稼働していましたが、ビジネスロジック観点で稼働環境を分離しています。Embedding Container は HAQM EC2、Chatbot Container は前述のように AWS Lambda 上で稼働させています。
- 生成 AI モデルの追加
- Claude モデルに加え、HAQM Nova (Micro, Lite and Pro) を追加しました。コスト、レイテンシーなどの要件に応じてチャット画面からモデル選択が可能です。
- HAQM Bedrock のスループット向上のため、クロスリージョン推論をサポートしました。
- Vector Store の選択
- オリジナルのソリューションでは Vector Store として HAQM OpenSearch Serverless がデプロイされますが、本ソリューションでは HAQM Aurora Serverless v2 も選択できます。ユースーケースに応じてコードベースで変更可能です。
まとめ
データ保管は従来のまま、生成 AI を使ってデータを活用するためのソリューションについてご紹介しました。データの移動が困難な状況や、セキュリティや管理の観点でデータの保管場所を変更できない状況で、最先端の生成 AI 機能を利用する場合にご活用いただけます。
広島大学様との共同実証実験でもその有用性が期待され、オンプレミスの NetApp ONTAP と FSx for ONTAP の利用により、シームレスなデータ連携を実現するソリューションを NetApp と AWS の両社で開発しました。このソリューションは AWS CDK によってコードで定義されているため、AWS アカウントがあればどなたでも環境構築が可能です。コードは以下の GitHub リポジトリで公開されていますので、デプロイ方法などの詳細は以下をご確認ください。
NetAppJpTechTeam/Permission-aware-RAG-FSxN-CDK:
http://github.com/NetAppJpTechTeam/Permission-aware-RAG-FSxN-CDK/
また、このソリューションの構築・利用を体験するためのハンズオンコンテンツも作成しています。ソリューションのデプロイに関するお問い合わせや、ハンズオンのご要望などがありましたら、以下のメールアドレスまでご連絡をお願いいたします。
本ソリューションに関するお問い合わせ (NetApp):
ng-genai-japan-awsteam@netapp.com
参考ブログ
- ランサムウェア被害から医療データの安全を守る
- サイバーレジリエンシーブログ: