diff options
author | Jon Bratseth <bratseth@gmail.com> | 2023-02-16 20:59:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-16 20:59:06 +0100 |
commit | c60a589c49c6843f7c085fa79ce16b3ab666bcca (patch) | |
tree | 698f0cc09ab8c82e17542b9a679a52575c61f4e4 /config-model/src/main/java/com | |
parent | b56ce405fff8b2a06935f98350b88fd223dd36ad (diff) | |
parent | 8d8f523c32fab2bd396f960496459eb079b03872 (diff) |
Merge pull request #26072 from vespa-engine/arnej/reparse-onnx-inputs
deeper processing of onnx inputs
Diffstat (limited to 'config-model/src/main/java/com')
-rw-r--r-- | config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java index 4e7988a2006..b0f63ebb732 100644 --- a/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java +++ b/config-model/src/main/java/com/yahoo/schema/expressiontransforms/InputRecorder.java @@ -3,13 +3,16 @@ package com.yahoo.schema.expressiontransforms; import com.yahoo.schema.FeatureNames; import com.yahoo.schema.RankProfile; +import com.yahoo.searchlib.rankingexpression.RankingExpression; import com.yahoo.searchlib.rankingexpression.Reference; +import com.yahoo.searchlib.rankingexpression.parser.ParseException; import com.yahoo.searchlib.rankingexpression.rule.CompositeNode; import com.yahoo.searchlib.rankingexpression.rule.ConstantNode; import com.yahoo.searchlib.rankingexpression.rule.ExpressionNode; import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode; import com.yahoo.searchlib.rankingexpression.transform.ExpressionTransformer; +import java.io.StringReader; import java.util.Set; /** @@ -83,7 +86,13 @@ public class InputRecorder extends ExpressionTransformer<RankProfileTransformCon throw new IllegalArgumentException("missing onnx model: " + arg); } for (String onnxInput : model.getInputMap().values()) { - neededInputs.add(onnxInput); + var reader = new StringReader(onnxInput); + try { + var asExpression = new RankingExpression(reader); + transform(asExpression.getRoot(), context); + } catch (ParseException e) { + throw new IllegalArgumentException("illegal onnx input '" + onnxInput + "': " + e.getMessage()); + } } return; } |