mlmodel — ay ang format ng file ng modelo ng machine learning para sa Core ML framework ng Apple, na ginamit para sa pag-iimbak ng mga sinanay na modelo bago ang pagdating ng format na .mlpackage. Ang file na .mlmodel ay isang binary package sa protobuf format, na naglalaman ng paglalarawan ng modelo, mga timbang ng neural network, metadata, at impormasyon tungkol sa mga input/output. Ayon sa Apple Core ML Release Notes (2025), simula sa Xcode 13 at Core ML 4, ang lumang .mlmodel format ay idineklara na deprecated pabor sa .mlpackage.
Mga pangunahing punto
mlmodel — ay isang binary file format na ipinakilala ng Apple noong 2017 kasama ang Core ML framework sa WWDC 2017. Ang format ay batay sa protobuf (Protocol Buffers) na teknolohiya ng Google.
.mlmodel ay ang tanging Core ML format mula 2017 hanggang 2021. Milyun-milyong modelo mula sa TensorFlow, Keras, PyTorch, Caffe, scikit-learn at iba pang mga library ang na-convert sa pamamagitan ng coremltools.
Ang mlmodel file ay nag-iimbak ng modelo sa compact binary representation. Ang laki ay mula sa sampu-sampung KB hanggang GB. Sinusuportahan ang lahat ng uri ng Core ML model.
| Katangian | mlmodel |
|---|---|
| Format | Binary (protobuf) |
| Pagbasa | Hindi nababasa |
| Versioning | Wala |
| Metadata | Sa protobuf schema |
| Git-friendly | Hindi |
Ang panloob na istraktura ng .mlmodel ay tinutukoy ng protobuf schema sa CoreML.framework. Mga seksyon: modelDescription, modelParameters, preprocessing, postprocessing.
modelDescription (MLModelDescription) ay naglalaman ng pangalan ng modelo, may-akda, bersyon, paglalarawan, lisensya, at paglalarawan ng lahat ng input/output parameter.
modelParameters ay naglalaman ng mga timbang at parameter ng sinanay na modelo. Para sa neural networks, ito ay isang array ng NeuralNetworkLayer.
preprocessing ay naglalarawan ng mga hakbang sa pre-processing: Scaler, ImagePreprocessing, OneHotEncoder, FeatureVectorizer.
mlpackage — ay ang bagong generation format para sa Core ML models, ipinakilala sa WWDC 2021. Ang .mlpackage ay isang directory (package) na may file structure.
| Parameter | mlmodel | mlpackage |
|---|---|---|
| Uri | Isang binary file | Direktoryo (package) |
| Metadata | Binary protobuf | JSON |
| Git diff | Walang silbi | Gumagana |
| Versioning | Manual | Awtomatiko |
| Custom layers | Wala | Sinusuportahan |
| Status | Deprecated | Kasalukuyan |
.mlpackage ay naglalaman ng: ModelCI/, Data/, Metadata.json, Model.json, Manifests/.
Conversion sa dalawang paraan: awtomatiko sa Xcode o manual sa pamamagitan ng coremltools sa Python.
import coremltools as ct
model = ct.models.MLModel(
"OldModel.mlmodel"
)
model.author = "IT Sectr"
model.short_description = "Converted from mlmodel"
model.version = "2.0"
model.save("NewModel.mlpackage")
Kapag nagdagdag ng .mlmodel sa Xcode project, awtomatikong nagpapatakbo ang system ng Model Compiler sa build.
Nagbibigay ang coremltools ng ct.utils.compare_models() para sa paghahambing ng mga prediction. Pinapayagang pagkakaiba para sa Float32 ay maximum na 1e-5.
Ang backward compatibility ng .mlmodel ay garantisado sa lahat ng kasalukuyang bersyon ng iOS at macOS.
Simula iOS 18, hindi na sinusuportahan ng Core ML ang direktang pag-load ng .mlmodel.
Ang buong suporta para sa .mlmodel ay inaasahang magtatapos sa iOS 20-21 (2026-2027).
.mlmodel ay matatagpuan pa rin sa mga umiiral na proyekto at ilang senaryo.
Mga proyektong sinimulan bago ang 2021 ay maaaring maglaman ng dose-dosenang .mlmodel models.
CI/CD pipelines na gumagamit ng coremltools 4.x ay nag-e-export sa .mlmodel bilang default.
Mga library na inilathala bago ang 2021 ay maaaring maglaman ng .mlmodel models.
Ang pagtatrabaho sa deprecated .mlmodel ay may ilang karaniwang problema.
Kapag nagdagdag ng .mlmodel sa Xcode 13+ lumalabas ang babala: 'mlmodel' format is deprecated. Use 'mlpackage' instead.
.mlmodel na ginawa gamit ang lumang coremltools ay maaaring hindi magbukas sa iOS 16+.
.mlmodel na naglalaman ng custom layers ay hindi direktang ma-convert.
Mga madalas itanong
mlmodel — deprecated binary file format para sa Core ML models.
mlmodel — isang binary file. mlpackage — directory na may JSON metadata.
Sa pamamagitan ng Xcode, coremltools, o Netron.
Inirerekomenda. Hindi available ang mga bagong Core ML feature para sa .mlmodel.
Sinusuportahan ng iOS 18+ ang .mlmodel lamang sa backward compatibility mode.
Buod
Gagawa kami ng mobile application na turnkey
Gumagawa ang IT Sectr ng mga iOS at Android application para sa mga startup at negosyo mula noong 2017. Magpapayo kami sa iyo at magmumungkahi ng pinakamahusay na solusyon.
Basahin din