当使用SOLR的MultipleAdditiveTreesModel和NeuralNetworkModel类时,您的模型是在加载到模型存储中的JSON中定义的。
据我所知,如果将复杂的树模型和神经网络(NN)模型序列化成JSON,它们可能会变得非常大。我认为某些NN模型在序列化到JSON时可以轻松地超过500 NN。
该插件的文档承认,加载“大型”模型可能会因为动物园管理员限制(ref:https://lucene.apache.org/solr/guide/8_4/learning-to-rank.html#using-large-models)而无法加载。当单击某个可能的修复程序时,它会指出,在默认情况下,限制是1MB (!?)。
Solr插件应该只用于简单的用例吗?在这种情况下,您可以使模型足够简单,在序列化时可以保持<10 be?
发布于 2020-08-30 14:38:44
根据Solr文档,您可以使用DefaultWrapperModel并将模型文件放在磁盘上:
在solrconfig的lib部分中添加模型的路径:
<lib dir="/path/to" regex="models" />然后,配置您的模型:
{
"store" : "largeModelsFeatureStore",
"name" : "myWrapperModel",
"class" : "org.apache.solr.ltr.model.DefaultWrapperModel",
"params" : {
"resource" : "myModel.json"
}
}并以model=myWrapperModel的形式访问重命名查询中的模型。
https://lucene.apache.org/solr/guide/8_4/learning-to-rank.html#using-large-models
https://stackoverflow.com/questions/60485185
复制相似问题