Meet YOLO26: next-gen vision AI.

Link to this sectionXuất sang định dạng model TF.js từ định dạng model YOLO26#

Việc triển khai các model machine learning trực tiếp trên trình duyệt hoặc Node.js có thể khá phức tạp. Bạn cần đảm bảo định dạng model của mình được tối ưu hóa để đạt hiệu suất cao hơn, nhờ đó model có thể chạy các ứng dụng tương tác cục bộ trên thiết bị của người dùng. Định dạng model TensorFlow.js, hay TF.js, được thiết kế để sử dụng năng lượng tối thiểu trong khi vẫn mang lại hiệu suất nhanh chóng.

Tính năng 'xuất sang định dạng model TF.js' cho phép bạn tối ưu hóa các model Ultralytics YOLO26 để thực hiện object detection suy luận tốc độ cao và chạy cục bộ. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn cách chuyển đổi model sang định dạng TF.js, giúp model của bạn hoạt động tốt hơn trên nhiều trình duyệt cục bộ và ứng dụng Node.js.

Link to this sectionTại sao bạn nên xuất sang TF.js?#

Việc xuất các model machine learning sang TensorFlow.js, được phát triển bởi đội ngũ TensorFlow như một phần của hệ sinh thái TensorFlow rộng lớn hơn, mang lại nhiều lợi thế cho việc triển khai các ứng dụng machine learning. Nó giúp nâng cao quyền riêng tư và bảo mật của người dùng bằng cách giữ dữ liệu nhạy cảm trên thiết bị. Hình ảnh dưới đây minh họa kiến trúc TensorFlow.js và cách các model machine learning được chuyển đổi và triển khai trên cả trình duyệt web lẫn Node.js.

TensorFlow.js browser ML inference architecture

Chạy model cục bộ cũng làm giảm độ trễ và mang lại trải nghiệm người dùng phản hồi tốt hơn. TensorFlow.js cũng đi kèm với các khả năng ngoại tuyến (offline), cho phép người dùng sử dụng ứng dụng của bạn ngay cả khi không có kết nối internet. TF.js được thiết kế để thực thi hiệu quả các model phức tạp trên các thiết bị có tài nguyên hạn chế vì nó được tối ưu hóa cho khả năng mở rộng, với hỗ trợ tăng tốc GPU.

Link to this sectionCác tính năng chính của TF.js#

Dưới đây là các tính năng chính khiến TF.js trở thành công cụ mạnh mẽ cho các nhà phát triển:

  • Hỗ trợ đa nền tảng: TensorFlow.js có thể được sử dụng trong cả môi trường trình duyệt và Node.js, mang lại sự linh hoạt khi triển khai trên các nền tảng khác nhau. Nó giúp các nhà phát triển xây dựng và triển khai ứng dụng dễ dàng hơn.

  • Hỗ trợ nhiều Backend: TensorFlow.js hỗ trợ nhiều backend để tính toán bao gồm CPU, WebGL để tăng tốc GPU, WebAssembly (WASM) để đạt tốc độ thực thi gần như native, và WebGPU cho các khả năng machine learning nâng cao trên trình duyệt.

  • Khả năng ngoại tuyến: Với TensorFlow.js, các model có thể chạy trong trình duyệt mà không cần kết nối internet, giúp phát triển các ứng dụng có thể hoạt động ngoại tuyến.

Link to this sectionCác tùy chọn triển khai với TensorFlow.js#

Trước khi đi sâu vào quy trình xuất model YOLO26 sang định dạng TF.js, hãy cùng khám phá một số kịch bản triển khai điển hình mà định dạng này được sử dụng.

TF.js cung cấp hàng loạt tùy chọn để triển khai các model machine learning của bạn:

  • Ứng dụng ML trên trình duyệt: Bạn có thể xây dựng các ứng dụng web chạy model machine learning trực tiếp trong trình duyệt. Nhu cầu tính toán phía server được loại bỏ và tải trọng server được giảm bớt.

  • Ứng dụng Node.js: TensorFlow.js cũng hỗ trợ triển khai trong môi trường Node.js, cho phép phát triển các ứng dụng machine learning phía server. Nó đặc biệt hữu ích cho các ứng dụng yêu cầu sức mạnh xử lý của server hoặc truy cập vào dữ liệu phía server.

  • Tiện ích mở rộng Chrome (Chrome Extensions): Một kịch bản triển khai thú vị là tạo các tiện ích mở rộng Chrome với TensorFlow.js. Ví dụ, bạn có thể phát triển một tiện ích cho phép người dùng nhấp chuột phải vào hình ảnh trên bất kỳ trang web nào để phân loại nó bằng một model ML đã được huấn luyện trước. TensorFlow.js có thể được tích hợp vào trải nghiệm duyệt web hàng ngày để cung cấp thông tin chi tiết ngay lập tức hoặc các cải tiến dựa trên machine learning.

