Theo mặc định, tất cả các tính năng của Bộ công cụ học máy đều sử dụng các mô hình học máy do Google huấn luyện (gọi là mô hình cơ sở). Hướng dẫn này chỉ áp dụng cho các mô hình cơ sở. Xem hướng dẫn về mô hình tuỳ chỉnh tại đây.
Bạn có thể cài đặt các mô hình trong API Bộ công cụ học máy theo một trong ba cách sau:
- Không theo gói: Các mô hình được tải xuống và quản lý thông qua Dịch vụ Google Play.
- Gói: Các mô hình được liên kết tĩnh với ứng dụng của bạn tại thời điểm xây dựng.
- Tải xuống linh hoạt: Mô hình được tải xuống theo yêu cầu.
Các đường dẫn cài đặt được hỗ trợ cho mỗi API
Bảng dưới đây cho biết đường dẫn cài đặt mô hình mà từng tính năng của Bộ công cụ học máy hỗ trợ:
| Unbundled | Gói | Tải xuống linh động | |
| Nhận dạng văn bản phiên bản 2 | ✅ | ✅ | |
| Phát hiện khuôn mặt | ✅ | ✅ | |
| Phát hiện lưới khuôn mặt | ✅ | ||
| Phát hiện tư thế | ✅ | ||
| Phân đoạn ảnh tự chụp | ✅ | ||
| Quét mã vạch | ✅ | ✅ | |
| Gắn nhãn hình ảnh | ✅ | ✅ | |
| Phát hiện đối tượng và theo dõi | ✅ | ||
| Nhận dạng mực kỹ thuật số | ✅ | ||
| Trình quét tài liệu | ✅ | ||
| Phân đoạn chủ thể | ✅ | ||
| Trình quét mã của Google | ✅ | ||
| Nhận dạng ngôn ngữ | ✅ | ✅ | |
| Bản dịch | ✅ | ||
| Trả lời thông minh | ✅ | ✅ | |
| Trích xuất thực thể | ✅ |
Hướng dẫn dành riêng cho API cho biết các lựa chọn cài đặt có sẵn cho API đó.
Điểm khác biệt chính giữa các lựa chọn cài đặt
| Không theo gói | Gói | Tải xuống linh động | |
| Mô hình được lưu trữ ở đâu? | Nằm trong Dịch vụ Google Play và không được tính vào bộ nhớ mà ứng dụng này sử dụng | Được lưu trong bộ nhớ dành riêng cho ứng dụng sau khi cài đặt | Được lưu trong bộ nhớ dành riêng cho ứng dụng sau khi tải mô hình xuống |
| Kích thước mô hình ảnh hưởng đến kích thước ứng dụng như thế nào? | Không ảnh hưởng đến kích thước ứng dụng | Trực tiếp góp phần vào kích thước ứng dụng | Không ảnh hưởng đến kích thước ứng dụng nhưng làm tăng bộ nhớ dành riêng cho ứng dụng |
| Khi nào các mô hình được cập nhật? | Tự động cập nhật khi có phiên bản mới hơn | Cần cập nhật ứng dụng để cập nhật mô hình | Cần cập nhật ứng dụng để cập nhật mô hình |
| Khi nào mô hình được tải xuống? | Bạn phải tải mô hình xuống trước khi sử dụng | Tất cả các mô hình và tính năng đều được tích hợp sẵn khi cài đặt ứng dụng, nên bạn có thể sử dụng ngay lập tức | Bạn phải quản lý việc tải xuống, cập nhật và xoá mô hình theo cách thủ công bằng API RemoteModelManager |
| Khi nào các mô hình bị xoá khỏi thiết bị? | Dịch vụ Google Play sẽ chỉ xoá mô hình khỏi bộ nhớ nếu tất cả ứng dụng phụ thuộc vào mô hình đó đều bị gỡ cài đặt | Mô hình sẽ bị xoá khỏi bộ nhớ dành riêng cho ứng dụng khi ứng dụng bị gỡ cài đặt | Các mô hình đã tải xuống sẽ bị xoá khỏi bộ nhớ dành riêng cho ứng dụng khi ứng dụng bị gỡ cài đặt |
Cách chọn giữa gói gộp và gói riêng lẻ
Nếu một API hỗ trợ cả lựa chọn cài đặt theo gói và không theo gói:
Hãy sử dụng lựa chọn gói nếu bạn ưu tiên:
- Chức năng hoàn chỉnh của tính năng ngay sau khi cài đặt ứng dụng
- Chức năng của tính năng khi không có kết nối mạng sau khi cài đặt ứng dụng
Hãy sử dụng lựa chọn không theo gói nếu bạn ưu tiên:
- Kích thước ứng dụng nhỏ hơn
- Dịch vụ Google Play tự động cập nhật mô hình
Cách tải mô hình xuống
Khi sử dụng tuỳ chọn mô hình không theo gói, bạn có thể chỉ định cách tải mô hình xuống thiết bị:
Bạn có thể bật tính năng tải mô hình xuống tại thời điểm cài đặt bằng cách thêm nội dung khai báo vào tệp
AndroidManifest.xmlcủa ứng dụng. Ví dụ: đoạn mã dưới đây cho biết cách định cấu hình ứng dụng để tự động tải mô hình Quét mã vạch xuống sau khi ứng dụng được cài đặt qua Cửa hàng Play:<application ...> ... <meta-data android:name="com.google.mlkit.vision.DEPENDENCIES" android:value="barcode" > <!-- To use multiple models: android:value="barcode,model2,model3" --> </application>Bạn có thể yêu cầu tải xuống rõ ràng thông qua ModuleInstallClient API của Dịch vụ Google Play.
Nếu bạn không bật tính năng tải mô hình xuống tại thời điểm cài đặt hoặc không yêu cầu tải xuống rõ ràng, thì mô hình sẽ được tải xuống trong lần đầu tiên bạn chạy tính năng này. Yêu cầu suy luận sẽ không thành công cho đến khi quá trình tải xuống hoàn tất.
Cách cập nhật mô hình
Cách cập nhật mô hình khi sử dụng mô hình đi kèm hoặc tuỳ chọn mô hình được tải xuống linh động:
Cập nhật tệp gradle của ứng dụng để sử dụng thư viện ứng dụng tính năng mới nhất của Bộ công cụ học máy.
dependencies { implementation 'com.google.mlkit:barcode-scanning: 17.3.0' // The latest version number of the API }Tạo lại ứng dụng.
Lý do một số API cung cấp mô hình được tải xuống linh động
Một số API Bộ công cụ học máy có quá nhiều lựa chọn mô hình để đóng gói. Ví dụ: Nhận dạng mực kỹ thuật số hỗ trợ hơn 300 ngôn ngữ và không phải lúc nào cũng cần đưa mọi ngôn ngữ vào tính năng này trong quá trình cài đặt. Để làm được điều đó, chúng tôi cung cấp lựa chọn cài đặt thứ ba, trong đó các mô hình được tải xuống theo yêu cầu sau khi cài đặt. Hiện tại, chỉ có Nhận dạng mực kỹ thuật số, Dịch và Trích xuất thực thể có tuỳ chọn này.