Chuyển tới nội dung chính

Biên dịch cục bộ mô hình CoreML (coreml.compile_model)

Khai báo

compiled_path, err = coreml.compile_model(model_path)

Tham số

  • model_path
    Kiểu chuỗi. Đường dẫn đến mô hình cần biên dịch. iOS 15 trở lên hỗ trợ .mlpackage; iOS 13 và 14 chỉ hỗ trợ định dạng .mlmodel cũ.

    Tài liệu chuyển YOLO11 sang CoreML

    Ví dụ lệnh macOS để chuyển đổi định dạng YOLO11
    # Giả sử đã có Python 3.10. Nếu chưa, hãy tạo môi trường tương ứng (chỉ thử nghiệm với Python 3.10; chưa xác minh phiên bản cao hơn)
    # Cài đặt ultralytics nếu cần
    pip install ultralytics

    # Trên iOS 13 hoặc iOS 14, xuất định dạng .mlmodel cũ
    yolo export format=mlmodel nms=True model=best.pt

    # Trên iOS 15 trở lên, xuất định dạng .mlpackage
    yolo export format=coreml nms=True model=best.pt

    # nms=True là tùy chọn
    # Bật nếu muốn tích hợp sẵn NMS vào mô hình được xuất
    # Bỏ qua nếu định dùng coreml.nms / coreml.rotated_nms trong XXTouch

Giá trị trả về

  • compiled_path
    Kiểu chuỗi | nil. Khi thành công, trả về đường dẫn thư mục mô hình đã biên dịch; khi thất bại, trả về nil.

  • err
    Kiểu chuỗi | nil. Khi thành công, trả về nil; khi thất bại, trả về thông báo lỗi.

Lưu ý

  • Khả dụng từ phiên bản ứng dụng 1.3.8 trở lên.

  • Không hỗ trợ các phiên bản iOS thấp hơn 12.

  • Hàm này biên dịch .mlpackage hoặc .mlmodel thành gói .mlmodelc có thể tải trên thiết bị.

  • Không bảo đảm gói .mlmodelc đã biên dịch có thể dùng trên thiết bị hoặc phiên bản iOS khác.

    Lệnh huấn luyện YOLO11 trên PC dùng GPU NVIDIA
    # Cài đặt khối lượng công việc Phát triển máy tính để bàn bằng C++ của Visual Studio nếu cần
    # https://visualstudio.microsoft.com/
    # Cài đặt bộ công cụ CUDA 11.8 nếu cần
    # https://developer.nvidia.com/cuda-11-8-0-download-archive

    # Giả sử đã có Python 3.10 (chỉ thử nghiệm với Python 3.10; chưa xác minh phiên bản cao hơn)
    pip install ultralytics

    # Cài đặt lại các bản dựng torch tương thích với CUDA 11.8
    pip uninstall torch torchvision torchaudio
    pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu118

    yolo train model=yolo11m.pt data=COCO.yml epochs=300 imgsz=640 device=0
    Lệnh huấn luyện YOLO11 trên macOS
    # Giả sử đã có Python 3.10 (chỉ thử nghiệm với Python 3.10; chưa xác minh phiên bản cao hơn)
    pip install ultralytics

    # Cài đặt các bản dựng torch cho CPU/Metal
    pip install torch torchvision torchaudio

    yolo train model=yolo11m.pt data=COCO.yml epochs=300 imgsz=640 device=mps

Ví dụ

compiled_model_path = XXT_HOME_PATH..'/models/yolo11m.mlmodelc' -- Nơi lưu mô hình đã biên dịch

file.remove(compiled_model_path) -- Luôn biên dịch lại khi thử nghiệm; hãy bỏ dòng này sau khi mô hình đã ổn định

if not file.exists(compiled_model_path) then -- Biên dịch nếu mô hình chưa tồn tại
local tmp_path, err = coreml.compile_model(XXT_HOME_PATH..'/models/yolo11m.mlpackage')
if not tmp_path then
error(err)
end
file.move(tmp_path, compiled_model_path, 'mo')
end