小売とマーケットプレイス
「こちらもおすすめ」の欄は、類似商品と今売れているものを組み合わせ、1回のセッションで同じアイテムを二度表示しません。
1回の読み取りで済むパーソナルなレコメンデーション。ユーザー特徴量、ベクトルによる類似アイテム、トレンドを組み合わせ、閲覧済みのものを除きます。
Top-KリストはTOPK.RESERVEで一度作成してあります。閲覧のたびに更新され、上位から外れたアイテムが報告されます。
実際のHotKVコマンドと応答例を使ったアニメーションのウォークスルーです。任意のステップをクリックすると、そこに移動します。 コマンドと応答は、HotKVで実際に入力し表示されるとおり英語のままです。
良いレコメンデーションは、ユーザーが誰か、気に入ったものに似ているのは何か、今何が人気か、すでに何を見たかを組み合わせます。これらのシグナルは通常4つのシステムに分かれており、リクエストのたびにつなぎ合わせると、すべてのページにレイテンシが加わります。
HotKVは4つすべてを保持します。フィーチャーストアにはユーザーのプロフィールがあり、ベクトルインデックスが類似アイテムを見つけ、Top-K構造がイベントの到着に合わせてトレンドを追跡し、ユーザーごとのBloomフィルターが閲覧済みのアイテムを除きます。レコメンダーは、これらすべてを1台のサーバーから数回の呼び出しで読み取ります。
Top-KリストはTOPK.RESERVEで一度作成してあります。閲覧のたびに更新され、上位から外れたアイテムが報告されます。
TOPK.ADD trending:shoes sku:88 sku:17 sku:88ランキングモデル用のプロフィールと行動の特徴量を、その経過時間とともに読み込みます。
FEATURE.GET user_features user:42ユーザーの好みのベクトルから、最も近い商品を見つけます。
VSIM.SEARCH items 20 0.31 0.12 0.77 ...ユーザーごとのBloomフィルターが、候補リスト全体について「以前に見たか」を1回の呼び出しで答えます。
BF.MEXISTS seen:user:42 sku:88 sku:5 sku:17現在の売れ筋が候補に加わり、ランキングモデルが最終的なリストを並べます。
TOPK.LIST trending:shoes WITHCOUNT表示したアイテムはユーザーのフィルターに追加されるため、翌日に繰り返し表示されることはありません。
BF.MADD seen:user:42 sku:5 sku:17「こちらもおすすめ」の欄は、類似商品と今売れているものを組み合わせ、1回のセッションで同じアイテムを二度表示しません。
ホーム画面は、好みのベクトルとリアルタイムの人気で番組を並べ、視聴者が見終えたタイトルを除外します。
記事はトピックの類似性でおすすめされ、トレンドの記事はリアルタイムで上位に上がります。
ユーザーやアイテムごとの型付き特徴量を、推論時に低レイテンシで読み取れます。
FEATURE.GETFEATURE.BATCHHNSWベクトルインデックスによる最近傍探索です。
VSIM.SEARCHTop-Kが、イベントのストリームで最も頻繁に現れるアイテムを保持します。
TOPK.ADDTOPK.LISTBloomフィルターが、ユーザーごとに一定のメモリで「以前に見たか」に答えます。
BF.MADDBF.MEXISTSBF.RESERVEで選んだ誤り率で、見ていないアイテムを見たと判定することがまれにあります。見たアイテムを見ていないと判定することはありません。
お客様自身のサービスで動きます。HotKVは特徴量と候補を低レイテンシで提供し、最終的な順序はお客様のモデルが決めます。
フィーチャーストアは、PerformanceプランとScaleプランに含まれます。ベクトル検索、Top-K、Bloomフィルターはすべてのプランで動作します。
HotKVはRedisプロトコルに対応しているため、既存のクライアントを向けるだけで、これらと同じコマンドを実行できます。