最新の e コマースの検索バーは、単なる入力欄ではありません。これは、ユーザーがテキストの入力を完了する前に、適切な商品にユーザーを誘導するインタラクティブな動的アシスタントです。この検索候補表示(SAYT)機能では、検索語句の候補、人気のブランド、関連性の高いカテゴリ、さらには上位の検索結果がリアルタイムで表示されるため、ユーザー エンゲージメントが向上し、コンバージョンにつながる可能性が高まります。
Vertex AI Search for commerce は、クエリの自動補完と商品検索に個別の API を提供しますが、SAYT ユーザー エクスペリエンスの最終的な実装は意図的にオープンエンドにしています。
Vertex AI Search for Commerce を使用した構築に関するこのガイドでは、Vertex AI Search for Commerce API を使用して堅牢な SAYT ウィジェットを実装するための 2 つの主要な設計パターンについて説明し、各アプローチのトレードオフについて詳しく説明します。
コア コンポーネントを理解する
包括的な SAYT 機能を構築するには、Vertex AI Search for Commerce が提供する次の 2 つの基本的な API を理解する必要があります。
CompleteQuery
API: 予測入力候補の背後にある機能です。- 機能: lipst などの入力文字列を指定すると、lipstick や lip gloss などのクエリ候補の補完リスト、関連する人気ブランド、関連カテゴリが返されます。
- 費用: この API は、Vertex AI Search for Commerce パッケージの料金に含まれています。
- パフォーマンス: キーストロークごとに必要な迅速で低レイテンシのレスポンスを実現するように設計された、高スループットの API です。この機能では、スペル修正や候補など、結果を出すように設計された自動学習機能が活用されます。これらの機能は、ストアの毎日の検索イベントに基づいてトレーニングされています。
Search
API:これは、コアの商品検出エンジンです。- 関数:指定されたクエリに対して、関連性の高い商品結果のランク付けされたリストを返します。
- 費用:これは有料 API であり、その使用量は運用費用に直接影響します。
- イベント: モデルのトレーニングと分析では、ユーザーの行動をトラッキングし、関連性モデルを継続的に改善するために、各
Search
API 呼び出しを検索イベントとペアにするのが理想的です。
SAYT エクスペリエンスを作成するには、これらの API を両方呼び出し、その結果を 1 つのまとまりのあるユーザー インターフェースに統合するラッパー API またはフロントエンド ロジックを記述する必要があります。
実装パターン 1: 直接的だがコストの高いアプローチ
これは最も簡単な実装方法です。このロジックでは、キー入力ごとに CompleteQuery
API と Search
API の両方に並列呼び出しを行います。
フロー
フローは次の順序で実行されます。
- ユーザーが l などの文字を入力します。
- アプリケーションは l を
CompleteQuery
API に送信します。 - 同時に、アプリケーションは
Search
API に l を送信します。 - 結果が結合されて表示されます。
- ユーザーが別の文字(l)を入力し、クエリが li になります。
- 新しいクエリ li. についてもこのプロセスが繰り返されます。
利点
メリットとしては、実装が高速であるため、ログをすばやく記述してデプロイできることが挙げられます。
欠点
Search
API の量が多い: このアプローチでは、Search
API 呼び出しの数が大幅に増加します。「lipstick」のようなクエリは、8 つの個別の検索リクエストをトリガーするため、ボリュームが大幅に増加します。- コストの増加:
Search
API は有料サービスであるため、この大量のデータは運用コストの増加に直接つながり、投資収益率(ROI)をプラスにすることが難しくなります。 - イベント管理の複雑さ: 正確なモデル トレーニングと測定を行うには、すべての
Search
API 呼び出しを対応する検索イベントとともにログに記録する必要があります。呼び出しの量が多いと、すべてのイベントをキャプチャすることが難しくなり、データの損失や分析の偏りにつながる可能性があります。 - 結果の品質が低下する可能性がある: l、li などの 1 文字または 2 文字の検索では、ノイズの多い結果や広すぎる結果が返される可能性があり、関連性の低い初期エクスペリエンスにつながる可能性があります。
実装パターン 2: 最適化された推奨アプローチ
このパターンでは、CompleteQuery
API を使用して Search
API を呼び出すタイミングをインテリジェントに決定することで、費用、パフォーマンス、関連性を最適化します。
フロー
フローは次の順序で実行されます。
- ユーザーが「lip.」などの部分的なテキストクエリを入力します。
- アプリケーションは lip を
CompleteQuery
API に送信します。 - API は候補のリストを返します。リップスティックが最初の結果になる可能性が高くなります。
- アプリケーションは最初の候補 (lipstick)を取得し、その用語を使用して
Search
API を 1 回呼び出します。 - 「口紅」の予測入力の候補と商品結果が表示されます。
- ユーザーが lips、lipst、... と入力し続けると、最初のオートコンプリート候補が変更された場合にのみ新しい検索呼び出しを行うロジックを追加できます。
利点
- 大幅なコスト削減:
Search
API 呼び出しの数を大幅に削減することで、コストを抑えることができます。 - 制御された API とイベントの量: API とイベントの量を管理および予測できるため、モデルのトレーニングと分析の信頼性の高いデータを確保できます。
- 関連性の向上: より完全で可能性の高い語句を検索するため、SAYT ウィジェットでより質の高い商品結果が表示されます。
- ROI の向上: コストの削減とユーザー エクスペリエンスの向上により、投資収益率が向上します。
エッジケースの処理
この方法は優れていますが、いくつかのコーナー ケースを処理する必要があります。
- 候補がない:
CompleteQuery
API が候補を返さない場合、ロジックはユーザーの未加工の入力を使用してSearch
API を呼び出すようにフォールバックする必要があります。 - 部分的なクエリと候補のクエリ: まれに、ユーザーが上位の候補(「アイシャドウ」)ではなく、部分的な語句(「アイ」)の検索結果を求めている場合があります。これはわずかなトレードオフですが、最適化されたアプローチでは、ユーザーの意図が最も高い可能性のあるものが優先されます。
テスト ID で成果を測定する
実装方法にかかわらず、メインの検索結果ページとは別に SAYT ウィジェットのパフォーマンスを測定することが重要です。両方に同じトラッキングを使用すると、SAYT 機能がクリック率とコンバージョン率の向上に本当に貢献しているかどうかを判断できなくなります。
SAYT ウィジェットのクリック率とコンバージョン率を測定するには、検索イベントで個別の experimentIds
を使用して、これらの指標をメインの検索イベントの指標と区別します。
- SAYT イベント: 入力候補表示機能から発生したすべての検索イベントに、
"experimentId": "sayt-widget"
などの特定の ID を割り当てます。 - メイン検索イベント: ユーザーが Enter キーを押すか、[検索] をクリックしてメインの検索結果ページに移動したときに開始される検索には、別の ID(または ID なし)を使用します。
このようにイベントをセグメント化すると、Vertex AI コンソールのアナリティクス ダッシュボードを使用して、SAYT ウィジェットのパフォーマンスを標準の検索エクスペリエンスと比較してフィルタリングし、明確で実用的な分析情報を得ることができます。
まとめ
Vertex AI Search for Commerce は、入力中の検索エクスペリエンスを作成するためのコンポーネントを提供します。CompleteQuery
API と Search
API 間のインタラクションを設計するアーキテクトとして、ユーザー エクスペリエンスとパフォーマンスの橋渡しとなる検索機能を構築できます。ほとんどのユースケースでは、最適化されたアプローチにより、コンピューティング負荷の高いオペレーションを回避しながら、ユーザーに関連性の高いエクスペリエンスを提供できます。