diff options
Diffstat (limited to 'config-model-api')
-rw-r--r-- | config-model-api/abi-spec.json | 8 | ||||
-rw-r--r-- | config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java | 24 |
2 files changed, 23 insertions, 9 deletions
diff --git a/config-model-api/abi-spec.json b/config-model-api/abi-spec.json index 10c5662678e..363ab3918d3 100644 --- a/config-model-api/abi-spec.json +++ b/config-model-api/abi-spec.json @@ -1459,9 +1459,9 @@ ], "methods" : [ "public abstract long aggregatedModelCostInBytes()", - "public abstract void registerModel(com.yahoo.config.application.api.ApplicationFile)", + "public void registerModel(com.yahoo.config.application.api.ApplicationFile)", "public abstract void registerModel(com.yahoo.config.application.api.ApplicationFile, com.yahoo.config.model.api.OnnxModelOptions)", - "public abstract void registerModel(java.net.URI)", + "public void registerModel(java.net.URI)", "public abstract void registerModel(java.net.URI, com.yahoo.config.model.api.OnnxModelOptions)", "public abstract java.util.Map models()", "public abstract void setRestartOnDeploy()", @@ -1483,9 +1483,7 @@ "public void <init>()", "public com.yahoo.config.model.api.OnnxModelCost$Calculator newCalculator(com.yahoo.config.application.api.ApplicationPackage, com.yahoo.config.provision.ApplicationId)", "public long aggregatedModelCostInBytes()", - "public void registerModel(com.yahoo.config.application.api.ApplicationFile)", "public void registerModel(com.yahoo.config.application.api.ApplicationFile, com.yahoo.config.model.api.OnnxModelOptions)", - "public void registerModel(java.net.URI)", "public void registerModel(java.net.URI, com.yahoo.config.model.api.OnnxModelOptions)", "public java.util.Map models()", "public void setRestartOnDeploy()", @@ -1503,7 +1501,9 @@ "record" ], "methods" : [ + "public void <init>(java.lang.String, long, long, com.yahoo.config.model.api.OnnxModelOptions)", "public void <init>(java.lang.String, long, long, java.util.Optional)", + "public com.yahoo.config.model.api.OnnxModelOptions options()", "public final java.lang.String toString()", "public final int hashCode()", "public final boolean equals(java.lang.Object)", diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java index d70b751eba0..69f2b6b6dce 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java @@ -18,9 +18,15 @@ public interface OnnxModelCost { interface Calculator { long aggregatedModelCostInBytes(); - void registerModel(ApplicationFile path); + // TODO: Unused, remove when 8.263.7 is oldest model in use + default void registerModel(ApplicationFile path) { + registerModel(path, OnnxModelOptions.empty()); + } void registerModel(ApplicationFile path, OnnxModelOptions onnxModelOptions); - void registerModel(URI uri); + // TODO: Unused, remove when 8.263.7 is oldest model in use + default void registerModel(URI uri) { + registerModel(uri, OnnxModelOptions.empty()); + } void registerModel(URI uri, OnnxModelOptions onnxModelOptions); Map<String, ModelInfo> models(); void setRestartOnDeploy(); @@ -28,16 +34,24 @@ public interface OnnxModelCost { void store(); } - record ModelInfo(String modelId, long estimatedCost, long hash, Optional<OnnxModelOptions> onnxModelOptions) {} + record ModelInfo(String modelId, long estimatedCost, long hash, Optional<OnnxModelOptions> onnxModelOptions) { + + public ModelInfo(String modelId, long estimatedCost, long hash, OnnxModelOptions onnxModelOptions) { + this(modelId, estimatedCost, hash, Optional.of(onnxModelOptions)); + } + + public OnnxModelOptions options() { + return onnxModelOptions.orElseThrow(() -> new IllegalStateException("No onnxModelOptions exist")); + } + + } static OnnxModelCost disabled() { return new DisabledOnnxModelCost(); } class DisabledOnnxModelCost implements OnnxModelCost, Calculator { @Override public Calculator newCalculator(ApplicationPackage appPkg, ApplicationId applicationId) { return this; } @Override public long aggregatedModelCostInBytes() {return 0;} - @Override public void registerModel(ApplicationFile path) {} @Override public void registerModel(ApplicationFile path, OnnxModelOptions onnxModelOptions) {} - @Override public void registerModel(URI uri) {} @Override public void registerModel(URI uri, OnnxModelOptions onnxModelOptions) {} @Override public Map<String, ModelInfo> models() { return Map.of(); } @Override public void setRestartOnDeploy() {} |