サイトアイコン 協栄情報ブログ

Amazon Bedrock を基盤とした社内 RAG アプリケーション「RagChat」のアーキテクチャ設計

こんにちは。

企業の業務において、蓄積された社内ナレッジ(マニュアル、手順書、過去の対応記録など)をいかに効率的に活用するかは、多くの組織が直面する共通の課題です。これらを解決する強力なソリューションとして、生成 AI を活用した RAG(Retrieval-Augmented Generation) が注目されています。

今回は、私が主導して開発した社内 RAG アプリケーション 「RagChat」 の技術スタックと、エンタープライズ利用に耐えうる設計のポイントについて、解説します。

最初に

生成AIを活用した社内データ活用サービス 「RagChat」 は、RAG技術(検索拡張生成)を備えた生成AIによる、社内データの有効活用を支援するサービスです。

AIとの自然なチャットを通じて、社内規定や商品情報の検索、過去事例の参照などを効率化いただけます。

【RagChat公式サイト】
https://ragchat.jp/

【サービス紹介資料】
https://download.cpinfo.jp/RagChat-v1.0.pdf


1. プロジェクトの背景と目的

従来の生成 AI 活用では「情報の属人化」や「ハルシネーション(もっともらしい嘘)」が大きな壁となっていました。
RagChat では、Amazon Bedrock をベースに社内固有のナレッジを紐付けることで、回答の根拠を明確にし、回答品質のばらつきを解消することを目的としています。

2. サーバーレス・アーキテクチャの採用

RagChat の最大の特徴は、インフラ管理を最小限に抑え、可用性とコスト最適化を両立させるために、完全サーバーレスアーキテクチャを採用している点です。

全体構成のポイント:

3. RAG パイプラインの実装:Bedrock Knowledge Bases

RAG の肝となるデータ連携部分には、Knowledge Bases for Amazon Bedrock を活用しています。

データソースとして S3 にアップロードされたドキュメント(PDF, Word, Markdown, CSV 等)を、ベクトルデータベース(Amazon OpenSearch Service / Vector Engine)に自動的に埋め込み(Embedding)を行い、セマンティック検索を可能にしています。

ここでこだわったのは、「日本語特有のニュアンスへの対応」です。日本語は分かち書きをしないため、単純なチャンキングでは文脈が途切れるリスクがあります。RagChat では、チャンクサイズの最適化や重複部分の設定を検証し、最も精度の高い検索結果が得られるパラメータを特定しました。

4. エンタープライズ向けのセキュリティ設計

社内データを扱う以上、セキュリティは最優先事項です。

独自の承認ワークフロー

設計書でも定義した通り、Cognito User Pool を使用した認証に加え、「管理者による承認フロー」を実装しています。

  1. ユーザーが新規登録。
  2. Post Confirmation トリガーで Lambda が起動し、一時的にユーザーを無効化。
  3. 管理者へ SES を通じて承認依頼メールを送信。
  4. EventBridge + CloudTrail で管理者の承認操作を検知し、ユーザーへ通知。

この「勝手にログインさせない」仕組みにより、ガバナンスを確保しています。また、すべてのデータは AWS KMS による暗号化を施し、インターネットを経由しないプライベート通信を徹底しています。

5. 開発を支える「Infrastructure as Code」

RagChat の環境構築はすべて AWS CDK でコード管理されています。
東京リージョンでの災害を想定したディザスタリカバリ(DR)も考慮し、他リージョンへ迅速に同一環境をデプロイ可能な構成にしています。DynamoDB のオンデマンドキャパシティ設定やポイントインタイムリカバリ(PITR)の有効化など、本番運用に必要な設定をテンプレート化しています。

6. 今後の展望

RagChat は現在、社内ナレッジの検索において非常に高い精度を発揮していますが、今後は Agentic Workflow の導入も検討しています。単なる「検索と回答」に留まらず、外部ツール(MCP 等)と連携してタスクを実行するエージェントへと進化させていく予定です。


結びに

今回の開発を通じて再確認したのは、AI エンジニアリングの本質はプロンプトだけでなく、それを支える堅牢なインフラ設計とデータの前処理にあるということです。
15 冠の AWS 認定エンジニアとして、今後も最新の AWS サービスを駆使し、ビジネス価値を生むプロダクトを発信していきたいと思います。

技術的な詳細や導入に関するご相談があれば、ぜひコメントやお問い合わせをお待ちしております。

モバイルバージョンを終了