summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2021-09-14 22:09:14 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2021-09-14 22:09:14 +0200
commita8e46451d8fafced86defc98266d9ab351981549 (patch)
tree1827723fa9dfaccd8d3362cca3da6f673ef0806f
parent42c6faf663e784765b6d881f3e2e73c81c989320 (diff)
Order importers by their increasing probing cost.
-rw-r--r--application/src/main/java/com/yahoo/application/Application.java4
-rw-r--r--model-integration/src/main/config/model-integration.xml3
2 files changed, 4 insertions, 3 deletions
diff --git a/application/src/main/java/com/yahoo/application/Application.java b/application/src/main/java/com/yahoo/application/Application.java
index 4c93256cd44..124bd160494 100644
--- a/application/src/main/java/com/yahoo/application/Application.java
+++ b/application/src/main/java/com/yahoo/application/Application.java
@@ -128,8 +128,8 @@ public final class Application implements AutoCloseable {
List<MlModelImporter> modelImporters = List.of(new VespaImporter(),
new TensorFlowImporter(),
new OnnxImporter(),
- new LightGBMImporter(),
- new XGBoostImporter());
+ new XGBoostImporter(),
+ new LightGBMImporter());
DeployState deployState = new DeployState.Builder()
.applicationPackage(FilesApplicationPackage.fromFile(path.toFile(), true))
.modelImporters(modelImporters)
diff --git a/model-integration/src/main/config/model-integration.xml b/model-integration/src/main/config/model-integration.xml
index 34f5f0ce31a..8b2fa28b9df 100644
--- a/model-integration/src/main/config/model-integration.xml
+++ b/model-integration/src/main/config/model-integration.xml
@@ -2,11 +2,12 @@
<!-- Component which can import some ml model.
This is included into the config server services.xml to enable it to translate
model pseudo features in ranking expressions during config model building.
+ The importers are order by the cost of their probing method, from cheap to expensive.
It is provided as separate bundles instead of being included in the config model
because some of these (TensorFlow) includes
JNI code, and so can only exist in one instance in the server. -->
+<component id="ai.vespa.rankingexpression.importer.vespa.VespaImporter" bundle="model-integration" />
<component id="ai.vespa.rankingexpression.importer.onnx.OnnxImporter" bundle="model-integration" />
<component id="ai.vespa.rankingexpression.importer.tensorflow.TensorFlowImporter" bundle="model-integration" />
<component id="ai.vespa.rankingexpression.importer.xgboost.XGBoostImporter" bundle="model-integration" />
<component id="ai.vespa.rankingexpression.importer.lightgbm.LightGBMImporter" bundle="model-integration" />
-<component id="ai.vespa.rankingexpression.importer.vespa.VespaImporter" bundle="model-integration" />