diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-07-04 19:38:57 -0700 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-07-04 19:38:57 -0700 |
commit | 9c9dfeb5e25c1a3698559fa2c7e212e20010e659 (patch) | |
tree | 938c10d5464ab63822c44e1c95980f67806ed31f /model-integration | |
parent | 901655db854a60455b42dc489a5e38820a3b67c0 (diff) |
Implement toFullString
Diffstat (limited to 'model-integration')
23 files changed, 88 insertions, 47 deletions
diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/DimensionRenamer.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/DimensionRenamer.java index 550fb47b4ba..7a0cb4f474a 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/DimensionRenamer.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/DimensionRenamer.java @@ -85,7 +85,6 @@ public class DimensionRenamer { } // TODO: - // Implement toFullString everywhere // Review constraints and skip a==a constraints on creation // Skip arguments with empty type? // Support non-root ops? 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 b03e6889ab5..9f62a27a3b9 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 @@ -60,7 +60,13 @@ public class Argument extends IntermediateOperation { } @Override - public String toString() { + public String operationName() { return "Argument"; } + + @Override + public String toString() { return "Argument(" + standardNamingType + ")"; } + + @Override + public String toFullString() { return "\t" + lazyGetType() + ":\tArgument(" + standardNamingType + ")"; } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ConcatV2.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ConcatV2.java index b82a4458873..7787caa83ce 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ConcatV2.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ConcatV2.java @@ -9,6 +9,7 @@ import com.yahoo.tensor.functions.TensorFunction; import java.util.List; import java.util.Optional; +import java.util.stream.Collectors; public class ConcatV2 extends IntermediateOperation { @@ -104,4 +105,7 @@ public class ConcatV2 extends IntermediateOperation { return new ConcatV2(modelName(), name(), inputs); } + @Override + public String operationName() { return "ConcatV2"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Const.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Const.java index f9b5d770aa0..d13c1ad5f3c 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Const.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Const.java @@ -91,7 +91,15 @@ public class Const extends IntermediateOperation { } @Override + public String operationName() { return "Const"; } + + @Override public String toString() { + return "Const(" + type + ")"; + } + + @Override + public String toFullString() { return "\t" + lazyGetType() + ":\tConst(" + 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 42cdfe27e24..1eaaf705220 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 @@ -64,4 +64,17 @@ public class Constant extends IntermediateOperation { return new Constant(modelName(), name(), type); } + @Override + public String operationName() { return "Constant"; } + + @Override + public String toString() { + return "Constant(" + type + ")"; + } + + @Override + public String toFullString() { + return "\t" + lazyGetType() + ":\tConstant(" + type + ")"; + } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ExpandDims.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ExpandDims.java index 569bd51cc0c..e6cc96d48ad 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ExpandDims.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/ExpandDims.java @@ -107,14 +107,6 @@ public class ExpandDims extends IntermediateOperation { } @Override - public String toString() { - return "ExpandDims(" + asString(inputs().get(0).type()) + ", " + asString(inputs().get(1).type()) + ", " + expandDimensions + ")"; - } - - @Override - public String toFullString() { - return "\t" + lazyGetType() + ":\tExpandDims(" + inputs().get(0).toFullString() + ", " + - inputs().get(1).toFullString() + ", " + expandDimensions + ")"; - } + public String operationName() { return "ExpandDims"; } } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Identity.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Identity.java index d2fc08fc877..5463f645355 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Identity.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Identity.java @@ -37,4 +37,7 @@ public class Identity extends IntermediateOperation { return new Identity(modelName(), name(), inputs); } + @Override + public String operationName() { return "Identity"; } + } 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 1bc424d1641..c3980b8fe93 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 @@ -194,8 +194,6 @@ public abstract class IntermediateOperation { public abstract IntermediateOperation withInputs(List<IntermediateOperation> inputs); - public String toFullString() { return toString(); } - String asString(Optional<OrderedTensorType> type) { return type.map(t -> t.toString()).orElse("(unknown)"); } @@ -228,4 +226,19 @@ public abstract class IntermediateOperation { Optional<List<Value>> getList(String key); } + public abstract String operationName(); + + @Override + public String toString() { + return operationName() + + inputs().stream().map(input -> asString(input.type())).collect(Collectors.joining(", ")) + + ")"; + } + + public String toFullString() { + return "\t" + lazyGetType() + ":\t" + operationName() + + inputs().stream().map(input -> input.toFullString()).collect(Collectors.joining(", ")) + + ")"; + } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Join.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Join.java index 2c62fcf62a5..adb54474812 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Join.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Join.java @@ -117,14 +117,6 @@ public class Join extends IntermediateOperation { } @Override - public String toString() { - return "Join(" + asString(inputs().get(0).type()) + ", " + asString(inputs().get(1).type()) + ", " + operator + ")"; - } - - @Override - public String toFullString() { - return "\t" + lazyGetType() + ":\tJoin(" + inputs().get(0).toFullString() + ", " + - inputs().get(1).toFullString() + ", " + operator + ")"; - } + public String operationName() { return "Join"; } } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Map.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Map.java index cbdb15cd364..ea39e289c48 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Map.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Map.java @@ -40,13 +40,6 @@ public class Map extends IntermediateOperation { } @Override - public String toString() { - return "Map(" + asString(inputs().get(0).type()) + ", " + operator + ")"; - } - - @Override - public String toFullString() { - return "\t" + lazyGetType() + ":\tMap(" + inputs().get(0).toFullString() + ", " + operator + ")"; - } + public String operationName() { return "Map"; } } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/MatMul.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/MatMul.java index 9158eeea02b..434261c6077 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/MatMul.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/MatMul.java @@ -86,13 +86,6 @@ public class MatMul extends IntermediateOperation { } @Override - public String toFullString() { - return "\t" + lazyGetType() + ":\tMatMul(" + inputs().get(0).toFullString() + ", " + inputs().get(1).toFullString() + ")"; - } - - @Override - public String toString() { - return "MatMul(" + asString(inputs().get(0).type()) + ", " + asString(inputs().get(1).type()) + ")"; - } + public String operationName() { return "MatMul"; } } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Mean.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Mean.java index 691e9966bb0..215edf88c4f 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Mean.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Mean.java @@ -113,4 +113,7 @@ public class Mean extends IntermediateOperation { return builder.build(); } + @Override + public String operationName() { return "Mean"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Merge.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Merge.java index 1bf92848d10..671cfe852a7 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Merge.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Merge.java @@ -37,4 +37,7 @@ public class Merge extends IntermediateOperation { return new Merge(modelName(), name(), inputs); } + @Override + public String operationName() { return "Merge"; } + } 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 5ecaaa10c57..35d89cf6ab6 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 @@ -28,4 +28,7 @@ public class NoOp extends IntermediateOperation { return new NoOp(modelName(), name(), inputs); } + @Override + public String operationName() { return "NoOp"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/PlaceholderWithDefault.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/PlaceholderWithDefault.java index b74e5176862..177ef8d5e17 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/PlaceholderWithDefault.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/PlaceholderWithDefault.java @@ -50,4 +50,7 @@ public class PlaceholderWithDefault extends IntermediateOperation { return new PlaceholderWithDefault(modelName(), name(), inputs); } + @Override + public String operationName() { return "PlaceholdeWithDefault"; } + } 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 2dad0fd641e..abc431233be 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 @@ -59,6 +59,9 @@ public class Rename extends IntermediateOperation { return new Rename(modelName(), from, to, inputs.get(0)); } + @Override + public String operationName() { return "Rename"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Reshape.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Reshape.java index 96a52e347d1..a210ed13f5d 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Reshape.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Reshape.java @@ -124,4 +124,7 @@ public class Reshape extends IntermediateOperation { return new ArithmeticNode(children, operators); } + @Override + public String operationName() { return "Reshape"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Select.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Select.java index b02609ca1d9..35a1b6e2b0e 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Select.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Select.java @@ -90,4 +90,7 @@ public class Select extends IntermediateOperation { return new Select(modelName(), name(), inputs); } + @Override + public String operationName() { return "Select"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Shape.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Shape.java index 5aaf379df62..57175092b5c 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Shape.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Shape.java @@ -55,4 +55,7 @@ public class Shape extends IntermediateOperation { this.setConstantValue(new TensorValue(builder.build())); } + @Override + public String operationName() { return "Shape"; } + } 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 b95462baea5..032ffb88a46 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 @@ -42,4 +42,7 @@ public class Softmax extends IntermediateOperation { return new Softmax(modelName(), name(), inputs); } + @Override + public String operationName() { return "SoftMax"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java index db6548ce4ff..56d9b542093 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Squeeze.java @@ -85,4 +85,7 @@ public class Squeeze extends IntermediateOperation { return builder.build(); } + @Override + public String operationName() { return "Squeeze"; } + } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Sum.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Sum.java index 7de6c5b0fb8..c8cd235f50e 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Sum.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Sum.java @@ -113,14 +113,6 @@ public class Sum extends IntermediateOperation { } @Override - public String toString() { - return "Sum(" + asString(inputs().get(0).type()) + ", " + asString(inputs().get(1).type()) + ", " + reduceDimensions + ")"; - } - - @Override - public String toFullString() { - return "\t" + lazyGetType() + ":\tSum[keep_dims=" + shouldKeepDimensions() + "](" + - inputs().get(0).toFullString() + ", " + inputs().get(1).toFullString() + ", " + reduceDimensions + ")"; - } + public String operationName() { return "Sum"; } } diff --git a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Switch.java b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Switch.java index 77ec720e645..4beafc68909 100644 --- a/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Switch.java +++ b/model-integration/src/main/java/ai/vespa/rankingexpression/importer/operations/Switch.java @@ -47,6 +47,9 @@ public class Switch extends IntermediateOperation { return new Switch(modelName(), name(), inputs, port); } + @Override + public String operationName() { return "Switch"; } + } |