开始使用免费开始使用

将用户历史加入推荐引擎

在许多推荐场景中(如电影或购物推荐),仅基于一个数据点来生成下一次推荐往往不够。在这些情况下,您需要对用户的全部或部分历史进行嵌入,以获得更准确且更相关的推荐。

本练习中,您将扩展产品推荐系统,使其考虑用户之前访问过的所有商品。这些商品保存在名为 user_history 的字典列表中。

您可以使用以下自定义函数:create_embeddings(texts)create_product_text(product)find_n_closest(query_vector, embeddings, n=3)。此外,已将 numpynp 名称导入。

本练习是课程的一部分

使用 OpenAI API 的 Embeddings 入门

查看课程

练习说明

  • user_history 中每个商品的文本特征合并,对合并后的字符串进行嵌入,并使用 numpy 计算其平均嵌入向量。
  • 过滤 products,移除任何已存在于 user_history 的商品。
  • products_filtered 中每个商品的特征合并,并对合并后的字符串进行嵌入。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Prepare and embed the user_history, and calculate the mean embeddings
history_texts = [____ for article in user_history]
history_embeddings = ____
mean_history_embeddings = ____

# Filter products to remove any in user_history
products_filtered = ____

# Combine product features and embed the resulting texts
product_texts = ____
product_embeddings = ____

hits = find_n_closest(mean_history_embeddings, product_embeddings)

for hit in hits:
  product = products_filtered[hit['index']]
  print(product['title'])
编辑并运行代码