Default job name | COLLECTION_NAME_bpr_item_recs |
Input | Aggregated signals (the COLLECTION_NAME_recs_aggr collection by default) |
Output | ● Items-for-item recommendations (the COLLECTION_NAME_bpr_item_recs collection by default)● Items-for-user recommendations (the COLLECTION_NAME_bpr_user_recs collection by default) |
query | count_i | type | timstamp_tdt | user_id | doc_id | session_id | fusion_query_id | |
---|---|---|---|---|---|---|---|---|
Required signals fields: | ✅ | ✅ | ✅ | ✅ | ✅ |
user_id_s
.item_id_s
.aggr_count_i
.0, 1
input-based recommendations as in ALS.
Configure An Argo-Based Job to Access GCS
my-gcs-serviceaccount-key
.
kubectl get secret -n <fusion-namespace>
.google.cloud.auth.service.account.json.keyfile
<name of the keyfile that is available when the GCS secret is mounted to the pod>
kubectl get secret -n <fusion-namespace> <secretname> -o yaml
.Configure An Argo-Based Job to Access S3
aws-secret
.
kubectl get secret -n <fusion-namespace>
.fs.s3a.access.keyPath
<name of the file containing the access key that is available when the S3 secret is mounted to the pod>
fs.s3a.secret.keyPath
<name of the file containing the access secret that is available when the S3 secret is mounted to the pod>
kubectl get secret -n <fusion-namespace> <secretname> -o yaml
.BPR collaborative recommendations dataflow
random_*
dynamic field defined in its managed-schema.xml
. This field is required for sampling the data. If it is not present, add the following entry to the managed-schema.xml
alongside other dynamic fields <dynamicField name="random_*" type="random"/>
and <fieldType class="solr.RandomSortField" indexed="true" name="random"/>
alongside other field types.Migrate Fusion Objects
Export an app | Import an app | Export an object | Import an object | Add an object to an app | |
Fusion UI | App configuration | Launcher (entire app) App configuration (combine apps) | - | - | Object Explorer |
Objects API (endpoints) | GET from export endpoint | POST to import endpoint | GET from export endpoint | POST to import endpoint | - |
Fetch Items-for-Item Recommendations (Collaborative/BPR Method)
APPName_item_item_rec_pipelines_bpr.json
file.
APPName
with the name of your Fusion app, such as ProductCatalog_item_item_rec_pipelines_bpr.json
.
APPName
with the name of your Fusion app, such as ProductCatalog
, and save it.
itemId
field and only returns the recommended itemId
values. To get the actual items, you need to make a second query to the respective catalog collection with the returned itemId
values.APPName_items_for_item_bpr_boost.json
file
APPName
with the name of your Fusion app, such as ProductCatalog_item_item_rec_pipelines_bpr.json
.APPName
with the name of your Fusion app, such as ProductCatalog
.collection
name field in the first Recommend Items for Item
stage and save the file.
5. Import the JSON file into your Fusion instance using the Query Pipelines REST API:
id=<itemId>
to be appended to the request in order to work. An example query URL to this pipeline would look like https://example-recs-fusion.com/api/query-pipelines/APPName_items_for_item_bpr_boost/collections/catalog/select?q=**:**&id=SomeItemId
Migrate Fusion Objects
Export an app | Import an app | Export an object | Import an object | Add an object to an app | |
Fusion UI | App configuration | Launcher (entire app) App configuration (combine apps) | - | - | Object Explorer |
Objects API (endpoints) | GET from export endpoint | POST to import endpoint | GET from export endpoint | POST to import endpoint | - |
Fetch Items-for-User Recommendations (Collaborative/BPR Method)
APPName_item_user_rec_pipelines_bpr.json
file.
APPName
with the name of your Fusion app, such as ProductCatalog_item_item_rec_pipelines_bpr.json
.
APPName
with the name of your Fusion app, such as ProductCatalog
, and save it.
userId
field and only returns the recommended itemId
values. To get the actual items, you need to make a second query to the respective catalog collection with the returned itemId
values.APPName_items_for_user_bpr_boost.json
file
APPName
with the name of your Fusion app, such as ProductCatalog_items_for_user_bpr_boost.json
.APPName
with the name of your Fusion app, such as ProductCatalog
.collection
name field in the first Recommend Items for User
stage and save the file.id=<userId>
to be appended to the request in order to work. An example query URL to this pipeline would look like https://example-recs-fusion.com/api/query-pipelines/APPName_items_for_user_bpr_boost/collections/catalog/select?q=**:**&id=SomeUserId