summaryrefslogtreecommitdiffstats
path: root/model-integration
diff options
context:
space:
mode:
authorLester Solbakken <lester.solbakken@gmail.com>2024-04-12 13:04:01 +0200
committerLester Solbakken <lester.solbakken@gmail.com>2024-04-12 13:04:01 +0200
commitb4d6c0856e0313e8925505265121ce743f079ada (patch)
treefd8a28fb707d7dae4ac9c4f19d48aad082cf01ff /model-integration
parente11438c6335038f6d99ea50eef086511eb204d43 (diff)
parentdd996cbeb9ddf7c22089b6115966f03227b35a48 (diff)
Merge branch 'master' into lesters/add-local-llms
Diffstat (limited to 'model-integration')
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/configmodelview/ImportedMlModels.java5
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Argument.java3
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Constant.java3
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/IntermediateOperation.java10
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/NoOp.java3
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/OnnxConstant.java3
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Rename.java3
-rw-r--r--model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Softmax.java3
-rw-r--r--model-integration/src/test/java/ai/vespa/llm/clients/ConfigurableLanguageModelTest.java5
9 files changed, 15 insertions, 23 deletions
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/configmodelview/ImportedMlModels.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/configmodelview/ImportedMlModels.java
index c97e4781889..9639d9598a8 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/configmodelview/ImportedMlModels.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/configmodelview/ImportedMlModels.java
@@ -7,7 +7,6 @@ import com.yahoo.yolean.Exceptions;
import java.io.File;
import java.util.Arrays;
import java.util.Collection;
-import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
@@ -34,7 +33,7 @@ public class ImportedMlModels {
/** Create a null imported models */
public ImportedMlModels() {
- importedModels = Collections.emptyMap();
+ importedModels = Map.of();
}
public ImportedMlModels(File modelsDirectory, ExecutorService executor, Collection<MlModelImporter> importers) {
@@ -53,7 +52,7 @@ public class ImportedMlModels {
skippedModels.put(name, Exceptions.toMessageString(e));
}
});
- importedModels = Collections.unmodifiableMap(models);
+ importedModels = Map.copyOf(models);
}
/**
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Argument.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Argument.java
index e985b6d2956..dbd17d96d4f 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Argument.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Argument.java
@@ -8,7 +8,6 @@ import com.yahoo.tensor.evaluation.VariableTensor;
import com.yahoo.tensor.functions.Rename;
import com.yahoo.tensor.functions.TensorFunction;
-import java.util.Collections;
import java.util.List;
public class Argument extends IntermediateOperation {
@@ -16,7 +15,7 @@ public class Argument extends IntermediateOperation {
private OrderedTensorType standardNamingType; // using standard naming convention: d0, d1, ...
public Argument(String modelName, String nodeName, OrderedTensorType type) {
- super(modelName, nodeName, Collections.emptyList());
+ super(modelName, nodeName, List.of());
this.type = type.rename(vespaName() + "_");
standardNamingType = OrderedTensorType.standardType(type);
}
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Constant.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Constant.java
index 91c46d1232e..1d430611c49 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Constant.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Constant.java
@@ -7,14 +7,13 @@ import com.yahoo.searchlib.rankingexpression.Reference;
import com.yahoo.searchlib.rankingexpression.evaluation.Value;
import com.yahoo.tensor.functions.TensorFunction;
-import java.util.Collections;
import java.util.List;
import java.util.Optional;
public class Constant extends IntermediateOperation {
public Constant(String modelName, String nodeName, OrderedTensorType type) {
- super(modelName, nodeName, Collections.emptyList());
+ super(modelName, nodeName, List.of());
this.type = type.rename(vespaName() + "_");
}
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/IntermediateOperation.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/IntermediateOperation.java
index 52de27891cf..d9f4a4b7f4c 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/IntermediateOperation.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/IntermediateOperation.java
@@ -53,7 +53,7 @@ public abstract class IntermediateOperation {
private final List<String> importWarnings = new ArrayList<>();
private Value constantValue = null;
- private List<IntermediateOperation> controlInputs = Collections.emptyList();
+ private List<IntermediateOperation> controlInputs = List.of();
protected Function<OrderedTensorType, Value> constantValueFunction = null;
@@ -259,7 +259,7 @@ public abstract class IntermediateOperation {
if (result == DoubleValue.NaN) {
if (constantValue != null) {
result = constantValue;
- } else if (inputs.size() == 0) {
+ } else if (inputs.isEmpty()) {
if (getConstantValue().isEmpty()) {
throw new IllegalArgumentException("Error in evaluating constant for " + name);
}
@@ -278,7 +278,7 @@ public abstract class IntermediateOperation {
/** Insert an operation between an input and this one */
public void insert(IntermediateOperation operationToInsert, int inputNumber) {
- if ( operationToInsert.inputs.size() > 0 ) {
+ if (!operationToInsert.inputs.isEmpty()) {
throw new IllegalArgumentException("Operation to insert to '" + name + "' has " +
"existing inputs which is not supported.");
}
@@ -336,7 +336,7 @@ public abstract class IntermediateOperation {
public abstract IntermediateOperation withInputs(List<IntermediateOperation> inputs);
String asString(Optional<OrderedTensorType> type) {
- return type.map(t -> t.toString()).orElse("(unknown)");
+ return type.map(OrderedTensorType::toString).orElse("(unknown)");
}
/**
@@ -373,7 +373,7 @@ public abstract class IntermediateOperation {
public String toFullString() {
return "\t" + type + ":\t" + operationName() + "(" +
- inputs().stream().map(input -> input.toFullString()).collect(Collectors.joining(", ")) +
+ inputs().stream().map(IntermediateOperation::toFullString).collect(Collectors.joining(", ")) +
")";
}
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/NoOp.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/NoOp.java
index ba056d362ac..fa115d8af97 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/NoOp.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/NoOp.java
@@ -5,13 +5,12 @@ import ai.vespa.rankingexpression.importer.OrderedTensorType;
import com.yahoo.searchlib.rankingexpression.Reference;
import com.yahoo.tensor.functions.TensorFunction;
-import java.util.Collections;
import java.util.List;
public class NoOp extends IntermediateOperation {
public NoOp(String modelName, String nodeName, List<IntermediateOperation> inputs) {
- super(modelName, nodeName, Collections.emptyList()); // don't propagate inputs
+ super(modelName, nodeName, List.of()); // don't propagate inputs
}
@Override
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/OnnxConstant.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/OnnxConstant.java
index dff548cf319..2e48d65fce2 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/OnnxConstant.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/OnnxConstant.java
@@ -9,7 +9,6 @@ import com.yahoo.searchlib.rankingexpression.evaluation.Value;
import com.yahoo.tensor.TensorType;
import com.yahoo.tensor.functions.TensorFunction;
-import java.util.Collections;
import java.util.List;
import java.util.Optional;
@@ -31,7 +30,7 @@ public class OnnxConstant extends IntermediateOperation {
if (value instanceof TensorValue) {
type = OrderedTensorType.fromSpec(value.type().toString()).rename(vespaName() + "_");
} else {
- type = OrderedTensorType.fromDimensionList(TensorType.Value.DOUBLE, Collections.emptyList());
+ type = OrderedTensorType.fromDimensionList(TensorType.Value.DOUBLE, List.of());
}
return type;
}
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Rename.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Rename.java
index 5a7bbc95889..068c06acd8c 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Rename.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Rename.java
@@ -7,7 +7,6 @@ import com.yahoo.searchlib.rankingexpression.Reference;
import com.yahoo.tensor.TensorType;
import com.yahoo.tensor.functions.TensorFunction;
-import java.util.Collections;
import java.util.List;
/**
@@ -20,7 +19,7 @@ public class Rename extends IntermediateOperation {
private String from, to;
public Rename(String modelName, String from, String to, IntermediateOperation input) {
- super(modelName, "rename", input != null ? List.of(input) : Collections.emptyList());
+ super(modelName, "rename", input != null ? List.of(input) : List.of());
this.from = from;
this.to = to;
}
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Softmax.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Softmax.java
index c4d728e9661..6d0a6c3b04b 100644
--- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Softmax.java
+++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Softmax.java
@@ -10,7 +10,6 @@ import com.yahoo.tensor.functions.ScalarFunctions;
import com.yahoo.tensor.functions.TensorFunction;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
/**
@@ -77,7 +76,7 @@ public class Softmax extends IntermediateOperation {
private class SoftmaxPartialOperation extends IntermediateOperation {
private SoftmaxPartialOperation(String modelName, String nodeName, List<IntermediateOperation> inputs) {
- super(modelName, nodeName + "_partial" , inputs != null ? inputs : Collections.emptyList());
+ super(modelName, nodeName + "_partial" , inputs != null ? inputs : List.of());
}
@Override
diff --git a/model-integration/src/test/java/ai/vespa/llm/clients/ConfigurableLanguageModelTest.java b/model-integration/src/test/java/ai/vespa/llm/clients/ConfigurableLanguageModelTest.java
index a9f4c3dfac5..35d5cfd3855 100644
--- a/model-integration/src/test/java/ai/vespa/llm/clients/ConfigurableLanguageModelTest.java
+++ b/model-integration/src/test/java/ai/vespa/llm/clients/ConfigurableLanguageModelTest.java
@@ -11,7 +11,6 @@ import com.yahoo.container.jdisc.secretstore.SecretStore;
import org.junit.jupiter.api.Test;
import java.util.Arrays;
-import java.util.Collections;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@@ -85,7 +84,7 @@ public class ConfigurableLanguageModelTest {
}
private static InferenceParameters inferenceParams() {
- return new InferenceParameters(s -> lookupParameter(s, Collections.emptyMap()));
+ return new InferenceParameters(s -> lookupParameter(s, Map.of()));
}
private static InferenceParameters inferenceParams(Map<String, String> params) {
@@ -93,7 +92,7 @@ public class ConfigurableLanguageModelTest {
}
private static InferenceParameters inferenceParamsWithDefaultKey() {
- return new InferenceParameters(MockLLMClient.ACCEPTED_API_KEY, s -> lookupParameter(s, Collections.emptyMap()));
+ return new InferenceParameters(MockLLMClient.ACCEPTED_API_KEY, s -> lookupParameter(s, Map.of()));
}
private LlmClientConfig modelParams(String apiKeySecretName, String endpoint) {