YOLO Modellerini Uç ve Web Dağıtımı için LiteRT'ye Dışa Aktar#
LiteRT (Lite Runtime ifadesinin kısaltması), Google'ın cihaz üzerinde yapay zekâ için geliştirdiği yüksek performanslı çalışma zamanıdır. TensorFlow Lite'ın (TFLite) yeni nesil sürümü ve yeni adıdır; aynı .tflite model biçimini çalıştırır. LiteRT sayesinde dışa aktarılan tek bir Ultralytics YOLO modeli mobil cihazlara, gömülü sistemlere, uç cihazlara ve tarayıcıya dağıtılabilir; böylece eski tflite ve tfjs dışa aktarma biçimlerinin ayrı ayrı ele aldığı tüm kullanım alanları tek bir çatı altında toplanır.
İzle: Ultralytics YOLO26'yı Google LiteRT'ye aktarma | Görüntü yapay zekâsını Android ve iOS'te dağıt | Mobil yapay zekâ 📱🚀
LiteRT dışa aktarma biçimi, modellerini nesne algılama, segmentasyon, poz tahmini ve sınıflandırma gibi görevler için optimize eder; böylece modeller çok çeşitli cihazlarda hızlı ve çevrimdışı çalışır.
Resmî Ultralytics YOLO Flutter eklentisi, LiteRT .tflite dışa aktarımlarını Android'de kutudan çıktığı gibi çalıştırır: gerçek zamanlı kamera çıkarımı, tek görüntü tahmini, GPU hızlandırması ve Derinlik dâhil yedi YOLO26 görevinin tümü için otomatik model indirme. Apple cihazlar için CoreML dışa aktarımını, Qualcomm Snapdragon NPU'ları için Qualcomm QNN entegrasyonunu kullan.
Sınıflandırma modellerini imgsz=224 biçiminde dışa aktar. Algılama, segmentasyon, anlamsal, derinlik, poz ve OBB modellerini imgsz=640 biçiminde dışa aktar. Bu 224/640 standardı, resmî LiteRT, CoreML ve QNN mobil varlıklarında ortaktır.
Resmî Ultralytics YOLO NPM paketi, LiteRT .tflite dışa aktarımlarını sunucu veya Python gerektirmeden LiteRT.js aracılığıyla doğrudan tarayıcıda çalıştırır. Altı YOLO26 görevi (algılama, segmentasyon, anlamsal, sınıflandırma, poz, OBB) için gerçek zamanlı web kamerası çıkarımı, tek görüntü tahmini ve WebGPU hızlandırması (otomatik CPU/WASM yedeklemesi) sunar. WebGPU'da çoğu zaman ONNX Runtime Web'den ~2× daha hızlıdır.
npm i @ultralytics/yolo @litertjs/coreNeden LiteRT'ye Dışa Aktarmalısın?#
LiteRT, uç bilişim olarak da bilinen, cihaz üzerinde çıkarım için tasarlanmış açık kaynaklı bir çerçevedir. Geliştiricilere eğitilmiş modelleri mobil, gömülü ve IoT cihazlarında, geleneksel bilgisayarlarda ve LiteRT.js aracılığıyla doğrudan web tarayıcılarında ve Node.js'te çalıştırmak için gerekli araçları sunar.
Tek model biçimi, tüm hedef platformlar:
- Mobil ve Gömülü Sistemler: Android, iOS, gömülü Linux ve mikrodenetleyiciler (MCU'lar).
- Uç hızlandırıcılar: Daha fazla hızlandırma için Coral Edge TPU ile uyumludur.
- Tarayıcı ve Node.js: LiteRT.js, ayrı bir TensorFlow\.js dışa aktarımına gerek bırakmadan aynı
.tflitemodelini WebGPU/WASM hızlandırmasıyla web'de çalıştırır.
LiteRT Modellerinin Temel Özellikleri#
- Cihaz Üzerinde Optimizasyon: Verileri yerel olarak işleyerek gecikmeyi azaltır, kişisel verileri aktarmayarak gizliliği artırır ve yerden tasarruf etmek için model boyutunu küçültür.
- Çoklu Platform Desteği: Android, iOS, gömülü Linux, mikrodenetleyiciler ve modern web tarayıcılarında çalışır.
- Donanım Hızlandırma: CPU'da XNNPACK'ten, GPU hızlandırması içinse OpenCL, Metal ve WebGPU'dan yararlanır. GPU temsilcisi, ek hız sağlamak için varsayılan olarak FP16 ile çalışır.
- Niceleme: Modelleri sıkıştırıp çıkarımı en düşük doğruluk kaybıyla hızlandırmak için FP32, statik INT8 (
quantize=8, int8 ağırlıklar + int8 aktivasyonlar), statik INT16 aktivasyonlu (quantize="w8a16", daha yüksek doğruluk için int8 ağırlıklar + int16 aktivasyonlar) ve dinamik INT8 (quantize="w8a32", int8 ağırlıklar + FP32 aktivasyonlar, kalibrasyon verisi gerekmez) biçimlerini destekler. - Çeşitli Dil Desteği: Java/Kotlin, Swift, Objective-C, C++, Python ve JavaScript ile uyumludur.
Ölçülen Performans#
Donanım: 12 GB LPDDR5X belleğe ve Android 16 / API 36'ya sahip Xiaomi 17. 3 nm'lik Snapdragon 8 Elite Gen 5 (SM8850); 8 çekirdekli Qualcomm Oryon CPU (2 adede kadar 4.6 GHz hızında çalışan Prime çekirdek ve 6 adede kadar 3.62 GHz hızında çalışan Performance çekirdeği), Adreno GPU ve Hexagon NPU içerir.
| Model | Görev | boyut (piksel) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | Detect | 640 | 52.2 1.8 / 48.1 / 2.4 | 15.8 2.3 / 8.9 / 4.6 |
| YOLO26n-seg | Segment | 640 | 73.4 1.8 / 65.6 / 6.0 | 33.2 1.8 / 23.8 / 7.6 |
| YOLO26n-sem | Anlamsal | 640 | 61.2 1.8 / 51.1 / 8.3 | 34.2 1.8 / 24.0 / 8.3 |
| YOLO26n-depth | Derinlik | 640 | 124.4 1.9 / 115.1 / 7.4 | 23.0 1.8 / 13.5 / 7.7 |
| YOLO26n-cls | Sınıflandırma | 224 | 4.4 0.4 / 4.0 / 0.0 | 3.1 0.8 / 2.1 / 0.2 |
| YOLO26n-pose | Poz | 640 | 57.4 1.8 / 53.8 / 1.8 | 16.6 2.7 / 10.1 / 3.9 |
| YOLO26n-obb | OBB | 640 | 50.3 1.8 / 47.2 / 1.4 | 11.7 1.8 / 7.8 / 2.0 |
- Hız değerleri,
bus.jpgüzerinde 3 ısınma çalıştırmasının ardından yapılan 15 çalıştırmanın ortalaması olan tek görüntülük seri gecikmelerdir; ölçümler Ultralytics Flutter eklentisi0.6.10ve standartlaştırılmışv0.6.6varlıklarıyla yapılmıştır. CPU/GPU sırası, tek bir sıralı taramada görevler arasında dönüşümlü olarak değiştirildi. Yerel günlükler, her CPU satırının LiteRT CPU/XNNPACK kullandığını ve her GPU satırının tüm grafiği LiteRT OpenCL'e (LITERT_CL) devrettiğini doğruladı. - LiteRT dışa aktarımı, PyTorch modelini doğrudan izleyerek kayan noktalı girişli NCHW
.tfliteüretir; GPU temsilcisi tüm grafiği derler (burada yedi görevin tamamı Adreno GPU'da çalışır) vew8a32için kalibrasyon verisi gerekmez. Kullanıcılar, eski onnx2tf NHWC düzenini veyaIdentityçıktı adlarını varsaymak yerine tensör şekillerini ve imza adlarını okumalı; RGB verilerini doğrudan düzlemsel CHW biçiminde paketlemeli veya çıkarım öncesinde transpoze etmelidir. Anlamsal dışa aktarımlar NCHW logitleri döndürür ve ana makine tarafında sınıf argmax'ı gerektirir. Resmî Android varlıkları yolo-flutter-appv0.6.6sürümünde barındırılır; ayrıntılı kıyaslama kaydı Flutter performans belgesinde yer alır. - Eşleşen Snapdragon Hexagon NPU ve LiteRT CPU/GPU değerleri Qualcomm QNN entegrasyonu sayfasında yer alır.
- Apple CPU/hızlandırıcı sonuçlarını CoreML entegrasyonu sayfasında karşılaştır.
Aşağıdaki cihaz taramalarında aynı standartlaştırılmış v0.6.6 varlıkları kullanılır.
Google Pixel 10#
Donanım: 12 GB belleğe ve Android 16 / API 36'ya sahip Google Pixel 10. 3 nm'lik Google Tensor G5, 8 çekirdekli bir CPU'ya (1 adede kadar 3.78 GHz hızında çalışan Prime çekirdek, 5 adede kadar 3.05 GHz hızında çalışan Performance çekirdeği ve 2 adede kadar 2.25 GHz hızında çalışan Efficiency çekirdeği), PowerVR D-Series GPU'ya ve Google TPU'ya sahiptir. Google bunları bağlantı verilen teknik özelliklerde yayımlamadığından çekirdek saat hızları ve GPU sürücüsünün adı kıyaslama cihazından okundu.
| Model | Görev | boyut (piksel) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | Detect | 640 | 53.3 1.5 / 50.2 / 1.6 | 45.5 3.8 / 37.7 / 4.0 |
| YOLO26n-seg | Segment | 640 | 87.7 1.8 / 78.5 / 7.5 | 50.9 3.0 / 36.9 / 10.9 |
| YOLO26n-sem | Anlamsal | 640 | 68.6 1.5 / 59.0 / 8.0 | 71.6 1.5 / 59.5 / 10.6 |
| YOLO26n-depth | Derinlik | 640 | 120.3 1.5 / 112.5 / 6.3 | 52.5 2.0 / 37.5 / 13.0 |
| YOLO26n-cls | Sınıflandırma | 224 | 4.0 0.3 / 3.4 / 0.2 | 17.6 0.9 / 16.7 / 0.1 |
| YOLO26n-pose | Poz | 640 | 59.7 1.5 / 57.0 / 1.2 | 46.6 3.8 / 39.2 / 3.5 |
| YOLO26n-obb | OBB | 640 | 52.0 1.5 / 48.9 / 1.7 | 45.5 4.0 / 38.5 / 2.9 |
Kıyaslama: bus.jpg üzerinde 3 ısınmanın ardından yapılan 15 predict() çağrısının ortalaması; ultralytics_yolo 0.6.10 ve resmî v0.6.6 varlıkları kullanılmıştır. CPU/GPU sırası, tek bir sıralı taramada görevler arasında dönüşümlü olarak değişir. Yerel günlükler, her CPU satırının LiteRT CPU/XNNPACK kullandığını ve her GPU satırının tüm grafiği LiteRT OpenCL'e (LITERT_CL) devrettiğini doğruladı.
Samsung Galaxy S26#
Donanım: 12 GB belleğe ve Android 16 / API 36'ya sahip Samsung Galaxy S26 (SM-S942B). 2 nm'lik Exynos 2600, 10 çekirdekli Armv9.3 CPU'ya (1 adede kadar 3.8 GHz hızında çalışan C1-Ultra çekirdek, 3 adede kadar 3.26 GHz hızında çalışan performans C1-Pro çekirdeği ve 6 adede kadar 2.76 GHz hızında çalışan verimlilik C1-Pro çekirdeği), Xclipse 960 GPU'ya ve Samsung NPU'ya sahiptir.
| Model | Görev | boyut (piksel) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | Detect | 640 | 36.7 1.3 / 33.8 / 1.7 | 16.4 1.4 / 12.3 / 2.6 |
| YOLO26n-seg | Segment | 640 | 54.6 1.2 / 48.0 / 5.3 | 32.8 1.3 / 24.5 / 7.0 |
| YOLO26n-sem | Anlamsal | 640 | 47.8 1.2 / 38.4 / 8.1 | 34.2 1.3 / 24.9 / 8.0 |
| YOLO26n-depth | Derinlik | 640 | 92.9 1.2 / 84.8 / 6.9 | 33.5 1.3 / 22.4 / 9.8 |
| YOLO26n-cls | Sınıflandırma | 224 | 2.7 0.2 / 2.3 / 0.2 | 2.6 0.2 / 2.4 / 0.0 |
| YOLO26n-pose | Poz | 640 | 42.8 1.3 / 40.5 / 1.0 | 18.4 1.4 / 14.1 / 2.9 |
| YOLO26n-obb | OBB | 640 | 37.5 1.3 / 35.1 / 1.2 | 18.8 2.5 / 14.6 / 1.8 |
Kıyaslama: bus.jpg üzerinde 3 ısınmanın ardından yapılan 15 predict() çağrısının ortalaması; ultralytics_yolo 0.6.10 ve resmî v0.6.6 varlıkları kullanılmıştır. CPU/GPU sırası, tek bir sıralı taramada görevler arasında dönüşümlü olarak değişir. Yerel günlükler, her CPU satırının LiteRT CPU/XNNPACK kullandığını ve her GPU satırının tüm grafiği LiteRT OpenCL'e (LITERT_CL) devrettiğini doğruladı.
Xiaomi 17T Pro#
Donanım: 12 GB LPDDR5X belleğe ve Android 16 / API 36'ya sahip Xiaomi 17T Pro (2602EPTC0G). 3 nm'lik MediaTek Dimensity 9500 (MT6993), 8 çekirdekli Armv9.3 CPU'ya (1 adede kadar 4.21 GHz hızında çalışan C1-Ultra çekirdek, 3 adede kadar 3.5 GHz hızında çalışan C1-Premium çekirdeği ve 4 adede kadar 2.7 GHz hızında çalışan C1-Pro çekirdeği), Mali-G1 Ultra MC12 GPU'ya ve MediaTek NPU 990'a sahiptir.
| Model | Görev | boyut (piksel) | CPU w8a32 LiteRT (ms) | GPU w8a32 LiteRT (ms) |
|---|---|---|---|---|
| YOLO26n | Detect | 640 | 45.4 1.3 / 42.1 / 2.0 | 26.6 1.9 / 22.0 / 2.7 |
| YOLO26n-seg | Segment | 640 | 126.2 2.6 / 113.9 / 9.7 | 46.7 2.6 / 33.3 / 10.8 |
| YOLO26n-sem | Anlamsal | 640 | 117.9 2.6 / 98.8 / 16.5 | 74.3 2.6 / 54.7 / 17.0 |
| YOLO26n-depth | Derinlik | 640 | 182.4 2.5 / 167.6 / 12.3 | 47.8 2.5 / 32.3 / 12.9 |
| YOLO26n-cls | Sınıflandırma | 224 | 6.2 0.4 / 5.3 / 0.4 | 7.4 0.4 / 6.9 / 0.1 |
| YOLO26n-pose | Poz | 640 | 97.6 2.5 / 93.3 / 1.8 | 28.6 2.5 / 23.3 / 2.8 |
| YOLO26n-obb | OBB | 640 | 91.5 2.6 / 85.8 / 3.2 | 27.5 2.7 / 21.8 / 2.9 |
Kıyaslama: bus.jpg üzerinde 3 ısınmanın ardından yapılan 15 predict() çağrısının ortalaması; ultralytics_yolo 0.6.10 ve resmî v0.6.6 varlıkları kullanılmıştır. CPU/GPU sırası, tek bir sıralı taramada görevler arasında dönüşümlü olarak değişir. Yerel günlükler, her CPU satırının LiteRT CPU/XNNPACK kullandığını ve her GPU satırının tüm grafiği LiteRT OpenCL'e (LITERT_CL) devrettiğini doğruladı.
Desteklenen Görevler#
LiteRT dışa aktarımı, Ultralytics'in yedi görevinin tümünü destekler. Anlamsal segmentasyon ve derinlik tahmini yalnızca bu başlıkları içeren tek aile olan YOLO26 ile kullanılabilir.
| Görev | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Algılama | ✅ | ✅ | ✅ |
| Segmentasyon | ✅ | ✅ | ✅ |
| Anlamsal | ❌ | ❌ | ✅ |
| Derinlik | ❌ | ❌ | ✅ |
| Sınıflandırma | ✅ | ✅ | ✅ |
| Poz | ✅ | ✅ | ✅ |
| OBB | ✅ | ✅ | ✅ |
LiteRT'ye Dışa Aktarma: YOLO Modelini Dönüştürme#
Modellerini LiteRT biçimine dönüştürerek cihaz üzerindeki yürütme verimliliğini artırabilir ve dağıtım seçeneklerini genişletebilirsin.
Kurulum#
Gerekli paketi yüklemek için şu komutu çalıştır:
# Install the required package for YOLO
pip install ultralyticsAyrıntılı yönergeler ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz at. Herhangi bir sorunla karşılaşırsan Sık Karşılaşılan Sorunlar kılavuzumuza başvur.
LiteRT dışa aktarımı şu anda Linux x86_64 ve macOS üzerinde desteklenir. Dışa aktarılan .tflite modelinin kendisi, LiteRT'nin desteklediği tüm platformlarda (mobil, gömülü, uç ve tarayıcı) çalışır.
Kullanım#
Tüm Ultralytics YOLO modelleri, kullanıma hazır biçimde dışa aktarmayı destekler. LiteRT biçimi Dışa Aktar, Tahmin Et ve Doğrula modlarını destekler; böylece bir modeli dışa aktarıp çıkarım çalıştırmak veya doğruluğunu yerel olarak doğrulamak için yükleyebilirsin.
from ultralytics import YOLO
# YOLO26 modelini yükle
model = YOLO("yolo26n.pt")
# Modeli LiteRT biçimine aktar
model.export(format="litert", imgsz=640) # 'yolo26n.tflite' oluşturur; sınıflandırma için imgsz=224 kullanfrom ultralytics import YOLO
model = YOLO("yolo26n.pt")
# Dinamik INT8: int8 ağırlıklar, FP32 aktivasyonlar - kalibrasyon verisi gerekmez
model.export(format="litert", quantize="w8a32", imgsz=640) # 'yolo26n_w8a32.tflite' oluşturur
# Statik INT8: int8 ağırlıklar + int8 aktivasyonlar - kalibrasyon verisi gerekir
model.export(format="litert", quantize=8, data="coco8.yaml", imgsz=640) # 'yolo26n_int8.tflite' oluşturur
# Statik w8a16: int8 ağırlıklar + int16 aktivasyonlar (daha yüksek doğruluk) - kalibrasyon verisi gerekir
model.export(format="litert", quantize="w8a16", data="coco8.yaml", imgsz=640) # 'yolo26n_w8a16.tflite' oluştururfrom ultralytics import YOLO
# Dışa aktarılan LiteRT modelini yükle
model = YOLO("yolo26n.tflite")
# Çıkarımı çalıştır
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Dışa aktarılan LiteRT modelini yükle
model = YOLO("yolo26n.tflite")
# COCO8 veri kümesinde doğruluğu doğrula
metrics = model.val(data="coco8.yaml")Dışa Aktarma Bağımsız Değişkenleri#
| Bağımsız değişken | Tür | Varsayılan | Açıklama |
|---|---|---|---|
format | str | 'litert' | Dışa aktarılan modelin hedef biçimi; çeşitli dağıtım ortamlarıyla uyumluluğu tanımlar. |
imgsz | int veya tuple | 640 | Model girişi için istenen görüntü boyutu. Kare görüntüler için bir tam sayı, belirli boyutlar içinse (height, width) demeti kullanılabilir. |
quantize | int veya str | None | Nicemleme hassasiyeti: 8 (statik INT8, int8 ağırlıklar + int8 aktivasyonlar; kalibrasyon data/fraction gerekir), 'w8a16' (statik, int8 ağırlıklar + int16 aktivasyonlar; kalibrasyon data/fraction gerekir), 'w8a32' (dinamik INT8, int8 ağırlıklar + FP32 aktivasyonlar; kalibrasyon gerekmez) veya 32/ayarlanmamış (FP32). FP16 ayrı olarak dışa aktarılmaz (aşağıdaki nota bak). Kullanımdan kaldırılan half/int8 bayraklarının yerini alır. |
batch | int | 1 | Dışa aktarılan modelin toplu çıkarım boyutunu veya predict kipinde eşzamanlı işleyeceği en fazla görüntü sayısını belirtir. |
data | str | None | INT8 kalibrasyonu için kullanılan veri kümesi YAML dosyası; sınıflandırmada bunun yerine bir veri kümesi dizini veya yerleşik veri kümesi adı kullanılır. quantize=8 ya da 'w8a16' ile birlikte verilmezse Ultralytics, modelin görevi için varsayılan kalibrasyon veri kümesini seçer. |
fraction | float, int veya list | 1.0 | Oran, görüntü sayısı veya [train, val, test] oranları/sayıları olarak kalibrasyon alt kümesi. İki öğeli listelerde test tam kalır; 0 ise onu atlar. |
device | str | None | Dışa aktarma için kullanılacak cihazı belirtir. LiteRT dışa aktarımı CPU'da çalışır (device=cpu). |
Eski tflite dışa aktarımından farklı olarak LiteRT, ayrı bir FP16 dışa aktarımı gerektirmez. FP32 .tflite modeli, GPU temsilcisi (WebGPU, OpenCL, Metal) kullanıldığında çalışma zamanında yarı hassasiyetle çalışır; bu, FP16 çıkarımı için resmî LiteRT yaklaşımıdır.
Dışa aktarma süreci hakkında daha fazla bilgi için Ultralytics dışa aktarma belgeleri sayfasını ziyaret et.
Dışa Aktarılan YOLO LiteRT Modellerini Dağıtma#
Ultralytics YOLO modelini LiteRT'ye aktardıktan sonra modeli farklı platformlara dağıtabilirsin. Modeli yerel olarak doğrulamanın en hızlı yolu, yukarıda gösterilen YOLO("yolo26n.tflite") yöntemidir. Diğer ortamlara dağıtım için aşağıdaki kaynaklara bak:
Mobil ve Gömülü Sistemler#
- Android: LiteRT'yi Android uygulamalarına entegre etmek için hızlı başlangıç kılavuzu.
- iOS: LiteRT modellerini iOS uygulamalarına entegre etme ve dağıtma kılavuzu.
- Gömülü Linux ve Raspberry Pi: LiteRT modellerini tek kartlı bilgisayarlarda çalıştır; istersen bir Coral Edge TPU ile hızlandır.
- Mikrodenetleyiciler: Yalnızca birkaç kilobayt belleğe sahip MCU'lara dağıtım yap — çekirdek çalışma zamanı Arm Cortex-M3 üzerinde yaklaşık 16 KB yer kaplar.
Tarayıcı ve Node.js (LiteRT.js)#
- LiteRT.js'e genel bakış: Aynı
.tflitemodelini WebGPU/WASM hızlandırmasıyla doğrudan tarayıcıda çalıştır; sunucu tarafındaki hesaplamaları ortadan kaldır ve verileri kullanıcının cihazında tut. - Uçtan Uca Örnekler: LiteRT'yi mobil, uç ve web ortamlarında uygulamaya yönelik pratik örnekler ve eğitimler.
Özet#
Bu kılavuzda, Ultralytics YOLO modellerini LiteRT biçimine nasıl aktaracağını ele aldık. Mobil/uç (önceden TFLite) ve tarayıcı (önceden TF.js) dağıtımını tek bir .tflite modelinde birleştiren LiteRT, YOLO modellerini neredeyse tüm cihaz içi hedeflerde daha hızlı, daha küçük ve taşınabilir hale getirir.
Daha fazla bilgi için LiteRT resmi belgelerini ziyaret et.
Ayrıca, diğer Ultralytics YOLO entegrasyonlarını merak ediyorsan, pek çok yararlı kaynak için entegrasyon kılavuzu sayfamıza göz at.
Sık Sorulan Sorular#
YOLO modelini LiteRT'ye (
.tflite) aktarmak için Ultralytics kütüphanesini kullan. Önce paketi yükle:pip install ultralyticsArdından modelini aktar:
from ultralytics import YOLO # YOLO26 modelini yükle model = YOLO("yolo26n.pt") # Modeli LiteRT biçimine aktar model.export(format="litert", imgsz=640) # sınıflandırma için imgsz=224 kullanCLI kullanıcıları için:
yolo export model=yolo26n.pt format=litert imgsz=640 # use imgsz=224 for classificationDaha fazla bilgi için Ultralytics dışa aktarma kılavuzunu ziyaret et.
LiteRT, TensorFlow Lite'ın yeni adıdır — aynı
.tflitemodel biçimi, aynı çalışma zamanı geçmişi; Google tarafından yeniden markalandı. Ultralytics'te teklitertdışa aktarma biçimi artık daha önce iki ayrı biçim gerektiren her iki kullanım alanını da kapsıyor:- Eski
tflitebiçimi → mobil, gömülü ve uç dağıtım. - Eski
tfjsbiçimi → tarayıcı ve Node.js dağıtımı; artık aynı.tflitedosyasını kullanan LiteRT.js tarafından destekleniyor.
Mevcut bir
.tflitedosyan varsa, dosyayı doğrudanYOLO("model.tflite")ile yükleyebilirsin; dosya LiteRT arka ucuyla çalışır.- Eski
Evet. Modelini LiteRT biçimine aktar, ardından çıkarım hızını artırmak için Raspberry Pi'de çalıştır. Daha fazla optimizasyon için bir Coral Edge TPU kullanmayı düşünebilirsin. Ayrıntılı adımlar için Raspberry Pi dağıtım kılavuzumuza bak.
Evet. LiteRT.js, dışa aktarılmış aynı
.tflitemodelini WebGPU/WASM hızlandırmasıyla doğrudan web tarayıcısında veya Node.js uygulamasında çalıştırır. Bu, önceki TensorFlow.js iş akışının yerini alır — ayrı bir tarayıcı dışa aktarımı gerekmez; LiteRT modelini LiteRT.js çalışma zamanıyla dağıtman yeterlidir.Evet — çalışma zamanında. FP32 LiteRT modeli, GPU temsilcisi (WebGPU, OpenCL veya Metal) üzerinde çalıştırıldığında otomatik olarak FP16 çalışır; bu, resmi LiteRT yaklaşımıdır. Bu nedenle özel bir FP16 dışa aktarımına ihtiyacın yoktur; daha fazla sıkıştırma için
quantize=8ile INT8 nicelemesi kullan.YOLO modellerini LiteRT'ye aktarırken hatalarla karşılaşırsan, yaygın çözümler şunlardır:
- Platformu kontrol et: LiteRT dışa aktarımı Linux x86_64 ve macOS'te desteklenir. Ortamının bu gereksinimleri karşıladığını doğrula.
- Paket uyumluluğunu kontrol et: Ultralytics'in uyumlu bir sürümünü kullandığından emin ol. Kurulum kılavuzumuza bak.
- Niceleme sorunları: INT8 nicelemesi kullanırken veri kümesi yolunun
dataparametresinde doğru belirtildiğinden emin ol.
Ek sorun giderme ipuçları için Yaygın Sorunlar kılavuzumuzu ziyaret et.