Hướng dẫn nhanh về Modal dành cho Ultralytics
Hướng dẫn này cung cấp phần giới thiệu toàn diện về việc chạy Ultralytics YOLO26 trên Modal , bao gồm cả kiến trúc serverless. GPU Suy luận và huấn luyện mô hình.
Modal là gì?
Modal là một nền tảng điện toán đám mây không máy chủ dành cho các tác vụ trí tuệ nhân tạo và học máy . Nó tự động xử lý việc cấp phát, mở rộng quy mô và thực thi — bạn chỉ cần viết mã. Python viết mã cục bộ và Modal chạy mã đó trên đám mây. GPU Điều này làm cho nó trở nên lý tưởng để chạy các mô hình học sâu như YOLO26 mà không cần quản lý cơ sở hạ tầng.
Bạn Sẽ Học Được Gì
- Thiết lập Modal và xác thực
- Đang chạy suy luận YOLO26 trên Modal
- Sử dụng GPU để suy luận nhanh hơn
- Huấn luyện các mô hình YOLO26 trên Modal
Điều Kiện Tiên Quyết
- Tài khoản Modal (đăng ký miễn phí tại modal.com )
- Python Phiên bản 3.9 trở lên đã được cài đặt trên máy tính cục bộ của bạn.
Cài đặt
Cài đặt cửa sổ bật lên Python đóng gói và xác thực:
pip install modal
modal token new
Xác thực
Hàm modal token new Lệnh này sẽ mở một cửa sổ trình duyệt để xác thực tài khoản Modal của bạn. Sau khi xác thực, bạn có thể chạy các lệnh Modal từ terminal.
Đang chạy suy luận YOLO26
Tạo mới Python tệp có tên modal_yolo.py với đoạn mã sau:
"""
Modal + Ultralytics YOLO26 Quickstart
Run: modal run modal_yolo.py.
"""
import modal
app = modal.App("ultralytics-yolo")
image = modal.Image.debian_slim(python_version="3.11").apt_install("libgl1", "libglib2.0-0").pip_install("ultralytics")
@app.function(image=image)
def predict(image_url: str):
"""Run YOLO26 inference on an image URL."""
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model(image_url)
for r in results:
print(f"Detected {len(r.boxes)} objects:")
for box in r.boxes:
print(f" - {model.names[int(box.cls)]}: {float(box.conf):.2f}")
@app.local_entrypoint()
def main():
"""Test inference with sample image."""
predict.remote("https://ultralytics.com/images/bus.jpg")
Tiến hành suy luận:
modal run modal_yolo.py
Kết quả mong đợi:
✓ Initialized. View run at https://modal.com/apps/your-username/main/ap-xxxxxxxx
✓ Created objects.
├── 🔨 Created mount modal_yolo.py
└── 🔨 Created function predict.
Downloading https://github.com/ultralytics/assets/releases/download/v8.4.0/yolo26n.pt to 'yolo26n.pt'...
Downloading https://ultralytics.com/images/bus.jpg to 'bus.jpg'...
image 1/1 /root/bus.jpg: 640x480 4 persons, 1 bus, 377.8ms
Speed: 5.8ms preprocess, 377.8ms inference, 0.3ms postprocess per image at shape (1, 3, 640, 480)
Detected 5 objects:
- bus: 0.92
- person: 0.91
- person: 0.91
- person: 0.87
- person: 0.53
✓ App completed.
Bạn có thể theo dõi quá trình thực thi hàm của mình trong bảng điều khiển Modal:

Sử dụng GPU để suy luận nhanh hơn
Thêm một GPU thêm vào hàm của bạn bằng cách chỉ định gpu tham số:
@app.function(image=image, gpu="T4") # Options: "T4", "A10G", "A100", "H100"
def predict_gpu(image_url: str):
"""Run YOLO26 inference on GPU."""
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
results = model(image_url)
print(results[0].boxes)
| GPU | Bộ nhớ | Tốt nhất cho |
|---|---|---|
| T4 | 16 GB | Suy luận, huấn luyện mô hình nhỏ |
| A10G | 24 GB | Việc làm đào tạo quy mô vừa |
| A100 | 40 GB | Đào tạo quy mô lớn |
| H100 | 80 GB | Hiệu suất tối đa |
Huấn luyện YOLO26 trên Modal
Để huấn luyện, hãy sử dụng GPU và Modal Tập Để lưu trữ lâu dài. Tạo mới Python tệp có tên train_yolo.py:
import modal
app = modal.App("ultralytics-training")
volume = modal.Volume.from_name("yolo-training-vol", create_if_missing=True)
image = modal.Image.debian_slim(python_version="3.11").apt_install("libgl1", "libglib2.0-0").pip_install("ultralytics")
@app.function(image=image, gpu="T4", timeout=3600, volumes={"/data": volume})
def train():
"""Train YOLO26 model on Modal."""
from ultralytics import YOLO
model = YOLO("yolo26n.pt")
model.train(data="coco8.yaml", epochs=3, imgsz=640, project="/data/runs")
@app.local_entrypoint()
def main():
train.remote()
Luyện tập chạy bộ:
modal run train_yolo.py
Lưu trữ dung lượng
Modal Volumes lưu giữ dữ liệu giữa các lần chạy hàm. Trọng số đã huấn luyện được lưu vào /data/runs/detect/train/weights/.
Chúc mừng! Bạn đã thiết lập thành công. Ultralytics YOLO26 trên Modal. Để tìm hiểu thêm:
- Hãy tham khảo tài liệu hướng dẫn của Ultralytics YOLO26 để tìm hiểu các tính năng nâng cao.
- Tìm hiểu về cách huấn luyện các mô hình tùy chỉnh với tập dữ liệu của riêng bạn.
- Hãy truy cập tài liệu Modal để tìm hiểu các tính năng nâng cao của nền tảng.
Câu hỏi thường gặp
Làm sao để chọn đúng? GPU Đối với khối lượng công việc YOLO26 của tôi thì sao?
Để suy luận, một NVIDIA GPU T4 (16 GB) thường là đủ và tiết kiệm chi phí. Đối với việc huấn luyện hoặc các mô hình lớn hơn như YOLO26x, hãy cân nhắc sử dụng GPU A10G hoặc A100.
Chi phí để chạy YOLO26 trên Modal là bao nhiêu?
Modal sử dụng mô hình tính phí theo từng giây. Giá ước tính: CPU ~0,05 đô la/giờ, T4 ~0,59 đô la/giờ, A10G ~1,10 đô la/giờ, A100 ~2,10 đô la/giờ. Vui lòng kiểm tra bảng giá theo từng loại máy bay để biết giá hiện hành.
Tôi có thể sử dụng đội ngũ được đào tạo riêng của mình không? YOLO người mẫu?
Đúng vậy! Tải các mô hình tùy chỉnh từ Modal Volume:
model = YOLO("/data/my_custom_model.pt")
Để biết thêm thông tin về việc huấn luyện các mô hình tùy chỉnh, hãy xem hướng dẫn huấn luyện .