diff options
author | Harald Musum <musum@verizonmedia.com> | 2021-05-24 22:04:25 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-24 22:04:25 +0200 |
commit | 0e3770ebac4ae1752064545221a0895aa3dee866 (patch) | |
tree | 4dffcc45ca43e9fee46773aef14f5b16dddf70eb /config-model/src | |
parent | 14ae655d9dfe0aa694cd75c041a21306d83eedf6 (diff) |
Revert "Produce ranking-expressions config."
Diffstat (limited to 'config-model/src')
13 files changed, 77 insertions, 180 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java b/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java index efd9ed5e88f..6ac73ad45a9 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/ImmutableSearch.java @@ -28,7 +28,6 @@ public interface ImmutableSearch { Reader getRankingExpression(String fileName); ApplicationPackage applicationPackage(); RankingConstants rankingConstants(); - RankExpressionFiles rankExpressionFiles(); OnnxModels onnxModels(); Stream<ImmutableSDField> allImportedFields(); diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java index 61fd2e3fb41..74a9ef25615 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java @@ -78,8 +78,6 @@ public class RankProfile implements Cloneable { /** The ranking expression to be used for second phase */ private RankingExpression secondPhaseRanking = null; - private Set<String> externalFileExpressions = new HashSet<>(); - /** Number of hits to be reranked in second phase, -1 means use default */ private int rerankCount = -1; @@ -165,10 +163,6 @@ public class RankProfile implements Cloneable { return search != null ? search.rankingConstants() : model.rankingConstants(); } - public RankExpressionFiles rankExpressionFiles() { - return search != null ? search.rankExpressionFiles() : model.rankExpressionFiles(); - } - public Map<String, OnnxModel> onnxModels() { return search != null ? search.onnxModels().asMap() : Collections.emptyMap(); } @@ -374,41 +368,9 @@ public class RankProfile implements Cloneable { this.firstPhaseRanking = rankingExpression; } - public String getFirstPhaseFile() { - String name = FIRST_PHASE; - if (externalFileExpressions.contains(name)) { - return rankExpressionFiles().get(name).getFileName(); - } - if ((firstPhaseRanking == null) && (getInherited() != null)) { - return getInherited().getFirstPhaseFile(); - } - return null; - } - - public String getSecondPhaseFile() { - String name = SECOND_PHASE; - if (externalFileExpressions.contains(name)) { - return rankExpressionFiles().get(name).getFileName(); - } - if ((secondPhaseRanking == null) && (getInherited() != null)) { - return getInherited().getSecondPhaseFile(); - } - return null; - } - - public String getExpressionFile(String name) { - if (externalFileExpressions.contains(name)) { - return rankExpressionFiles().get(name).getFileName(); - } - if (getInherited() != null) { - return getInherited().getExpressionFile(name); - } - return null; - } - public void setFirstPhaseRanking(String expression) { try { - this.firstPhaseRanking = parseRankingExpression(FIRST_PHASE, expression); + this.firstPhaseRanking = parseRankingExpression("firstphase", expression); } catch (ParseException e) { throw new IllegalArgumentException("Illegal first phase ranking function", e); @@ -701,25 +663,18 @@ public class RankProfile implements Cloneable { } } - private static String extractFileName(String expression) { + private Reader openRankingExpressionReader(String expName, String expression) { + if ( ! expression.startsWith("file:")) return new StringReader(expression); + String fileName = expression.substring("file:".length()).trim(); if ( ! fileName.endsWith(ApplicationPackage.RANKEXPRESSION_NAME_SUFFIX)) fileName = fileName + ApplicationPackage.RANKEXPRESSION_NAME_SUFFIX; - return fileName; - } - - private Reader openRankingExpressionReader(String expName, String expression) { - if ( ! expression.startsWith("file:")) return new StringReader(expression); - - String fileName = extractFileName(expression); File file = new File(fileName); - if ( ! file.isAbsolute() && file.getPath().contains("/")) // See ticket 4102122 + if ( ! (file.isAbsolute()) && file.getPath().contains("/")) // See ticket 4102122 throw new IllegalArgumentException("In " + getName() +", " + expName + ", ranking references file '" + file + "' in subdirectory, which is not supported."); - rankExpressionFiles().add(new RankExpressionFile(expName, fileName)); - externalFileExpressions.add(expName); return search.getRankingExpression(fileName); } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/Search.java b/config-model/src/main/java/com/yahoo/searchdefinition/Search.java index a90cc7c9450..9b7434dccab 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/Search.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/Search.java @@ -15,7 +15,6 @@ import com.yahoo.searchdefinition.document.TemporaryImportedFields; import com.yahoo.searchdefinition.document.annotation.SDAnnotationType; import com.yahoo.vespa.documentmodel.DocumentSummary; import com.yahoo.vespa.documentmodel.SummaryField; -import com.yahoo.vespa.model.AbstractService; import java.io.Reader; import java.util.ArrayList; @@ -79,9 +78,6 @@ public class Search implements ImmutableSearch { /** The explicitly defined summaries of this search definition. _Must_ preserve order. */ private final Map<String, DocumentSummary> summaries = new LinkedHashMap<>(); - /** External rank expression files of this */ - private final RankExpressionFiles rankExpressionFiles = new RankExpressionFiles(); - /** Ranking constants of this */ private final RankingConstants rankingConstants = new RankingConstants(); @@ -176,20 +172,11 @@ public class Search implements ImmutableSearch { } @Override - public RankExpressionFiles rankExpressionFiles() { return rankExpressionFiles; } - - @Override public RankingConstants rankingConstants() { return rankingConstants; } @Override public OnnxModels onnxModels() { return onnxModels; } - public void sendTo(Collection<? extends AbstractService> services) { - rankingConstants.sendTo(services); - rankExpressionFiles.sendTo(services); - onnxModels.sendTo(services); - } - public Optional<TemporaryImportedFields> temporaryImportedFields() { return temporaryImportedFields; } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java index 52d99c523ea..4d6ce783947 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java @@ -85,8 +85,7 @@ public class DerivedConfiguration { summaries = new Summaries(search, deployLogger); summaryMap = new SummaryMap(search); juniperrc = new Juniperrc(search); - rankProfileList = new RankProfileList(search, search.rankingConstants(), search.rankExpressionFiles(), attributeFields, - rankProfileRegistry, queryProfiles, importedModels, deployProperties); + rankProfileList = new RankProfileList(search, search.rankingConstants(), attributeFields, rankProfileRegistry, queryProfiles, importedModels, deployProperties); indexingScript = new IndexingScript(search); indexInfo = new IndexInfo(search); indexSchema = new IndexSchema(search); diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java index c0a4117de3e..5337d58fb82 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java @@ -6,8 +6,6 @@ import com.yahoo.config.model.api.ModelContext; import com.yahoo.search.query.profile.QueryProfileRegistry; import com.yahoo.searchdefinition.OnnxModel; import com.yahoo.searchdefinition.OnnxModels; -import com.yahoo.searchdefinition.RankExpressionFile; -import com.yahoo.searchdefinition.RankExpressionFiles; import com.yahoo.searchdefinition.RankProfileRegistry; import com.yahoo.searchdefinition.RankingConstant; import com.yahoo.searchdefinition.RankingConstants; @@ -16,7 +14,6 @@ import com.yahoo.searchdefinition.RankProfile; import com.yahoo.searchdefinition.Search; import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; -import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.model.AbstractService; import java.util.Collection; @@ -28,21 +25,21 @@ import java.util.logging.Logger; * * @author bratseth */ -public class RankProfileList extends Derived implements RankProfilesConfig.Producer { +public class RankProfileList extends Derived implements RankProfilesConfig.Producer, + RankingConstantsConfig.Producer, + OnnxModelsConfig.Producer { private static final Logger log = Logger.getLogger(RankProfileList.class.getName()); private final Map<String, RawRankProfile> rankProfiles = new java.util.LinkedHashMap<>(); private final RankingConstants rankingConstants; - private final RankExpressionFiles rankExpressionFiles; private final OnnxModels onnxModels; public static RankProfileList empty = new RankProfileList(); private RankProfileList() { - rankingConstants = new RankingConstants(); - rankExpressionFiles = new RankExpressionFiles(); - onnxModels = new OnnxModels(); + this.rankingConstants = new RankingConstants(); + this.onnxModels = new OnnxModels(); } /** @@ -53,7 +50,6 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ */ public RankProfileList(Search search, RankingConstants rankingConstants, - RankExpressionFiles rankExpressionFiles, AttributeFields attributeFields, RankProfileRegistry rankProfileRegistry, QueryProfileRegistry queryProfiles, @@ -61,8 +57,7 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ ModelContext.Properties deployProperties) { setName(search == null ? "default" : search.getName()); this.rankingConstants = rankingConstants; - this.rankExpressionFiles = rankExpressionFiles; - onnxModels = search == null ? new OnnxModels() : search.onnxModels(); // as ONNX models come from parsing rank expressions + this.onnxModels = search == null ? new OnnxModels() : search.onnxModels(); // as ONNX models come from parsing rank expressions deriveRankProfiles(rankProfileRegistry, queryProfiles, importedModels, search, attributeFields, deployProperties); } @@ -95,9 +90,11 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ return rankProfiles.get(name); } - public void sendTo(Collection<? extends AbstractService> services) { + public void sendConstantsTo(Collection<? extends AbstractService> services) { rankingConstants.sendTo(services); - rankExpressionFiles.sendTo(services); + } + + public void sendOnnxModelsTo(Collection<? extends AbstractService> services) { onnxModels.sendTo(services); } @@ -111,10 +108,7 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ } } - public void getConfig(RankingExpressionsConfig.Builder builder) { - rankExpressionFiles.asMap().values().forEach((expr) -> builder.expression.add(new RankingExpressionsConfig.Expression.Builder().name(expr.getName()).fileref(expr.getFileReference()))); - } - + @Override public void getConfig(RankingConstantsConfig.Builder builder) { for (RankingConstant constant : rankingConstants.asMap().values()) { if ("".equals(constant.getFileReference())) @@ -127,6 +121,7 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ } } + @Override public void getConfig(OnnxModelsConfig.Builder builder) { for (OnnxModel model : onnxModels.asMap().values()) { if ("".equals(model.getFileReference())) diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java index a829989a281..4aa0a9daaca 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java @@ -232,11 +232,12 @@ public class RawRankProfile implements RankProfilesConfig.Producer { SerializationContext context = new SerializationContext(functionExpressions, null, functionProperties); for (Map.Entry<String, RankProfile.RankingExpressionFunction> e : functions.entrySet()) { String propertyName = RankingExpression.propertyName(e.getKey()); - if (context.serializedFunctions().containsKey(propertyName)) continue; - + if (context.serializedFunctions().containsKey(propertyName)) { + continue; + } String expressionString = e.getValue().function().getBody().getRoot().toString(new StringBuilder(), context, null, null).toString(); - context.addFunctionSerialization(propertyName, expressionString); + context.addFunctionSerialization(RankingExpression.propertyName(e.getKey()), expressionString); for (Map.Entry<String, TensorType> argumentType : e.getValue().function().argumentTypes().entrySet()) context.addArgumentTypeSerialization(e.getKey(), argumentType.getKey(), argumentType.getValue()); if (e.getValue().function().returnType().isPresent()) @@ -352,8 +353,8 @@ public class RawRankProfile implements RankProfilesConfig.Producer { properties.add(new Pair<>(property.getName(), property.getValue())); } } - properties.addAll(deriveRankingPhaseRankProperties(firstPhaseRanking, rankProfile.getFirstPhaseFile(), RankProfile.FIRST_PHASE)); - properties.addAll(deriveRankingPhaseRankProperties(secondPhaseRanking, rankProfile.getSecondPhaseFile(), RankProfile.SECOND_PHASE)); + properties.addAll(deriveRankingPhaseRankProperties(firstPhaseRanking, "firstphase")); + properties.addAll(deriveRankingPhaseRankProperties(secondPhaseRanking, "secondphase")); for (FieldRankSettings settings : fieldRankSettings.values()) { properties.addAll(settings.deriveRankProperties()); } @@ -420,7 +421,7 @@ public class RawRankProfile implements RankProfilesConfig.Producer { return properties; } - private List<Pair<String, String>> deriveRankingPhaseRankProperties(RankingExpression expression, String fileName, String phase) { + private List<Pair<String, String>> deriveRankingPhaseRankProperties(RankingExpression expression, String phase) { List<Pair<String, String>> properties = new ArrayList<>(); if (expression == null) return properties; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java index 85ff134b385..d90a6614501 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java @@ -30,7 +30,6 @@ import com.yahoo.config.model.producer.UserConfigRepo; import com.yahoo.config.provision.AllocatedHosts; import com.yahoo.config.provision.ClusterSpec; import com.yahoo.container.QrConfig; -import com.yahoo.searchdefinition.RankExpressionFiles; import com.yahoo.searchdefinition.RankProfile; import com.yahoo.searchdefinition.RankProfileRegistry; import com.yahoo.searchdefinition.RankingConstants; @@ -126,9 +125,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri /** The global ranking constants of this model */ private final RankingConstants rankingConstants = new RankingConstants(); - /** External rank expression files of this */ - private final RankExpressionFiles rankExpressionFiles = new RankExpressionFiles(); - /** The validation overrides of this. This is never null. */ private final ValidationOverrides validationOverrides; @@ -181,14 +177,12 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri createGlobalRankProfiles(deployState.getDeployLogger(), deployState.getImportedModels(), deployState.rankProfileRegistry(), deployState.getQueryProfiles()); - rankProfileList = new RankProfileList(null, // null search -> global - rankingConstants, - rankExpressionFiles, - AttributeFields.empty, - deployState.rankProfileRegistry(), - deployState.getQueryProfiles().getRegistry(), - deployState.getImportedModels(), - deployState.getProperties()); + this.rankProfileList = new RankProfileList(null, // null search -> global + rankingConstants, AttributeFields.empty, + deployState.rankProfileRegistry(), + deployState.getQueryProfiles().getRegistry(), + deployState.getImportedModels(), + deployState.getProperties()); HostSystem hostSystem = root.hostSystem(); if (complete) { // create a completed, frozen model @@ -262,8 +256,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri /** Returns the global ranking constants of this */ public RankingConstants rankingConstants() { return rankingConstants; } - public RankExpressionFiles rankExpressionFiles() { return rankExpressionFiles; } - /** Creates a mutable model with no services instantiated */ public static VespaModel createIncomplete(DeployState deployState) throws IOException, SAXException { return new VespaModel(new NullConfigModelRegistry(), deployState, false, diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java index d87c6596fa4..7049213ddab 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java @@ -8,8 +8,6 @@ import com.yahoo.log.InvalidLogFormatException; import com.yahoo.log.LogMessage; import com.yahoo.path.Path; import com.yahoo.searchdefinition.OnnxModel; -import com.yahoo.searchdefinition.RankExpressionFile; -import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.defaults.Defaults; import com.yahoo.yolean.Exceptions; import com.yahoo.system.ProcessExecuter; @@ -40,6 +38,7 @@ import java.util.logging.Logger; import java.util.logging.Level; import java.util.ArrayList; import java.util.List; +import java.util.Map; /** * Validate rank setup for all search clusters (rank-profiles, index-schema, attributes configs), validating done @@ -117,61 +116,50 @@ public class RankSetupValidator extends Validator { } private void writeConfigs(String dir, AbstractConfigProducer<?> producer) throws IOException { - RankProfilesConfig.Builder rpcb = new RankProfilesConfig.Builder(); - ((RankProfilesConfig.Producer) producer).getConfig(rpcb); - RankProfilesConfig rpc = new RankProfilesConfig(rpcb); - writeConfig(dir, RankProfilesConfig.getDefName() + ".cfg", rpc); - - IndexschemaConfig.Builder iscb = new IndexschemaConfig.Builder(); - ((IndexschemaConfig.Producer) producer).getConfig(iscb); - IndexschemaConfig isc = new IndexschemaConfig(iscb); - writeConfig(dir, IndexschemaConfig.getDefName() + ".cfg", isc); - - AttributesConfig.Builder acb = new AttributesConfig.Builder(); - ((AttributesConfig.Producer) producer).getConfig(acb); - AttributesConfig ac = new AttributesConfig(acb); - writeConfig(dir, AttributesConfig.getDefName() + ".cfg", ac); - - RankingConstantsConfig.Builder rccb = new RankingConstantsConfig.Builder(); - ((RankingConstantsConfig.Producer) producer).getConfig(rccb); - RankingConstantsConfig rcc = new RankingConstantsConfig(rccb); - writeConfig(dir, RankingConstantsConfig.getDefName() + ".cfg", rcc); - - RankingExpressionsConfig.Builder recb = new RankingExpressionsConfig.Builder(); - ((RankingExpressionsConfig.Producer) producer).getConfig(recb); - RankingExpressionsConfig rec = new RankingExpressionsConfig(recb); - writeConfig(dir, RankingExpressionsConfig.getDefName() + ".cfg", rec); - - OnnxModelsConfig.Builder omcb = new OnnxModelsConfig.Builder(); - ((OnnxModelsConfig.Producer) producer).getConfig(omcb); - OnnxModelsConfig omc = new OnnxModelsConfig(omcb); - writeConfig(dir, OnnxModelsConfig.getDefName() + ".cfg", omc); - - ImportedFieldsConfig.Builder ifcb = new ImportedFieldsConfig.Builder(); - ((ImportedFieldsConfig.Producer) producer).getConfig(ifcb); - ImportedFieldsConfig ifc = new ImportedFieldsConfig(ifcb); - writeConfig(dir, ImportedFieldsConfig.getDefName() + ".cfg", ifc); + RankProfilesConfig.Builder rpcb = new RankProfilesConfig.Builder(); + ((RankProfilesConfig.Producer) producer).getConfig(rpcb); + RankProfilesConfig rpc = new RankProfilesConfig(rpcb); + writeConfig(dir, RankProfilesConfig.getDefName() + ".cfg", rpc); + + IndexschemaConfig.Builder iscb = new IndexschemaConfig.Builder(); + ((IndexschemaConfig.Producer) producer).getConfig(iscb); + IndexschemaConfig isc = new IndexschemaConfig(iscb); + writeConfig(dir, IndexschemaConfig.getDefName() + ".cfg", isc); + + AttributesConfig.Builder acb = new AttributesConfig.Builder(); + ((AttributesConfig.Producer) producer).getConfig(acb); + AttributesConfig ac = new AttributesConfig(acb); + writeConfig(dir, AttributesConfig.getDefName() + ".cfg", ac); + + RankingConstantsConfig.Builder rccb = new RankingConstantsConfig.Builder(); + ((RankingConstantsConfig.Producer) producer).getConfig(rccb); + RankingConstantsConfig rcc = new RankingConstantsConfig(rccb); + writeConfig(dir, RankingConstantsConfig.getDefName() + ".cfg", rcc); + + OnnxModelsConfig.Builder omcb = new OnnxModelsConfig.Builder(); + ((OnnxModelsConfig.Producer) producer).getConfig(omcb); + OnnxModelsConfig omc = new OnnxModelsConfig(omcb); + writeConfig(dir, OnnxModelsConfig.getDefName() + ".cfg", omc); + + ImportedFieldsConfig.Builder ifcb = new ImportedFieldsConfig.Builder(); + ((ImportedFieldsConfig.Producer) producer).getConfig(ifcb); + ImportedFieldsConfig ifc = new ImportedFieldsConfig(ifcb); + writeConfig(dir, ImportedFieldsConfig.getDefName() + ".cfg", ifc); } private void writeExtraVerifyRanksetupConfig(String dir, DocumentDatabase db) throws IOException { String configName = "verify-ranksetup.cfg"; String configContent = ""; - List<String> config = new ArrayList<>(); // Assist verify-ranksetup in finding the actual ONNX model files - for (OnnxModel model : db.getDerivedConfiguration().getSearch().onnxModels().asMap().values()) { - String modelPath = getFileRepositoryPath(model.getFilePath(), model.getFileReference()); - config.add(String.format("file[%d].ref \"%s\"", config.size() / 2, model.getFileReference())); - config.add(String.format("file[%d].path \"%s\"", config.size() / 2, modelPath)); - } - - for (RankExpressionFile expr : db.getDerivedConfiguration().getSearch().rankExpressionFiles().asMap().values()) { - String modelPath = getFileRepositoryPath(expr.getFilePath(), expr.getFileReference()); - config.add(String.format("file[%d].ref \"%s\"", config.size() / 2, expr.getFileReference())); - config.add(String.format("file[%d].path \"%s\"", config.size() / 2, modelPath)); - } - - if ( ! config.isEmpty() ) { + Map<String, OnnxModel> models = db.getDerivedConfiguration().getSearch().onnxModels().asMap(); + if (models.values().size() > 0) { + List<String> config = new ArrayList<>(models.values().size() * 2); + for (OnnxModel model : models.values()) { + String modelPath = getFileRepositoryPath(model.getFilePath(), model.getFileReference()); + config.add(String.format("file[%d].ref \"%s\"", config.size() / 2, model.getFileReference())); + config.add(String.format("file[%d].path \"%s\"", config.size() / 2, modelPath)); + } configContent = StringUtilities.implodeMultiline(config); } IOUtils.writeFile(dir + configName, configContent, false); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java index 317ed0f66c7..4e78f44d0fe 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java @@ -25,7 +25,6 @@ import com.yahoo.search.config.QrStartConfig; import com.yahoo.vespa.config.search.RankProfilesConfig; import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; -import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.model.admin.metricsproxy.MetricsProxyContainer; import com.yahoo.vespa.model.container.component.BindingPattern; import com.yahoo.vespa.model.container.component.Component; @@ -59,7 +58,6 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat RankProfilesConfig.Producer, RankingConstantsConfig.Producer, OnnxModelsConfig.Producer, - RankingExpressionsConfig.Producer, ServletPathsConfig.Producer, ContainerMbusConfig.Producer, MetricsProxyApiConfig.Producer, @@ -235,10 +233,6 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat if (modelEvaluation != null) modelEvaluation.getConfig(builder); } - public void getConfig(RankingExpressionsConfig.Builder builder) { - if (modelEvaluation != null) modelEvaluation.getConfig(builder); - } - @Override public void getConfig(ContainerMbusConfig.Builder builder) { if (mbusParams != null) { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java index 37bfb8821c3..510d2fe3d99 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java @@ -7,7 +7,6 @@ import com.yahoo.searchdefinition.derived.RankProfileList; import com.yahoo.vespa.config.search.RankProfilesConfig; import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; -import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.model.container.component.Handler; import com.yahoo.vespa.model.container.component.SystemBindingPattern; @@ -19,12 +18,10 @@ import java.util.Objects; * * @author bratseth */ - -public class ContainerModelEvaluation implements - RankProfilesConfig.Producer, - RankingConstantsConfig.Producer, - OnnxModelsConfig.Producer, - RankingExpressionsConfig.Producer { +public class ContainerModelEvaluation implements RankProfilesConfig.Producer, + RankingConstantsConfig.Producer, + OnnxModelsConfig.Producer +{ private final static String BUNDLE_NAME = "model-evaluation"; private final static String EVALUATOR_NAME = ModelsEvaluator.class.getName(); @@ -41,7 +38,8 @@ public class ContainerModelEvaluation implements } public void prepare(List<ApplicationContainer> containers) { - rankProfileList.sendTo(containers); + rankProfileList.sendConstantsTo(containers); + rankProfileList.sendOnnxModelsTo(containers); } @Override @@ -59,10 +57,6 @@ public class ContainerModelEvaluation implements rankProfileList.getConfig(builder); } - public void getConfig(RankingExpressionsConfig.Builder builder) { - rankProfileList.getConfig(builder); - } - public static Handler<?> getHandler() { Handler<?> handler = new Handler<>(new ComponentModel(REST_HANDLER_NAME, null, BUNDLE_NAME)); handler.addServerBindings( diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java index 3ca5b9e3a0a..705c48d1c9b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java @@ -39,7 +39,8 @@ public abstract class AbstractSearchCluster extends AbstractConfigProducer<Abstr public void prepareToDistributeFiles(List<SearchNode> backends) { for (SchemaSpec sds : localSDS) { - sds.getSearchDefinition().getSearch().sendTo(backends); + sds.getSearchDefinition().getSearch().rankingConstants().sendTo(backends); + sds.getSearchDefinition().getSearch().onnxModels().sendTo(backends); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java b/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java index 9f0ff7db9f8..8d4c1675bbf 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java @@ -12,7 +12,6 @@ import com.yahoo.vespa.config.search.SummaryConfig; import com.yahoo.vespa.config.search.SummarymapConfig; import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; -import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.config.search.summary.JuniperrcConfig; import com.yahoo.vespa.configdefinition.IlscriptsConfig; @@ -27,7 +26,6 @@ public class DocumentDatabase extends AbstractConfigProducer<DocumentDatabase> i AttributesConfig.Producer, RankProfilesConfig.Producer, RankingConstantsConfig.Producer, - RankingExpressionsConfig.Producer, OnnxModelsConfig.Producer, IndexschemaConfig.Producer, JuniperrcConfig.Producer, @@ -77,11 +75,6 @@ public class DocumentDatabase extends AbstractConfigProducer<DocumentDatabase> i } @Override - public void getConfig(RankingExpressionsConfig.Builder builder) { - derivedCfg.getRankProfileList().getConfig(builder); - } - - @Override public void getConfig(RankingConstantsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/ml/ModelEvaluationTest.java b/config-model/src/test/java/com/yahoo/vespa/model/ml/ModelEvaluationTest.java index 9f18cfb4bd9..e32ad274325 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/ml/ModelEvaluationTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/ml/ModelEvaluationTest.java @@ -98,7 +98,6 @@ public class ModelEvaluationTest { RankingConstantsConfig constantsConfig = new RankingConstantsConfig(cb); RankingExpressionsConfig.Builder ce = new RankingExpressionsConfig.Builder(); - cluster.getConfig(ce); RankingExpressionsConfig expressionsConfig = ce.build(); OnnxModelsConfig.Builder ob = new OnnxModelsConfig.Builder(); |