Python 读取protobuf规范验证程序错误:错误。提供的mlmodel是版本3,用于更新版本的xcode

Python 读取protobuf规范验证程序错误:错误。提供的mlmodel是版本3,用于更新版本的xcode,python,xcode,coreml,turi,Python,Xcode,Coreml,Turi,我正在运行这个开箱即用的turi python代码: import turicreate as tc # Load the data data = tc.SFrame('annotations.sframe') # Make a train-test split train_data, test_data = data.random_split(0.8) # Create a model model = tc.object_detector.create(train_data, model

我正在运行这个开箱即用的turi python代码:

import turicreate as tc
# Load the data
data =  tc.SFrame('annotations.sframe')

# Make a train-test split
train_data, test_data = data.random_split(0.8)

# Create a model
model = tc.object_detector.create(train_data, model="darknet-yolo", max_iterations=1, verbose=True)

# Save predictions to an SArray
predictions = model.predict(test_data)

# Evaluate the model and save the results into a dictionary
metrics = model.evaluate(test_data)

# Save the model for later use in Turi Create
model.save('mymodel.model')

# Export for use in Core ML
model.export_coreml('MyCustomObjectDetector.mlmodel')
但在最后一行,我得到了一个错误: model.export_coreml('MyCustomObjectDetector.mlmodel'))

回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site packages/turicreate/toolkit/object_detector/object_detector.py”,第1477行,在export_coreml中
mlmodel=coremltools.models.mlmodel(模型)
文件“/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site packages/coremltools/models/model.py”,第209行,在__
self.\uuuu proxy\uuuu=\u从\u规范(文件名)获取\u proxy\u
文件“/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site packages/coremltools/models/model.py”,第103行,从规范获取代理
返回MLModelProxy(文件名)
RuntimeError:编译模型时出错:“读取protobuf spec.validator错误:提供的.mlmodel是版本3,用于更新版本的Xcode。此版本的Xcode支持模型版本2或更早版本。”。
>>> 
在控制台中

这是否意味着我本地安装的xcode版本需要升级?
在哪里确定.mlmodel版本?“这个版本的Xcode”是什么?

根据上面的评论,我已经降级到turicreate 4.0版本,问题已经为我解决了。看起来最新的测试版(5.1)运行不正常。

我重新安装到最新的Xcode 10测试版,问题仍然存在。请注意,您使用的是测试版软件。WWDC之后的第一个Xcode版本通常比他们在会议上实际展示的要晚一点,并且在beta 2或3中开始可用。耐心点。:-)当我使用更早、更稳定的Xcode版本时,我也遇到了同样的错误。据我所知,当前(iOS 11)版本的Core ML不支持对象检测,即使Turi Create允许您构建此类模型。您可以查看分支
发行版\u 4.3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site-packages/turicreate/toolkits/object_detector/object_detector.py", line 1477, in export_coreml
    mlmodel = coremltools.models.MLModel(model)
  File "/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site-packages/coremltools/models/model.py", line 209, in __init__
    self.__proxy__ = _get_proxy_from_spec(filename)
  File "/Users/amir/anaconda/envs/CowsVision/lib/python2.7/site-packages/coremltools/models/model.py", line 103, in _get_proxy_from_spec
    return _MLModelProxy(filename)
RuntimeError: Error compiling model: "Error reading protobuf spec. validator error: The .mlmodel supplied is of version 3, intended for a newer version of Xcode. This version of Xcode supports model version 2 or earlier.".
>>>