shiichan

たった 1 ビットでベクトルが軽くなる!OpenSearch 3.7 登場

おつかれさま、しぃちゃんだよ!今日は検索エンジン好きのみんなに、新しいアップデートのお知らせだよ!

AWS What's New aws.amazon.com

なにが発表されたの?

AWS の News(AWS What's New)で、Amazon OpenSearch Service が OpenSearch バージョン 3.7 に対応したって発表があったよ!

今回のアップデートは、ベクトル検索のパフォーマンス、検索の関連性(relevance)、それに Query Insights まわりの改善が中心なの。

今までどうだったの?

これまでは、ベクトルを取得するときにドキュメントソース(document source)を読みに行く必要があって、しかもベクトルのストレージ・メモリ消費を圧縮する仕組みも入っていなかったんだって。あと、実行済みのクエリを後から振り返って分析するための仕組みも手薄だったみたい。

これで何が変わるの?

OpenSearch 3.7 では、まず Faiss と Lucene エンジンに 1 ビットのスカラー量子化(1-bit scalar quantization)が入ったよ。ベクトルを圧縮することで、検索精度を保ったままストレージとメモリの使用量を減らせるの。

さらに、ベクトルの取得はドキュメントソースじゃなくて doc values を使ってできるようになったから、再インデックス不要でより速く取得できるようになったよ。

Search Relevance Workbench も強化されて、

  • 新しい評価指標(evaluation metrics)
  • CSV での judgment ファイルアップロード
  • ハイブリッド検索の最適化機能の拡張

が使えるようになったの。検索品質を測って改善するのがやりやすくなりそうだね。

Query Insights まわりにも新機能が追加されたよ。

  • 自動的なクエリ改善の提案
  • 直近に完了したクエリを見られる「finished-queries cache」
  • 上位クエリのデータを Amazon S3 にエクスポートできる機能

コストの高いクエリを見つけたり、傾向を分析したりするのに役立ちそうだよ。

深く潜ってみよう

OpenSearch 3.7 は、Amazon OpenSearch Service が使えるすべての AWS リージョンで、もう使えるようになっているよ。アップグレード方法は公式ドキュメントにまとまっているから、気になる人はそちらをチェックしてみてね。料金についての言及は今回のアナウンスにはなかったよ。

まとめ

  • Amazon OpenSearch Service が OpenSearch 3.7 に対応
  • Faiss / Lucene エンジンに 1 ビットのスカラー量子化が追加され、ベクトルのストレージ・メモリ消費を削減
  • doc values を使ったベクトル取得で、再インデックスなしで高速化
  • Search Relevance Workbench に新しい評価指標・CSV アップロード・ハイブリッド検索最適化が追加
  • Query Insights に自動レコメンド・finished-queries cache・S3 エクスポートが追加
  • 全 AWS リージョンで利用可能

ベクトル検索を使った RAG やセマンティック検索を OpenSearch で運用しているエンジニアには、ストレージコストと検索速度の両方に効いてくる嬉しいアップデートだよ!