Link to this sectionXuất model YOLO26 sang TensorFlow.js#

Bạn có thể mở rộng khả năng tương thích của model và sự linh hoạt trong triển khai bằng cách chuyển đổi model YOLO26 sang TF.js.

Link to this sectionCài đặt#

Để cài đặt gói cần thiết, hãy chạy lệnh sau:

Cài đặt
# Install the required package for YOLO26
pip install ultralytics

Để có hướng dẫn chi tiết và các phương pháp tốt nhất liên quan đến quy trình cài đặt, hãy kiểm tra hướng dẫn cài đặt Ultralytics của chúng tôi. Trong quá trình cài đặt các gói cần thiết cho YOLO26, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo hướng dẫn các vấn đề thường gặp để tìm giải pháp và mẹo xử lý.

Link to this sectionCách sử dụng#

Tất cả các model Ultralytics YOLO26 đều được thiết kế để hỗ trợ xuất dữ liệu ngay lập tức, giúp dễ dàng tích hợp chúng vào quy trình triển khai ưa thích của bạn. Bạn có thể xem danh sách đầy đủ các định dạng xuất và tùy chọn cấu hình được hỗ trợ để chọn thiết lập tốt nhất cho ứng dụng của mình.

Định dạng TF.js chỉ chỉ dành cho xuất (export-only) trong Ultralytics — PredictValidate không khả dụng cục bộ. Hãy triển khai model đã xuất trong trình duyệt hoặc ứng dụng Node.js với runtime TensorFlow.js.

Export
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo26n_web_model'
Dự đoán và Xác thực (Predict and Validate)

Ultralytics không cung cấp backend suy luận TF.js cục bộ, vì vậy yolo predictyolo val không thể tải _web_model. Thay vào đó, hãy chạy model đã xuất với runtime TensorFlow.js trong ứng dụng web hoặc Node.js của bạn.

Link to this sectionĐối số xuất#

Đối sốLoạiMặc địnhMô tả
formatstr'tfjs'Định dạng đích cho model được xuất, xác định khả năng tương thích với nhiều môi trường triển khai khác nhau.
imgszint hoặc tuple640Kích thước hình ảnh mong muốn cho đầu vào của model. Có thể là một số nguyên cho hình ảnh vuông hoặc một tuple (height, width) cho các kích thước cụ thể.
halfboolFalseKích hoạt lượng tử hóa FP16 (độ chính xác một nửa), giúp giảm kích thước model và có khả năng tăng tốc độ suy luận trên các phần cứng được hỗ trợ.
int8boolFalseKích hoạt lượng tử hóa INT8, giúp nén model thêm nữa và tăng tốc độ suy luận với mức giảm accuracy tối thiểu, chủ yếu dành cho các thiết bị biên (edge devices).
nmsboolFalseThêm Non-Maximum Suppression (NMS), rất quan trọng cho việc hậu xử lý phát hiện chính xác và hiệu quả.
batchint1Xác định kích thước suy luận batch của mô hình xuất hoặc số lượng ảnh tối đa mà mô hình xuất sẽ xử lý đồng thời ở chế độ predict.
datastr'coco8.yaml'Đường dẫn đến tệp cấu hình dataset (mặc định: coco8.yaml), rất cần thiết cho việc lượng tử hóa.
fractionfloat1.0Chỉ định tỷ lệ phần trăm của dataset được sử dụng để hiệu chuẩn lượng tử hóa INT8. Cho phép hiệu chuẩn trên một tập con của toàn bộ dataset, hữu ích cho các thử nghiệm hoặc khi tài nguyên bị hạn chế. Nếu không được chỉ định khi đã bật INT8, toàn bộ dataset sẽ được sử dụng.
devicestrNoneChỉ định thiết bị để xuất: CPU (device=cpu), MPS cho Apple silicon (device=mps).

Để biết thêm chi tiết về quy trình xuất, hãy truy cập trang tài liệu Ultralytics về xuất dữ liệu.

Link to this sectionTriển khai model TensorFlow.js YOLO26 đã xuất#

Giờ đây khi bạn đã xuất model YOLO26 sang định dạng TF.js, bước tiếp theo là triển khai nó. Ultralytics không cung cấp backend suy luận TF.js cục bộ, vì vậy _web_model được xuất ra có mục đích chạy trực tiếp với runtime TensorFlow.js trong trình duyệt hoặc ứng dụng Node.js.

Để có hướng dẫn chuyên sâu về việc triển khai các model TF.js của bạn, hãy xem qua các tài nguyên sau:

Link to this sectionTóm tắt#

Trong hướng dẫn này, chúng ta đã học cách xuất các model Ultralytics YOLO26 sang định dạng TensorFlow.js. Bằng cách xuất sang TF.js, bạn có được sự linh hoạt để tối ưu hóa, triển khai và mở rộng các model YOLO26 của mình trên nhiều nền tảng khác nhau.

