@@ -122,8 +122,8 @@ type Feedback struct {
122
122
123
123
在将反馈插入 Gorse 推荐系统之前,需要定义用户的哪些行为是正反馈,哪些是已读反馈。已读反馈相对容易定义,因为当用户看到推荐物品时可以将其记录为已读反馈。但是,正反馈的定义更多地取决于具体场景。对于TikTok,如果用户“喜欢”或“分享”当前视频,则可以视为正向反馈;对于 YouTube,如果用户观看视频达到一定比例的完成度、“喜欢”视频或“分享”视频,都可以被视为正向反馈。总而言之,正反馈和已读反馈由以下规则定义:
124
124
125
- - ** 已读反馈:** 用户看到过物品。
126
- - ** 正反馈:** 用户执行了服务方期望的操作,例如点赞、收藏、购买等行为。
125
+ - ** 已读反馈:** 用户看到过物品。
126
+ - ** 正反馈:** 用户执行了服务方期望的操作,例如点赞、收藏、购买等行为。
127
127
128
128
例如,G胖想基于 Gorse 为 Steam 构建一个推荐系统,点击进入游戏介绍页面可以被视为已读反馈(游戏列表页面信息太少,无法确定用户已读),以及那么诸如添加愿望清单和添加购物车之类的操作将被视为正反馈。需要在配置文件中进行如下设置:
129
129
@@ -167,29 +167,29 @@ curl -X POST "http://127.0.0.1:8088/api/feedback" \
167
167
168
168
当用户行动发生时,可以将正反馈插入推荐系统,而已读反馈则需要应用程序检测用户的“阅读”行为。显示推荐的方法因应用程序而异,但通常可分为两类。
169
169
170
- - ** 全屏模式:** 最典型的应用程序是 TikTok,当向用户显示全屏内容时,用户被视为“已读”。也就是说,应用程序可以在向用户展示推荐内容时向推荐系统写入“已读”反馈,并且将不再向用户展示已读内容。
170
+ - ** 全屏模式:** 最典型的应用程序是 TikTok,当向用户显示全屏内容时,用户被视为“已读”。也就是说,应用程序可以在向用户展示推荐内容时向推荐系统写入“已读”反馈,并且将不再向用户展示已读内容。
171
171
172
172
::: center
173
173
174
174
![ ] (../../../../img/tiktok.jpg =300x) ![ ] (../../../../img/youtube-mobile.jpg =300x)
175
175
176
176
:::
177
177
178
- - ** 列表模式:** 最典型的应用是 YouTube,用户在浏览视频列表后不会被立刻视为“已读”。当有多个推荐项目同时展示给用户时,用户的注意力无法浏览整个列表。而且,如果在列表模式下快速丢弃已读内容,则推荐内容消耗过快。因此,最好的解决方案是当推荐以列表形式呈现给用户时,向推荐系统写入带有未来时间戳的“已读”反馈,“已读”反馈将在时间达到时间戳时生效,那个时候才不再呈现给用户。
178
+ - ** 列表模式:** 最典型的应用是 YouTube,用户在浏览视频列表后不会被立刻视为“已读”。当有多个推荐项目同时展示给用户时,用户的注意力无法浏览整个列表。而且,如果在列表模式下快速丢弃已读内容,则推荐内容消耗过快。因此,最好的解决方案是当推荐以列表形式呈现给用户时,向推荐系统写入带有未来时间戳的“已读”反馈,“已读”反馈将在时间达到时间戳时生效,那个时候才不再呈现给用户。
179
179
180
180
#### 自动插入
181
181
182
182
主动将已读反馈插入推荐系统需要应用程序能够准确捕获用户浏览行为。此任务对于移动应用程序来说更容易,但对于 Web 应用程序来说更难。为了解决这个问题,Gorse 获取推荐结果的 API 提供了两个参数: ` write−back−type ` 和` write−back−delay ` 。
183
183
184
- - ** 在全屏模式下:** 获得推荐并写“已读”反馈,之后不会再次出现推荐。
184
+ - ** 在全屏模式下:** 获得推荐并写“已读”反馈,之后不会再次出现推荐。
185
185
186
186
``` bash
187
187
curl -X GET " http://172.18.0.3:8087/api/recommend/zhenghaoz?write-back-type=read&n=1" \
188
188
-H " accept: application/json" \
189
189
-H " X-API-Key: 19260817"
190
190
```
191
191
192
- - ** 在列表模式下:** 获得 10 条推荐并在 10 分钟后写入“已读”的反馈。直到 10 分钟后,这 10 条推荐才会被丢弃。
192
+ - ** 在列表模式下:** 获得 10 条推荐并在 10 分钟后写入“已读”的反馈。直到 10 分钟后,这 10 条推荐才会被丢弃。
193
193
194
194
``` bash
195
195
curl -X GET " http://172.18.0.3:8087/api/recommend/zhenghaoz?write-back-type=read&write-back-delay=10m&n=10" \
0 commit comments