Ultralytics YOLO'yu LiteRT üzerinde dışa aktarma
Yeni LiteRT dışa aktarma entegrasyonunun, Ultralytics YOLO çıkarımını mobil, gömülü, uç ve tarayıcı ortamlarına nasıl tek ve birleşik bir formatta getirdiğini öğren.

Ultralytics olarak, bilgisayarlı görü modellerini bulut bağlantısına güvenmek yerine, ihtiyaç duyuldukları cihazlarda doğrudan çalıştırmaya yönelik artan bir geçiş görüyoruz. Mobil uygulamalar, gömülü sistemler, IoT sensörleri ve tarayıcı tabanlı araçlar, genellikle kısıtlı güç ve hesaplama bütçesine sahip donanımlarda yerel olarak çıkarım yapmaya giderek daha fazla ihtiyaç duyuyor. İşte bu yüzden Ultralytics YOLO modellerinin artık doğrudan LiteRT'ye aktarılabileceğini duyurmaktan heyecan duyuyoruz.
Bu talebi karşılamak, geliştiricileri her biri için ayrı dışa aktarma süreçleri yönetmeye zorlamadan tüm bu ortamlarda çalışan bir model formatı gerektiriyor.
Bu yetenek daha önce resmi olmayan bir üçüncü taraf paketi aracılığıyla mevcuttu, ancak bu yeni entegrasyon Google ile yapılan resmi iş birliğinin bir sonucudur. Ultralytics YOLO modellerini LiteRT aracılığıyla TFLite'a dışa aktarmak için uçtan uca bir süreç oluşturmak adına LiteRT ekibiyle yakından çalıştık. Bu entegrasyonla, tek bir dışa aktarılmış Ultralytics YOLO modeli mobil, gömülü, uç ve tarayıcı ortamlarında dağıtılabiliyor ve daha önce eski TFLite ve TF.js dışa aktarma formatlarının ayrı ayrı ele aldığı işlemleri tek bir modernize edilmiş formatta birleştiriyor.
Link to this sectionLiteRT nedir?#
LiteRT (Lite Runtime'ın kısaltması), Google'ın cihaz içi yapay zeka için yüksek performanslı çalışma zamanıdır. TensorFlow Lite'ın (TFLite) yeni nesli ve yeni adıdır ve geliştiricilerin zaten bildiği aynı .tflite model formatını çalıştırır.
LiteRT, uç bilişim olarak da bilinen cihaz içi çıkarım için özel olarak 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 üzerinde yürütmeleri için araçlar sağlar. LiteRT dışa aktarma formatı, nesne algılama, segmentasyon, poz tahmini ve sınıflandırma gibi görevler için modelleri optimize eder; böylece çok çeşitli cihazlarda hızlı ve çevrimdışı çalışırlar.
Link to this sectionUltralytics YOLO modellerini neden LiteRT'ye aktarmalısın?#
Artık tek bir model formatı tüm dağıtım hedeflerini kapsıyor:
• Mobil ve gömülü. Android, iOS, Masaüstü, 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 uyumlu.
• Tarayıcı ve Node.js. LiteRT.js, WebGPU/WASM hızlandırmasıyla web üzerinde aynı .tflite modelini çalıştırarak ayrı bir TensorFlow.js dışa aktarımına duyulan ihtiyacı ortadan kaldırır.
• Masaüstü
Bu konsolidasyon önemlidir çünkü üretim dağıtımlarında gerçek bir sürtünme kaynağını ortadan kaldırır. Ekipler mobil için bir, tarayıcı için başka ve uç hızlandırıcılar için üçüncü bir dışa aktarma süreci yönetmek yerine artık bir kez dışa aktarıp LiteRT'nin çalıştığı her yerde dağıtım yapabilirler.
Link to this sectionLiteRT modellerinin temel özellikleri#
• Cihaz içi optimizasyon. Verileri yerel olarak işleyerek gecikmeyi azaltır, kişisel verileri iletmeyerek gizliliği artırır ve alan kazanmak için model boyutunu minimize eder.
• Ç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 üzerinde XNNPACK'ten ve OpenCL, Metal ve WebGPU aracılığıyla GPU hızlandırmasından yararlanır. GPU hızlandırması, ek hız için varsayılan olarak FP16'da çalışır.
• Kuantizasyon. Modelleri sıkıştırmak ve minimal doğruluk kaybıyla çıkarımı hızlandırmak için FP32, statik INT8, statik INT16-aktivasyon ve dinamik INT8'i destekler.
• Çeşitli dil desteği. Java/Kotlin, Swift, Objective-C, C++, Python ve JavaScript ile uyumludur.
Link to this sectionLiteRT dışa aktarmaya başlama#
Ultralytics Python paketi ve Ultralytics Platform, beş bilgisayarlı görü görevinin tamamında YOLO modellerini eğitmek, değerlendirmek ve dağıtmak için eksiksiz ve birleşik bir ortam sağlar. LiteRT dışa aktarma formatı Export, Predict ve Validate modlarını destekler; böylece bir model dışa aktarılabilir ve ardından yerel olarak çıkarım veya doğruluk doğrulaması için hemen kullanılabilir.
Bir modeli dışa aktarmak tek bir komut alır:
from ultralytics import YOLO
\# Load a YOLO26 model
model \= YOLO("yolo26n.pt")
\# Export the model to LiteRT format
model.export(format="litert") \# creates 'yolo26n.tflite'Kısıtlı donanımlara dağıtım yapan ekipler için LiteRT, kuantize edilmiş dışa aktarmayı da destekler; bu, modellerin minimal doğruluk kaybıyla daha hızlı çıkarım için sıkıştırılmasına olanak tanır:
from ultralytics import YOLO
model \= YOLO("yolo26n.pt")
\# Dynamic INT8: int8 weights, FP32 activations \- no calibration data needed
model.export(format="litert", quantize="w8a32")
\# Static INT8: int8 weights \+ int8 activations \- needs calibration data
model.export(format="litert", quantize=8, data="coco8.yaml")Dışa aktarıldıktan sonra, model yüklenebilir ve doğrudan çıkarım için çalıştırılabilir:
from ultralytics import YOLO
\# Load the exported LiteRT model
model \= YOLO("yolo26n.tflite")
\# Run inference
results \= model("https://ultralytics.com/images/bus.jpg")LiteRT dışa aktarma şu anda Linux x86_64 ve macOS üzerinde desteklenmektedir. Dışa aktarılan .tflite modelinin kendisi, mobil, gömülü, uç ve tarayıcı dahil olmak üzere LiteRT destekli her platformda çalışır.
Şekil 1. ONNX ve LiteRT arasındaki performans karşılaştırması.
Yukarıdaki görsel, ONNX Runtime Web aracılığıyla WebGPU/WASM üzerinde istemci tarafı çıkarım için Ultralytics'in npm paketi olan @ultralytics/yolo kullanılarak tarayıcıda çalışan YOLO26n üzerinde algılama, segmentasyon ve poz tahmini için ortalama çıkarım süresinin karşılaştırmasını sunmaktadır. Kontrollü bir tarayıcı ortamında 2024 Apple MacBook Pro (Apple Silicon M4) üzerinde kıyaslanmıştır.
Link to this sectionUltralytics YOLO'yu uca taşıma#
LiteRT ile, Ultralytics YOLO modellerini mobil, gömülü, uç ve tarayıcı ortamlarında dağıtmak artık her hedef için ayrı dışa aktarma süreçleri gerektirmiyor. Tek bir dışa aktarım, tek bir model formatı ve çıkarımın nerede gerçekleşmesi gerekiyorsa, eğitimden üretime kadar tutarlı bir yol.
Yapay zeka görme sistemlerini merak mı ediyorsun? Bilgisayarlı görüyü projelerine getirmek için lisans seçeneklerimizi keşfet. Tüm Ultralytics dışa aktarma entegrasyonlarını incelemek için GitHub depomuzu ziyaret et ve kendi uçtan uca yapay zeka görme iş akışlarını oluşturmaya başlamak için Ultralytics Platform'e göz at.






