Personalization

Overview

SearchAssist allows you to personalize the search outcomes based on your user requirements, business priorities, and search contexts. Personalization of Search Results is rendered by the following features:

  • Business Rules
  • Dynamic Facets

Traditional search has limitations in not identifying search user contexts. In personalization the same query can give different outcomes based on the user profile or contexts which are more relevant to the user and pertaining to the context. 

SearchAssist personalization features use the NLP approach in identifying the user’s context, detecting facets, intent, localization and  objective behind the query. The ML capabilities of SearchAssist can learn the priorities, preferences of the end-user prompt with ready queries and position results accordingly. 

Business Rules allow you to define rules to personalize and fine-tune the search results based on various contexts. Contexts include Search contexts, Page Context and User Contexts. Refer About Business Rules

Business Rules 

Business Rules allow you to define rules to personalize and fine-tune the search results based on various contexts. 

Rules for example can also be used in merchandising scenarios to launch promotions and offers to include quantity discounts or time-bound festive offers. Rules are set based on user context, search context, page context, or a combination of multiple contexts. Rules define the promoting, positioning or filtering of a set of results. 

For example, in an eCommerce site, based on the geographical location availability of certain products or their variants can be hidden, or if the user is logged in from a mobile device the number of search results displayed needs to be reduced due to limited screen space. Refer More About  Business Rules.  Refer How to Define and Apply Business Rules


More About Business Rules

SearchAssist Platform lets you define two aspects of Business Rules:

  1. Conditions define when the event is triggered, based on the context and parameter values.
    • Context can be:
      • Search context is based on the user search history and has predefined attributes such as Recent Searches, Current Search, Traits, Entities, Keywords, Semantic meanings identified.
      • Page context can be based on predefined attributes such as Device, Browser, Current page, Recent pages, and Location and other required attributes of a page can be passed from the website through the SDK.
      • User Context can be based on user information that a website can pass through SDK.
    • Parameters include setting the preceding context to contain/not contain/equals/not equals to a given keyword.
  2. Outcome – Using Outcome,  define what happens when the condition mentioned in the condition matches.
    • Action can be one of the following:
      • Boost a particular response set – This is used to promote the results to display at the top
      • Lower a particular response set – This is used to demote the results from displaying at the top
      • Hide a particular response set – This is used to hide certain results from showing to the search user
      • Filter a particular response set – This is used to filter certain search results by default to show to the search user.
    • Response on which the preceding actions need to be applied can be specified by a field value containing/being equal to a static keyword or a dynamic keyword taken from the context. 

The following are some scenarios where a business user can apply business rules:

  1. Say, in a banking scenario, you want to present to your premium customers some credit card related offers, then you can define a rule as follows:
    CONDITION: “Search Context: RecentSearches” Contains “Credit” OR “Card”
    AND “User Context: CustomerType” Contains “Premium”
    OUTCOME: “Boost Results” Containing “Title: Card Offers” OR “Title: Card Rewards”
  2. If the user is proven to be not creditworthy, then you do not want to show them any loan offers, then you can define a business rule as follows:
    CONDITION: “Search Context: RecentSearches” Contains “Loan” OR “Credit”
    AND “User Context.CustomerInfo.CreditWorthy” Contains “Poor”
    OUTCOME: “Hide Results” Containing “Loans: Loan” OR “Loans: Credit”
  3. If the user has only a savings account and is searching for account-related information, you do not want to show them information related to other types of accounts like checking accounts. In such a scenario, define a business rule as follows:
    CONDITION: “User Context.AccountType” Contains “Savings”
    AND “User Context: AccountType” Doesn’t Contain “Checking”
    AND “Page Context: PageName” Contains “Account” OR “Banking”
    AND “Search Context: CurrentSearch” Contains “Information” OR “Details”
    OUTCOME: “Filter Results” Containing “Title: Savings”

Dynamic Facets 

Dynamic Facets built-in capability enables the search app to detect the facets from the user’s live search query and automatically applies appropriate filters suitable for that query. In response to the query the appropriate personalization is done to the display of results. Dynamic facets depend on structured data like product catalogs in CSV or JSON formats. 

The pre-existing facets, if any, will have precedence and priority over  the dynamic facets. The business user or the search engineer has to identify which fields are to be considered for dynamic faceting when uploading the structured data.