Để biết thêm chi tiết về cách sử dụng, hãy truy cập tài liệu chính thức của TensorFlow.js.

Để biết thêm thông tin về việc tích hợp Ultralytics YOLO26 với các nền tảng và framework khác, đừng quên xem qua trang hướng dẫn tích hợp của chúng tôi. Trang này chứa đầy các tài nguyên tuyệt vời giúp bạn tận dụng tối đa YOLO26 trong các dự án của mình.

Link to this sectionCâu hỏi thường gặp (FAQ)#

Link to this sectionLàm thế nào để tôi xuất model Ultralytics YOLO26 sang định dạng TensorFlow.js?#

Việc xuất model Ultralytics YOLO26 sang định dạng TensorFlow.js (TF.js) rất đơn giản. Bạn có thể làm theo các bước sau:

Cách sử dụng
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF.js format
model.export(format="tfjs")  # creates '/yolo26n_web_model'

# Deploy the exported '_web_model' with the TensorFlow.js runtime in a browser or Node.js app.
# Ultralytics does not provide a local TF.js inference backend.

Để biết thêm chi tiết về các tùy chọn xuất được hỗ trợ, hãy truy cập trang tài liệu Ultralytics về các tùy chọn triển khai.

Link to this sectionTại sao tôi nên xuất model YOLO26 của mình sang TensorFlow.js?#

Việc xuất model YOLO26 sang TensorFlow.js mang lại nhiều lợi thế, bao gồm:

  1. Thực thi cục bộ: Các model có thể chạy trực tiếp trong trình duyệt hoặc Node.js, giúp giảm độ trễ và nâng cao trải nghiệm người dùng.
  2. Hỗ trợ đa nền tảng: TF.js hỗ trợ nhiều môi trường, cho phép sự linh hoạt trong triển khai.
  3. Khả năng ngoại tuyến: Cho phép các ứng dụng hoạt động mà không cần kết nối internet, đảm bảo tính tin cậy và quyền riêng tư.
  4. Tăng tốc GPU: Tận dụng WebGL để tăng tốc GPU, tối ưu hóa hiệu suất trên các thiết bị có tài nguyên hạn chế.

Link to this sectionTensorFlow.js mang lại lợi ích gì cho các ứng dụng machine learning trên trình duyệt?#

TensorFlow.js được thiết kế đặc biệt để thực thi hiệu quả các model ML trong trình duyệt và môi trường Node.js. Đây là cách nó mang lại lợi ích cho các ứng dụng trên trình duyệt:

  • Giảm độ trễ: Chạy model machine learning cục bộ, mang lại kết quả tức thì mà không phụ thuộc vào các phép tính phía server.
  • Cải thiện quyền riêng tư: Giữ dữ liệu nhạy cảm trên thiết bị của người dùng, giảm thiểu rủi ro bảo mật.
  • Cho phép sử dụng ngoại tuyến: Các model có thể hoạt động mà không cần kết nối internet, đảm bảo chức năng ổn định.
  • Hỗ trợ nhiều backend: Cung cấp sự linh hoạt với các backend như CPU, WebGL, WebAssembly (WASM) và WebGPU cho các nhu cầu tính toán khác nhau.

Bạn muốn tìm hiểu thêm về TF.js? Hãy xem hướng dẫn chính thức về TensorFlow.js.

Link to this sectionCác tính năng chính của TensorFlow.js để triển khai model YOLO26 là gì?#

Các tính năng chính của TensorFlow.js bao gồm:

  • Hỗ trợ đa nền tảng: TF.js có thể được sử dụng trong cả trình duyệt web và Node.js, mang lại sự linh hoạt triển khai rộng rãi.
  • Nhiều backend: Hỗ trợ CPU, WebGL để tăng tốc GPU, WebAssembly (WASM) và WebGPU cho các hoạt động nâng cao.
  • Khả năng ngoại tuyến: Các model có thể chạy trực tiếp trong trình duyệt mà không cần kết nối internet, khiến nó trở nên lý tưởng cho việc phát triển các ứng dụng web phản hồi nhanh.

Để biết các kịch bản triển khai và thông tin chuyên sâu hơn, hãy xem phần của chúng tôi về Tùy chọn triển khai với TensorFlow.js.

Link to this sectionTôi có thể triển khai model YOLO26 trên các ứng dụng Node.js phía server bằng cách sử dụng TensorFlow.js không?#

Có, TensorFlow.js cho phép triển khai các model YOLO26 trên môi trường Node.js. Điều này cho phép các ứng dụng machine learning phía server hưởng lợi từ sức mạnh xử lý của server và truy cập vào dữ liệu phía server. Các trường hợp sử dụng điển hình bao gồm xử lý dữ liệu thời gian thực và các pipeline machine learning trên backend server.

Để bắt đầu với việc triển khai Node.js, hãy tham khảo hướng dẫn Chạy TensorFlow.js trong Node.js từ TensorFlow.

Bình luận