Response Shuffle Stage
This is a response rewriting stage that helps "de-bias" results by shuffling the top N results randomly. Since most users click on result #1 before #2, this stage is helpful for distributing clicks more evenly among the top N results. This stage must be used after the Solr Query stage in your pipeline.
This stage is especially useful when combined with experiments, where a small percentage of traffic is given shuffled results to minimize position bias when using click signals for ranking. The Response Pairwise Swap stage provides an another method for minimizing this bias.
Query pipeline stage condition examples
Stages can be triggered conditionally when a script in the Condition field evaluates to true. Some examples are shown below.
Run this stage only for mobile clients:
params.deviceType === "mobile"
Run this stage when debugging is enabled:
params.debug === "true"
Run this stage when the query includes a specific term:
params.q && params.q.includes("sale")
Run this stage when multiple conditions are met:
request.hasParam("fusion-user-name") && request.getFirstParam("fusion-user-name").equals("SuperUser");
!request.hasParam("isFusionPluginQuery")
The first condition checks that the request parameter "fusion-user-name" is present and has the value "SuperUser". The second condition checks that the request parameter "isFusionPluginQuery" is not present.
Configuration
When entering configuration values in the UI, use unescaped characters, such as \t for the tab character. When entering configuration values in the API, use escaped characters, such as \\t for the tab character.
|