AIとLLMパーソナライズPerformanceプランとScaleプラン

リアルタイムレコメンデーション

1回の読み取りで済むパーソナルなレコメンデーション。ユーザー特徴量、ベクトルによる類似アイテム、トレンドを組み合わせ、閲覧済みのものを除きます。

1台のサーバーで扱うシグナル
4
閲覧済みアイテムの再表示
0
トレンドのカウント
ライブ
ステップ 1 / 6
トレンドをカウント

Top-KリストはTOPK.RESERVEで一度作成してあります。閲覧のたびに更新され、上位から外れたアイテムが報告されます。

サンプルセッションplaying
# トレンドをカウント
hotkv> TOPK.ADD trending:shoes sku:88 sku:17 sku:88
1) (nil)
2) (nil)
3) (nil)

実際のHotKVコマンドと応答例を使ったアニメーションのウォークスルーです。任意のステップをクリックすると、そこに移動します。 コマンドと応答は、HotKVで実際に入力し表示されるとおり英語のままです。

課題

良いレコメンデーションは、ユーザーが誰か、気に入ったものに似ているのは何か、今何が人気か、すでに何を見たかを組み合わせます。これらのシグナルは通常4つのシステムに分かれており、リクエストのたびにつなぎ合わせると、すべてのページにレイテンシが加わります。

HotKVでの解決方法

HotKVは4つすべてを保持します。フィーチャーストアにはユーザーのプロフィールがあり、ベクトルインデックスが類似アイテムを見つけ、Top-K構造がイベントの到着に合わせてトレンドを追跡し、ユーザーごとのBloomフィルターが閲覧済みのアイテムを除きます。レコメンダーは、これらすべてを1台のサーバーから数回の呼び出しで読み取ります。

ステップごとに

コマンドごとに何が起きるか

  1. 01

    トレンドをカウント

    Top-KリストはTOPK.RESERVEで一度作成してあります。閲覧のたびに更新され、上位から外れたアイテムが報告されます。

    TOPK.ADD trending:shoes sku:88 sku:17 sku:88
  2. 02

    ユーザーの特徴量を読み込む

    ランキングモデル用のプロフィールと行動の特徴量を、その経過時間とともに読み込みます。

    FEATURE.GET user_features user:42
  3. 03

    類似アイテムを見つける

    ユーザーの好みのベクトルから、最も近い商品を見つけます。

    VSIM.SEARCH items 20 0.31 0.12 0.77 ...
  4. 04

    閲覧済みを除く

    ユーザーごとのBloomフィルターが、候補リスト全体について「以前に見たか」を1回の呼び出しで答えます。

    BF.MEXISTS seen:user:42 sku:88 sku:5 sku:17
  5. 05

    人気のものを加える

    現在の売れ筋が候補に加わり、ランキングモデルが最終的なリストを並べます。

    TOPK.LIST trending:shoes WITHCOUNT
  6. 06

    表示を記憶

    表示したアイテムはユーザーのフィルターに追加されるため、翌日に繰り返し表示されることはありません。

    BF.MADD seen:user:42 sku:5 sku:17
活用シーン

実際のシナリオ

小売とマーケットプレイス

「こちらもおすすめ」の欄は、類似商品と今売れているものを組み合わせ、1回のセッションで同じアイテムを二度表示しません。

メディアとストリーミング

ホーム画面は、好みのベクトルとリアルタイムの人気で番組を並べ、視聴者が見終えたタイトルを除外します。

ニュースとコンテンツフィード

記事はトピックの類似性でおすすめされ、トレンドの記事はリアルタイムで上位に上がります。

標準搭載

得られるもの

フィーチャーストア

ユーザーやアイテムごとの型付き特徴量を、推論時に低レイテンシで読み取れます。

FEATURE.GETFEATURE.BATCH

類似アイテム

HNSWベクトルインデックスによる最近傍探索です。

VSIM.SEARCH

今のトレンド

Top-Kが、イベントのストリームで最も頻繁に現れるアイテムを保持します。

TOPK.ADDTOPK.LIST

閲覧済みフィルター

Bloomフィルターが、ユーザーごとに一定のメモリで「以前に見たか」に答えます。

BF.MADDBF.MEXISTS

よくある質問

Bloomフィルターが間違えることはありますか?

BF.RESERVEで選んだ誤り率で、見ていないアイテムを見たと判定することがまれにあります。見たアイテムを見ていないと判定することはありません。

ランキングモデルはどこで動きますか?

お客様自身のサービスで動きます。HotKVは特徴量と候補を低レイテンシで提供し、最終的な順序はお客様のモデルが決めます。

どのプランに含まれますか?

フィーチャーストアは、PerformanceプランとScaleプランに含まれます。ベクトル検索、Top-K、Bloomフィルターはすべてのプランで動作します。

関連するユースケース

ご自身のワークロードで試してみましょう

HotKVはRedisプロトコルに対応しているため、既存のクライアントを向けるだけで、これらと同じコマンドを実行できます。