Shopping Companion — 跨会话偏好记忆购物助手(4B≈GPT-5,Lazada真实数据)
Skill-Shopping-Companion-Agent · 14-用户分析
1. 解决的问题
传统推荐系统的致命缺陷:每次会话从零开始——用户上周告诉导购"我要有机配方奶",下次进来又要重新解释,累计咨询成本极高,转化率低。Shopping Companion 的创新在于构建跨会话长期偏好记忆,将用户偏好结构化存储,Agent 可在后续会话中直接调用,像"私人导购"一样记住每位用户的长期喜好。
2. 核心算法逻辑
传统推荐系统的致命缺陷:每次会话从零开始——用户上周告诉导购"我要有机配方奶",下次进来又要重新解释,累计咨询成本极高,转化率低。Shopping Companion 的创新在于构建跨会话长期偏好记忆,将用户偏好结构化存储,Agent 可在后续会话中直接调用,像"私人导购"一样记住每位用户的长期喜好。
3. 业务应用场景
业务痛点:用户上月购买 Stage 1 奶粉(0-6月龄),宝宝即将 6 个月,需要升阶。传统推荐系统没有记忆——用户进来需要重新搜索,极易被竞品截流。
Shopping Companion 的工作方式:
| 时间节点 | Agent 行为 | 业务价值 | |---------|-----------|---------| | 会话 1(购买 Stage 1) | 偏好识别:`brand=Aptamil, organic=True, stage=1, price_max=80` | 写入偏好记忆 | | 会话 2(6周后) | 调出记忆 → 搜索 Stage 2 同品牌有机配方 → 验证符合偏好 → 推荐 | 主动推荐,无需用户重复说明 | | 会话 3(添加辅食) | 偏好扩展:`category_history=[formula], allergies=dairy_sensitive` →
4. 输入数据要求
请查看原始代码模板获取输入规格。
5. 输出结果
请查看原始代码模板获取输出规格。
6. 业务价值 / ROI
- 导购成本节省:60% × 5人导购 × 年薪 15万 = 45万元/年
- 复购率提升 20%:年复购 GMV 假设 2000万 × 20% = 400万元/年
- 合计潜在 ROI:445万元/年
- 基础版(规则偏好提取 + 结构化存储):1 周内可落地
- 进阶版(微调 4B 模型):需要 1-3 个月的业务对话数据标注
- 基础设施:Redis/数据库存储偏好记忆,无需复杂 MLOps
7. 代码模板
代码块数量:2 · 路径:未检测到
"""
Shopping Companion Agent — 跨会话偏好记忆购物助手
论文: Shopping Companion: Benchmarking and Training LLM Agents
for Long-Horizon Preference-Grounded E-Commerce Tasks
arXiv:2603.14864 | 2026年3月 | 基于 Lazada.com 120万真实商品
核心结论: 4B 小模型 72.5% ≈ GPT-5 74.0%(双奖励 RL 定向训练)
"""
from dataclasses import dataclass, field
from typing import List, Optional, Dict, Any
from datetime import datetime
import numpy as np
@dataclass
class UserPreference:
"""用户偏好维度数据类"""
brand: Optional[str] = None # 偏好品牌
organic: Optional[bool] = None # 有机认证需求
price_range: tuple = (0, 999) # 价格区间 (min, max)
category_history: List[str] = field(default_factory=list) # 购买品类历史
certifications: List[str] = field(default_factory=list) # 证书偏好 (EU-organic, DIN EN)
allergies: List[str] = field(default_factory=list) # 过敏/排除成分
no_added_sugar: Optional[bool] = None # 无添加糖需求
stage: Optional[int] = None # 婴儿月龄阶段 (1/2/3)
last_updated: str = field(default_factory=lambda: datetime.now().isoformat())
@dataclass
class Product:
"""商品数据类"""
product_id: str
name: str
brand: str
price: float
category: str
organic: bool = False
certifications: List[str] = field(default_factory=list)
ingredients: List[str] = field(default_factory=list)
stage: Optional[int] = None
rating: float = 4.0
@dataclass
class RecommendationResult:
"""推荐结果"""
products: List[Product]
match_explanations: List[str]
tool_reward: float
result_reward: float
total_reward: float
class PreferenceMemory:
"""
跨会话用户偏好存储/更新/检索
核心设计:结构化 key-value 存储(非向量),可解释可编辑
"""
def __init__(self):
8. 论文来源
- 2603.14864