在我对MLModel
. 似乎一旦您运行第一个预测,它就会加热模型。找不到任何关于它的官方信息。
预热模型的正确方法是什么?在应用程序启动时使用虚拟数据在异步线程上调用它?
正如@Alladinian 提到的,从 iOS 14 开始,您可以使用该MLModel.load(contentsOf:...)
功能。
这是预加载本地.mlmodel
文件的用法示例:
if let url = Bundle.main.url(forResource: "myModel", withExtension: "mlmodelc") {
let config = MLModelConfiguration()
MLModel.load(contentsOf: url, configuration: config) { [weak self] result in
switch result {
case .success(let model):
print("Model loaded and ready.")
let modelWrapper = MyModelWrapper(model: model)
case .failure(let error):
print("Error loading model: \(error)")
}
}
}
如果要预加载外部获取的模型,请确保使用MLModel.compileModel(at:)
.