Why isn't SmartAssistant returning the number of results specified in the configuration variable SA_NL_MAX_SUGGESTIONS although there are enough relevant answers available?
SmartAssistant, Oracle B2C Service August 2015 and newer
The August 2015 release of Oracle B2C Service incorporated some changes to the way searching is handled in SmartAssistant, including the functionality to simultaneously search answers from the knowledge base and social questions from Community Self Service. By default, SmartAssistant suggests 60% answers from the knowledge base and 40% social answers. Changing the value of the configuration setting SA_RESULTS_COUNT_RATIO will allow you to modify the results. Specifically, setting the value to "100A:-S" will prevent SmartAssistant from ever displaying social results.
The configuration setting SA_RESULTS_COUNT_RATIO is located in folders: Common > Knowledge Base > SmartAssistant. You may also select to search by Key. More information on how to locate and edit configuration settings is available in Answer ID 1960: Editing configuration settings.
The expandable section below contains detailed information about usage options. It is simply a copy of the description of the variable found within the configuration settings tool in the Oracle B2C Service console. Note that when the description refers to "desired" or "requested" rows, it can be taken to mean the value from SA_NL_MAX_SUGGESTIONS.
Click the next to the appropriate heading below to expand that section for viewing.
Specifies the ratio of results distribution by document types. Example: Number of Answers to number of Social results in the desired total number of rows in SmartAssistant search. Currently, we support two document types – Answer and Social only.
Format is "xA:yS" or "yS:xA" series where,
x – a non zero positive integer ratio of Answers results of Smart Assistant search
y - a non zero positive integer ratio of Social results of Smart Assistant search
A – Identifies Answers part of the ratio (case insensitive. Can be passed as 'a' as well)
S – Identifies Social part of the ratio (case insensitive. Can be passed as 's' as well)
If left blank, default is 60A:40S. This results in 60% Answer Results and 40% Social Results.
Note: The results of the respective document types would be in the same order in the output as they appear in this ratio.
a. answer documents would appear first followed by social in the output for ratio 60A:40S.
b. social documents would appear first followed by answer in the output for ratio 60S:40A.
In [the] future other document types can be added into this config verb.
1) < any_non_zero_positive_integer >A:< any_non_zero_positive_integer >S
2) vice-versa of above.
The successive/ last document type (in the ratio) results would fill up for its predecessor document type if the number of results of the predecessor document is lesser than the expected ratio.
If the ratio is set to 60A:40S and requested rows is 10 and the number of Answers available is less than 3, the remainder 3 (+ 4 – social calculated ratio) would be filled with Social results, subject to the number of social results available.
This case is not applicable for predecessor documents.
If the ratio is set to 60A:40S and requested rows is 10 and the number of Answers available is less than 8, and the number of social documents available is 2, then the output would be 6 answers followed by 2 social.
Note: The gap is not filled here unlike the previous example, and instead we follow strictly the verb value set by the customer.
1) If any one of the ratios is set to '0', the results from that type would be displayed only if the other type (s) falls short to fill the requested number of rows, and this rule for '0' value will be respected irrespective of the place it appears in the ratio.
a. If the value is 100A:0S, and requested rows is 10, if available answers is 7 (less than rows) then Social results will fill the gap of the rest 3 rows in the output, if available answers are >=10, then no Social results are returned as part of output.
b. If the value is 0A:100S, and requested rows is 10, if available social is 7 then answer results will fill the gap of the 3 rows in the output and will appear first (respecting the ratio order in the verb) followed by 7 social results, if available social documents are >=10, then no answer results are returned as part of output.
2) If any of the ratios is set to '-', the results from that type would not be displayed.
a. If the value is 100A:-S, no Social results would be returned irrespective of number of answer results and
Requested rows are completely filled with the answer results.
b. If the value is -A:40S, no Answer results would be returned irrespective of number of social results
And requested rows are completely filled with the social results.
Not Recommended or Invalid Cases:
1) More than one 0 in the ratio, Example: 0A:0S.
2) All '–' in the ratio, Example: -A:-S.
3) Document type other than known ones, Example: 60C:40A.
4) Same document types in succession in the ratio, Example: 60A:40A
5) Negative values in the ratio.
In these cases we will validate and log an app error and the application would revert to default value of the ratio, and the default value for a 2 document type ratio (as is the case in present implementation/ design) is 60A:40S.