Я видел примеры tenorflow lite для iOS, и они находятся в папке ресурсов. У нас есть какая-то модель на сервере, которую я хочу загрузить и сохранить в каталоге документов и использовать.
Вот как я могу загрузить и сохранить модель в каталоге документов.
class ModelFileManager {
let folderRoute = "Models"
func saveModel(with file: String, data: Data, extension fileExtension: String) {
let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!.appendingPathComponent(folderRoute, isDirectory: true)
if !FileManager.default.fileExists(atPath: documentsDirectory.path) {
do {
try FileManager.default.createDirectory(atPath: documentsDirectory.path, withIntermediateDirectories: true, attributes: nil)
} catch {
print(error)
}
}
let fileURL = documentsDirectory.appendingPathComponent("\(file).\(fileExtension)", isDirectory: false)
do {
try data.write(to: fileURL)
print("File save at \(fileURL.absoluteString)")
} catch {
print("File can't not be save at path \(fileURL.absoluteString), with error : \(error)");
}
}
func fetchModel(for name: String) -> String {
let documentsDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!.appendingPathComponent(folderRoute, isDirectory: true)
let fileURL = documentsDirectory.appendingPathComponent("\(name)", isDirectory: false)
return fileURL.absoluteString
}
}
Итак когда я даю путь к файлу Interpreter
, он говорит
The model is not a valid Flatbuffer file
Failed to create the interpreter with error: Failed to load the given model.