Amazon Web Services ブログ
株式会社オズビジョン様の AWS 生成 AI 事例 : Amazon Bedrock と Amazon Aurora によるポイント対象広告検索機能
本ブログは、株式会社オズビジョンと Amazon Web Services Japan が共同で執筆しました。
この事例の内容を含む、AWS Summit Japan 2024にてハピタスの生成AI活用の取り組みが紹介されました_後編 も公開されています。あわせてご覧ください。また、2024年7月24日 の JAWS UG でも本事例で登壇いたしました。
株式会社オズビジョンは、「Be a big fan」というミッションを掲げ、あらゆる EC 利用でポイントがダブルで貯まる日本最大級のポイントモール「ハピタス」を運用しています。ネットショッピングや旅行予約などをする際に本ポイントモールを経由することでポイントを貯めることができます。
一方で、ユーザーが多くのポイント対象広告から購入したいサービスや商品を検索する際、ユーザーにとって望ましい広告がヒットせず、ユーザーの離脱に課題がありました。加えて、検索する際に、特定の広告を検索する「指名検索」がほとんどを占め、関連度の高い広告をヒットさせづらい状況がありました。
このような課題を解決するため、ユーザーの検索ワードから語句の意味を解釈し、あいまいな検索ができるセマンティックサーチ機能を実装しました。この機能で、ユーザーにとってより望ましい広告をヒットさせて検索体験を向上させることができます。本ブログでは、ベクトル検索を導入した事例について紹介いたします。
課題
ハピタスでは、数多くあるポイント対象広告から購入したいサービスや商品を探すにあたり、ユーザーにとって望ましい検索結果とならないことがありました。例えば、「ANA」と検索した際に、「Banana」が検索結果となるようなケースです。
ユーザーの求めていない検索結果が表示されてしまうことで、コンバージョンレートが低下します。また、「指名検索」で特定のポイント対象広告を検索するため、指名検索した結果以外が表示されにくいという課題がありました。
ソリューション
株式会社オズビジョンでは、これら二つの課題を解決するため、意味的な検索ができるセマンティックサーチ機能の導入を検討しました。セマンティックサーチ機能は Amazon Bedrock と Amazon Aurora を使用したベクトル検索で実現しました。
- Amazon Bedrock では、検索対象の広告/ユーザーからの検索ワードをベクトル化する Embeddings Model を使用
- Amazon Aurora では、PostgreSQL 互換の DB エンジンを使用し、拡張機能の pgvector を用いて ベクトル DB として使用
セマンティックサーチを実現するために、2 つのステップを行っています。
- データ登録・更新: 検索対象の広告データを Embeddings Model でベクトル化して Amazon Aurora PostgreSQL に格納
- 広告データは頻繁に更新されるため、広告データは更新タイミングで適宜ベクトル化を行う
- データ検索: 検索時、ユーザからの入力をベクトル化し、Amazon Aurora PostgreSQL からベクトル検索をしてデータを取得
- 最新データの Amazon Aurora MySQL を元に情報のフィルタリング・補完を行い、検索結果をユーザに返却
AWS Lambda はユーザからのデータの検索 API、AWS Fargate はベクトル DB の更新の為の APIとし、データの登録・更新と検索を行っています。
導入効果
ベクトル検索を用いたセマンティックサーチ機能の導入により、特定のサービスや商品などを決めずに広告を検索するユーザーに対して、より関連度の高い検索結果を返すことができるようになりました。また、セマンティックサーチ機能により「指名検索」するユーザーに対して検索キーワードに関連する結果を新たに提示できるようになりました。
今後の展望
機能をリリースして終わりにせず、改善を繰り返していくことを意識しています。
リリース後、2週間の計測において検索全体の利用割合を確認したところ、既存の検索と比較しベクトル検索の利用者が 1% ほどでした。
そのため、デフォルトの検索を「ベクトル検索と既存検索」の半々とした AB テストを実施し、PDCA サイクルを回して効果計測を行っています。
また、機能拡張として、広告データから生成 AI に検索タグを生成させ、検索精度をさらに向上させることを考えています。
まとめ
本ブログでは、株式会社オズビジョン による Amazon Bedrock を活用した セマンティックサーチ機能の実現事例について紹介しました。セマンティックサーチ機能により、検索キーワードと関連度の高い結果を返すこと・「指名検索」された検索キーワードに対して、関連する検索結果を新たに提示ができるようになりました。
ソリューションアーキテクト 鈴木 大樹