インテリジェント検索 - Amazon Kendra で社内ナレッジを横断検索する

Amazon Kendra を使ったエンタープライズ検索の構築を解説。自然言語クエリ、データソースコネクタ、RAG (検索拡張生成) との統合、OpenSearch との使い分けを紹介します。

エンタープライズ検索の課題と Kendra の位置づけ

企業内のナレッジは S3、SharePoint、Confluence、社内 Wiki、FAQ サイト、データベースなど多数のシステムに分散しています。従来のキーワード検索では、ユーザーが適切な検索語を知っている必要があり、「有給休暇の申請方法は?」のような自然言語の質問には対応できません。Amazon Kendra は ML ベースのインテリジェント検索サービスで、自然言語の質問を理解し、文書から直接回答を抽出して返します。たとえば「新入社員の健康診断はいつまでに受ける必要がありますか」という質問に対し、社内規定の PDF から該当箇所を特定して回答を提示します。OpenSearch (Elasticsearch ベース) が転置インデックスによるキーワードマッチングと集計・分析に強みを持つのに対し、Kendra は自然言語理解 (NLU) と機械学習による意味的な検索に特化しています。技術者がログ分析やメトリクス検索に使う OpenSearch と、非エンジニアのビジネスユーザーが社内ナレッジを検索する Kendra は、補完的な関係にあります。

この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。

データソースコネクタとインデックス構築

Kendra は 40 以上のデータソースコネクタを標準提供しており、主要なデータソースとの接続がノーコードで完了します。S3 (PDF、Word、HTML、テキスト)、RDS/Aurora (データベースのテキストカラム)、SharePoint Online、Confluence、Salesforce、ServiceNow、Google Drive、OneDrive、Slack、GitHub などに対応しています。カスタムコネクタ API を使えば、独自のデータソースも統合できます。データソースの同期はスケジュール設定 (毎時、毎日、毎週) で自動実行され、新規・更新・削除された文書がインデックスに反映されます。ACL (アクセス制御リスト) をデータソースから自動取得する機能により、SharePoint や Confluence のアクセス権限がそのまま Kendra の検索結果に反映されます。ユーザー A が閲覧権限を持たない文書は、検索結果に表示されません。この透過的なアクセス制御は、セキュリティ要件の厳しいエンタープライズ環境で重要な機能です。

検索機能と RAG 統合

Kendra の検索結果は 3 つのタイプで返されます。Suggested Answer は文書から抽出した直接的な回答で、該当箇所がハイライト表示されます。FAQ Answer は事前登録した FAQ データベースからの回答です。Document は関連度の高い文書のリストで、従来の検索結果に相当します。検索のチューニングでは、フィールドのブースト (特定のメタデータフィールドの重み付け)、ファセット検索 (カテゴリ、日付、著者でのフィルタリング)、同義語辞書 (シソーラス) の登録が可能です。Kendra は Bedrock の RAG (Retrieval-Augmented Generation) パターンにおけるリトリーバーとして活用できます。ユーザーの質問に対して Kendra が関連文書を検索し、その文書をコンテキストとして Bedrock の LLM に渡すことで、社内ナレッジに基づいた正確な回答を生成できます。Kendra の高精度な検索結果が RAG の回答品質を直接的に向上させます。

料金とエディションの選択

Kendra は Developer Edition と Enterprise Edition の 2 つのエディションを提供します。Developer Edition は 1 時間あたり 1.125 USD (約 810 USD/月) で、最大 5 インデックス、40,000 文書、1 日あたり 4,000 クエリに対応します。開発・検証環境や小規模な社内検索に適しています。Enterprise Edition は 1 時間あたり 1.40 USD (約 1,008 USD/月) で、最大 5 インデックス、500,000 文書、1 日あたり 8,000 クエリに対応し、高可用性 (マルチ AZ) も提供されます。追加のドキュメントストレージやクエリ容量はオンデマンドで追加購入できます。コストを抑えるには、インデックスの使用時間を制御する (夜間・休日は停止する) アプローチも有効です。OpenSearch Serverless と比較すると、Kendra は自然言語検索の精度で優れますが、コストは高めです。検索対象が構造化されたログデータなら OpenSearch、非構造化の社内文書なら Kendra という使い分けが合理的です。

さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。

まとめ - Kendra の活用指針

Amazon Kendra は、ML ベースの自然言語理解で社内ナレッジを横断検索するインテリジェント検索サービスです。40 以上のデータソースコネクタ、ACL による透過的なアクセス制御、FAQ 機能、Bedrock との RAG 統合が主な強みです。社内ヘルプデスクの問い合わせ削減、ナレッジマネジメントの効率化、カスタマーサポートの回答品質向上など、情報検索が業務のボトルネックになっている場面で効果を発揮します。Developer Edition で小規模に始め、効果を検証してから Enterprise Edition にスケールアップするアプローチを推奨します。

AWS の優位点

  • 自然言語の質問に対して文書から直接回答を抽出する ML ベースの検索エンジンで、キーワード検索では見つからない情報を発見
  • S3・RDS・SharePoint・Confluence・Salesforce・Google Drive など 40 以上のデータソースコネクタを標準提供
  • FAQ 機能で定型的な質問と回答のペアを登録でき、社内ヘルプデスクの問い合わせ削減に直結
  • アクセス制御リスト (ACL) をデータソースから自動取得し、ユーザーごとに閲覧権限のある文書のみを検索結果に表示
  • Bedrock の RAG (Retrieval-Augmented Generation) パターンのリトリーバーとして活用でき、生成 AI の回答精度を向上
  • Developer Edition (最大 5 インデックス、40,000 文書) は 1 時間あたり 1.125 USD、Enterprise Edition は 1 時間あたり 1.40 USD
  • OpenSearch が全文検索・ログ分析に強みを持つのに対し、Kendra は自然言語理解と回答抽出に特化しており、非エンジニアのエンドユーザーが直感的に使える

同じテーマの記事

AWS Batch で実行する GPU ベースの機械学習トレーニング - コスト効率の高い大規模学習 AWS Batch の GPU インスタンスを活用した機械学習トレーニング、スポットインスタンスによるコスト削減、SageMaker との使い分けを解説します。 Amazon Bedrock Knowledge Bases で構築する RAG アプリケーション - 検索拡張生成の実装 Bedrock Knowledge Bases による RAG パターンの実装、データソースの設定、チャンキング戦略、Guardrails との統合を解説します。 Amazon Braket で始める量子コンピューティング - 量子回路の設計とシミュレーション Amazon Braket による量子回路の設計、ローカルシミュレーション、量子ハードウェアでの実行、ハイブリッドジョブの活用法を解説します。 AWS Clean Rooms ML でプライバシー保護型 ML - データを共有せずにモデルを構築 Clean Rooms ML によるルックアライクモデルの構築、差分プライバシーの適用、広告ターゲティングへの活用を解説します。 Amazon Comprehend で実装する自然言語処理 - 感情分析とエンティティ抽出の活用 Comprehend による感情分析、エンティティ抽出、カスタム分類モデルの構築を解説します。 対話型ボット構築 - Amazon Lex と Polly で実現する自然な会話インターフェース Amazon Lex と Amazon Polly を活用した対話型ボットの構築方法を解説します。 需要予測 - Amazon Forecast で時系列データから将来を予測する Amazon Forecast を使った時系列データの需要予測を解説。AutoML による自動モデル選択、関連データの活用、予測精度の評価、小売・在庫管理への応用を紹介します。 ドキュメントテキスト抽出 - Amazon Textract で実現するインテリジェントな文書処理 Amazon Textract による文書からのテキスト、テーブル、フォームデータの自動抽出と、Amazon Comprehend との連携による自然言語処理パイプラインの構築を解説します。請求書処理や契約書分析の自動化パターンを紹介します。 エッジコンピュータビジョン - AWS Panorama でカメラ映像を現場で AI 分析する AWS Panorama を使ったエッジでのコンピュータビジョン分析を解説。Panorama Appliance、ML モデルのエッジデプロイ、リアルタイム映像分析のユースケースを紹介します。 Amazon Forecast で実現する需要予測 - 時系列データの取り込みと予測精度の向上 Forecast による時系列予測モデルの構築、関連データの活用、予測結果のエクスポートを解説します。 生成 AI プラットフォーム - Amazon Bedrock で構築するエンタープライズ AI 基盤 Amazon Bedrock を活用した生成 AI アプリケーションの構築方法を解説します。基盤モデルの選択、RAG パターンの実装、ガードレールによる安全性確保、SageMaker との連携など、エンタープライズレベルの AI 基盤設計を紹介します。 医療データレイク - Amazon HealthLake で FHIR 準拠の医療データを管理・分析する Amazon HealthLake を使った FHIR 準拠の医療データ管理を解説。構造化・非構造化医療データの統合、NLP による自動抽出、分析クエリ、HIPAA 準拠を紹介します。 Amazon HealthLake で構築する医療データ分析基盤 - FHIR データの格納と ML 分析 HealthLake による FHIR データの格納、自然言語処理による医療テキスト分析、分析クエリの実行を解説します。 Amazon Kendra で構築するエンタープライズ検索 - 自然言語クエリと FAQ 自動抽出 Kendra による社内ドキュメント検索、データソースコネクタの設定、検索精度のチューニングを解説します。 Amazon Lex で構築する会話型チャットボット - インテント設計と Lambda 統合 Lex によるチャットボットの構築、インテントとスロットの設計、Lambda フルフィルメントの実装を解説します。 Amazon Lookout for Metrics で自動化する異常検知 - ビジネスメトリクスの監視と根本原因分析 Lookout for Metrics による異常検知の設定、データソース接続、根本原因のドリルダウン分析を解説します。 産業向け ML 異常検知 - Amazon Lookout シリーズと Monitron で設備異常を自動検出する Amazon Lookout for Metrics・Vision・Equipment と Amazon Monitron を使った産業向け ML 異常検知を解説。メトリクス異常、外観検査、設備振動監視の各ユースケースを紹介します。 AWS Panorama でエッジコンピュータビジョンを実現 - 既存カメラへの ML モデルデプロイ Panorama による既存 IP カメラへのコンピュータビジョンモデルのデプロイ、エッジ推論の設計を解説します。 Amazon Personalize で構築するレコメンデーションエンジン - パーソナライズの実装パターン Amazon Personalize によるレコメンデーションエンジンの構築、レシピの選定、リアルタイムパーソナライゼーションの実装パターンを解説します。 Amazon Polly で実装するテキスト読み上げ - ニューラル音声と SSML による音声制御 Polly によるテキスト読み上げの実装、ニューラル音声エンジンの活用、SSML による発音・速度・抑揚の制御を解説します。 レコメンデーションとパーソナライゼーション - Amazon Personalize で実現する個別最適化体験 Amazon Personalize による機械学習ベースのレコメンデーションエンジンの構築と、SageMaker との連携による高度なパーソナライゼーション戦略を解説します。EC サイト、メディア配信、マーケティングでの実践的な活用パターンを紹介します。 Amazon Rekognition で実装する画像・動画分析 - ラベル検出からカスタムモデルまで Amazon Rekognition の画像ラベル検出、顔分析、テキスト検出、カスタムラベルによる独自モデル構築の手法を解説します。 Amazon Rekognition で構築する動画コンテンツモデレーション - UGC プラットフォームの安全性確保 Rekognition Video API による動画のコンテンツモデレーション、顔検索、セグメント検出の実装パターンを解説します。 Amazon SageMaker Canvas でノーコード ML - ビジュアルインターフェースで予測モデルを構築 SageMaker Canvas によるノーコードでの ML モデル構築、データ準備、予測の実行を解説します。 Amazon SageMaker で構築する ML プラットフォーム - モデルの構築からデプロイまで SageMaker によるノートブック環境、モデルトレーニング、推論エンドポイントのデプロイを解説します。 音声テキスト変換 - Amazon Transcribe で実現する高精度な自動文字起こし基盤 Amazon Transcribe による音声のテキスト変換 (STT) と、Amazon Polly との組み合わせによる双方向音声処理パイプラインの構築を解説します。リアルタイム文字起こし、話者識別、カスタム語彙による精度向上の実践手法を紹介します。 テキスト分析と自然言語処理 - Amazon Comprehend で実現するインテリジェントなテキスト解析基盤 Amazon Comprehend を活用したテキスト分析と自然言語処理の実践手法を解説します。感情分析、エンティティ抽出、トピックモデリングなどの機能と、SageMaker との連携によるカスタムモデル構築を紹介します。 テキスト読み上げ - Amazon Polly で実現する自然な音声合成とマルチ言語対応 Amazon Polly によるテキスト読み上げ (TTS) の実装と、Amazon Lex との連携による音声対話インターフェースの構築方法を解説します。ニューラル音声エンジンによる自然な音声合成と多言語対応の実践手法を紹介します。 Amazon Textract でドキュメントからデータを自動抽出 - OCR、テーブル解析、フォーム認識 Textract によるドキュメントのテキスト抽出、テーブル構造の解析、フォームのキー・バリュー抽出を解説します。 Amazon Textract で自動化するドキュメント処理 - OCR からフォーム・テーブル抽出まで Amazon Textract によるドキュメントの OCR、フォームのキー・バリュー抽出、テーブル構造の認識、請求書・領収書の自動処理を解説します。 Amazon Transcribe で実装する音声文字起こし - リアルタイム変換とカスタム語彙 Amazon Transcribe によるバッチ・リアルタイムの音声文字起こし、カスタム語彙による精度向上、Call Analytics の活用法を解説します。 Amazon Translate で実装する多言語対応 - リアルタイム翻訳とカスタム用語集 Translate によるリアルタイム翻訳、カスタム用語集による翻訳品質の向上、バッチ翻訳の活用を解説します。