(SM) Support Tip: Fixing the inability to turn off Adapative Learning for Smart Search

Disabling Adaptive Learning in the Knowledge Management Environment Record does not prevent adaptive learning records from being created in the kmadaptive learning table. This problem only occurs when using Smart Search/Smart Analytics and IDOL for Knowledge Managment. The problem does not occur when using the SOLR Search Engine.

The reason is because there is a flaw within the IDOLAssistantUseSolution ScriptLibrary record.

The following steps below will disable Adaptvie Learning for Smart Search:

1. Login to Service Manager

2. Go to System Administration > Ongoing Maintenance > Environment Records > Knowledge Managment Environment Record

3. Uncheck (i.e. set to false) Use Adaptive Learning to Enhance Search Results

4. Save

5. Logout then back into Service Manager

6. Go to Database Manager and access the ScriptLibrary table

7. Inside ScriptLibrary access the following script: IDOLAssistantUseSolution

8. Find this section of code:

 function useSolution(record, solution, library, reference, keyword) {
var mapping = funcs.filename(record);
logger.debug('applying solution ' solution ' onto ' record);

KMSearch.useSolution(mapping, solution, record);

var database = library.kbname;
// XXX: reference has to encode twice ...
reference = encodeURIComponent(reference);
updateRanking(database, reference);
IDOLGlobalSearchAdaptiveLearning.appendPhrase(library, solution, keyword);
return record;
}

9. Comment the following line: IDOLGlobalSearchAdaptiveLearning.appendPhrase(library, solution, keyword);

10. The function should now look like this:

function useSolution(record, solution, library, reference, keyword) {
var mapping = funcs.filename(record);
logger.debug('applying solution ' solution ' onto ' record);

KMSearch.useSolution(mapping, solution, record);

var database = library.kbname;
// XXX: reference has to encode twice ...
reference = encodeURIComponent(reference);
updateRanking(database, reference);
// IDOLGlobalSearchAdaptiveLearning.appendPhrase(library, solution, keyword);
return record;
}

11. Save, Compile

12. Adaptive Learning is now disabled for Smart Search

 

 

Tags: