yu-tarrrrの日記

完全に個人の趣味でその時々書きたいことを書く

Amazon Kendraの考察

Amazon Kendraとは

aws.amazon.com

エンタープライズ検索エンジン なんですよね

勘違いしてたんですけど、単純なベクトル検索エンジンとは全く違うという

ベクトル検索エンジンではあるのですが、その強みは以下の通りである

  • 豊富なコネクタが用意されており、複数のデータリソースが存在する場合に強みを発揮する
  • Kendra自体に検索UIが用意されており、自然言語での検索が可能である
  • 多様なファイル形式をサポートしており、いい感じに取り込める
  • 単純なキーワード検索ではなく、コンテキストを理解した検索が可能

豊富なコネクタ

aws.amazon.com

ここにある通り、Jira, Confluence, Microsoft製品などなど、さまざまなものが用意されており、API keyの払い出しさえできれば、UIから設定が可能。

こういうものがないと、自前でS3にアップロードするためにlambdaをかいて、Batch実行するみたいな設定をしないといけないので、なんとも便利。

Kendra 検索UI

docs.aws.amazon.com

AWS Consoleから検索可能。chatbotなどを作るときは、API経由で問い合わせて、結果をAIになげて集約させるが、素の検索結果をコンソールから確認することも可能。

サポートしてるファイル形式

docs.aws.amazon.com

ここにある通り、だいたいの形式のデータを取り込むことが可能。 注意したいのが、形式によって構造化データになるのか、非構造化データになるのかが異なるので理解した上で使えると良さそう。 PDFなども読み込めるので、自前でOCRなどを経由させる必要がないので、ありがたい。

ベクトル検索

www.elastic.co

キーワード検索だと、構造化データであれば精度がでるが、非構造化データの場合は精度が出にくい。 そこで、非構造化データから意味やコンテキストを取り込み、ベクトルとして検索インデックスに取り込み、近似近傍アルゴリズムを使用して検索することで、より精度の高い結果を導き出す。

Pricing

Amazon Kendra の料金 - アマゾン ウェブ サービス

月額15万 ~ という感じではあるが、フルマネージドである点やこれだけのサポート充実っぷりをみると、むしろ安いのでは?感がある。 エンタープライズ検索エンジンの名の通り、値段が高い分、充実したサポートは受けられて、昨今話題の生成系AIを用いたchatbot開発などへの障壁を下げるのに一役買ってくれそうな印象