blob: 72eac2282f446022aa482d67ffa9bc7064bcde9e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
package com.yahoo.searchdefinition.expressiontransforms;
import com.yahoo.searchlib.rankingexpression.integration.ml.ImportedModel;
import com.yahoo.searchlib.rankingexpression.integration.ml.ModelImporter;
import java.io.File;
import java.util.HashMap;
import java.util.Map;
/**
* Lazily loaded models imported from the models/ directory in the application package
*
* @author bratseth
*/
class ImportedModels {
private final ModelImporter modelImporter;
/** The cache of already imported models */
private final Map<String, ImportedModel> importedModels = new HashMap<>();
ImportedModels(ModelImporter modelImporter) {
this.modelImporter = modelImporter;
}
/**
* Returns the model at the given location in the application package (lazily loaded),
*
* @throws IllegalArgumentException if the model cannot be loaded
*/
public ImportedModel imported(String modelName, File modelDir) {
return modelImporter.importModel(modelName, modelDir);
// return importedModels.computeIfAbsent(modelName, __ -> modelImporter.importModel(modelName, modelDir)); // TODO
}
}
|