レコメンデーション
UZU バックエンドのレコメンデーション機能に関する設計ドキュメント群。
ドキュメント構成
| ファイル | 役割 |
|---|---|
| 仕様 (spec) | 仕様本体。何を作るか・surface ごとの集約 / フィルタ / API 境界の契約 |
| Base Scoring (base-scoring) | コアモデル本体。score(u, s) → float の内部実装(iALS 学習・Cold-start・実装インフラ・学習データ) |
| 技術選定 (technology-choices) | 技術選定の経緯・比較検討・採用しなかった代替案の議論 |
| 設計決定ログ (strategy-decisions) | 個別の設計判断 (採用案 / 却下案 / 根拠) の時系列記録 |
| Surface 別 解説 (surfaces/) | 6 Surface (FOR_YOU / QUICK_MATCH / SIMILAR / EVENT_DETAIL / AUTHOR / COLLECTION) ごとの「何を推薦するか・どこで使われるか・どう scoring するか・実装状況」 |
| 本番計測 (observation) | BigQuery recommendation_assignments ベースの本番モニタリング・metrics |
読み方の指針
- 実装に取り掛かる人: まず spec を読む。surface ごとの集約 / フィルタ / API はここが契約
- コアモデル (iALS) を学習・運用する人: base-scoring を読む。学習データ・iALS 実装・Cold-start・実装インフラはここが契約
- 設計判断の背景を知りたい人: technology-choices で iALS / BPR / LogMF / pgvector / GKE 選定の理由を確認、strategy-decisions でアーキテクチャ判断 (Surface 別 Strategy 統合など) の経緯を確認
- 未決定事項を調整する人: spec の Open Decisions リスト
- Surface 別の挙動を知りたい人: surfaces/ の一覧表から該当 Surface のページへ
- 本番の稼働状況を確認する人: observation