Boost with signals
The Boost With Signals query pipeline stage performs automatic boosts based on the contents of the aggregated signals collection. For this type of boosting, signals must be enabled but recommendations need not be.
Using the main query and the stage configuration parameters, this stage performs a secondary query to the COLLECTION_NAME_signals_aggr
collection and returns updated boost weights for the items in the main query’s search results. Items that have received more user interaction also receive higher boost weights.
Some of the important configuration parameters are discussed below. For complete details about all configuration parameters for this stage, see Boost with Signals.
Configuration overview
The fields below are especially useful to understand when configuring this stage.
Number of Recommendations
|
Sets the |
||
Number of Signals
|
Sets the |
||
Aggregation Type
|
A filter to retrieve aggregated signals in the |
||
Solr Field to Boost On
|
The document field in the main collection on which to perform boosting. Typically it should use default field, which is This field corresponds to the Rollup Field/ |
||
Boost Method
|
This adds a query parameter to the original query, either “query-param” or “query-parser”. The result is “query-param”+"boost", result boost query param
“query-parser”+"boost", result boost query param
|
||
Rollup Field
|
Indicates which aggregated signal document field the boost parameter will use for the final boosting. It works in combination with the Solr Field to Boost On/ This should be set to the field in the aggregated signal collection that stores the doc list that is aggregated as one record. By default it’s set to |
||
Rollup Weight Field
|
Indicates the final boost weight used to calculate the new score for docs retrieved by the main query. Similar to Rollup Field/ |
||
Final Boost Weight Expression
|
Calculates the final weight using the weight and score retrieved from the The default value is |
Solr query parameters
These parameters are used in the Solr Query parameters/queryParams
field for retrieving signal aggregation docs from the COLLECTION_NAME_signals_aggr
collection. These Solr query params will affect which aggregated signals are used for producing the boosting parameter on the main query.
|
Defines which field to query. In the default case, the query searches on the |
|
Boosts docs within the set of retrieved docs using phrase matching. |
|
|
|
|
FAQs
fq
in the main query, how is it matched with the correct aggregated signal?In this case, you need to use the lw.rec.fq
query parameter in the main query. lw.rec.fq
can be parsed by the Boost with Signals stage, and therefore the filters specified in it can be added to the Solr query that is retrieving the aggregated signals.
For example, if we have filter query param fq=format:CD&fq=name:Latin
, this needs to be translated into lw.rec.fq=filters_s:"format:cd $ name:latin"
. Values must be lowercase. The final main query should be:
http://EXAMPLE_COMPANY.lucidworks.cloud/api/apps/demo_app/query-pipelines/demo_app/collections/demo_app/select?echoParams=all&wt=json&json.nl=arrarr&sort&start=0&q=apple&debug=true&rows=10&lw.rec.fq=filters_s:"format:cd $ name:latin"
Replace EXAMPLE_COMPANY with the name provided by your Lucidworks representative.
|
Now the Boost with Signals stage will only retrieve aggregated signals that have the same filter query.
If there are multiple fq values (for example, format:cd and name:latin ), they are ordered alphabetically as strings and joined with " $ " (a $ with a space on each side). In the example, "format:cd $ name:latin" .
|
You can point the Boost with Signals stage to a different signal collection by adding a collection
parameter in the Solr Query Parameters
section.