TensorFlow Lite Micro ve mikrodenetleyici AI araçları

Mikrodenetleyicide dil modelleri saçma bir fikir gibi görünüyor ve kısa bir süre öncesine kadar öyleydi. ESP32-S3’ün 512 KB SRAM’ı ve 32 MB’a kadar harici PSRAM’ı vardır. Yararlı bir sohbet modeli gigabayt gerektiriyor. 2025 yılında değişen hile, nicelenmiş nanomodeller idi: 20 ila 30 milyon parametre transformer’ları, INT8-nicelenmiş, dar bir görev için ayarlanmış, “anahtar kelime algılama” ile “bulut LLM” arasında sığan. Yakın zamanda yayınlanan bir XDA makalesinde ESP32-S3’e dağıtılan 28,9M modelinden bahsedilmiş, ve yorumlar en büyük sorunun “bunu yapabilir miyim” değil “hangi araçları kullanırım” olduğunu ortaya çıkarmıştır. Aşağıda, ilk olarak yükleyeceğimiz yedi masaüstü uygulaması bulunmaktadır.

Mikrodenetleyici LLM araç zincirinde nelere dikkat etmeliyiz

Hızlı karşılaştırma

Uygulama Şunlar için en iyi Platformlar Ücretsiz plan Not
TensorFlow Lite Micro Varsayılan mikrodenetleyici çıkarım çalışma zamanı Windows, macOS, Linux Evet C++ kitaplığı, herhangi bir araç zinciri ile entegre
Edge Impulse Studio Veri-to-firmware ardışık düzeni Web + masaüstü CLI Ücretsiz katman Modelleri tarayıcıdan eğit ve dağıt
PlatformIO VS Code içinde çapraz platform derleme Windows, macOS, Linux Evet Tek bir projede ESP32, RP2040, nRF, STM32 işler
ESP-IDF Espressif’in resmi SDK’sı Windows, macOS, Linux Evet ESP32-S3 PSRAM ve AI hızlandırıcıları için birinci sınıf destek
Arduino IDE 2 Başlangıç-uyumlu dağıtım Windows, macOS, Linux Evet Artık ESP32 kart paketlerini kutusundan destekliyor
TinyMaix Küçük modeller için en hafif çalışma zamanı Linux, macOS, Windows Evet 400 satırlık çıkarım çekirdeği, INT8 uyumlu
llama.cpp Çapraz hedef küçük model çalıştırıcı Windows, macOS, Linux Evet Küçük transformer çıkarımı için referans

Uygulamalar

1. TensorFlow Lite Micro — En iyi varsayılan çalışma zamanı

TensorFlow Lite Micro (TFLM), çoğu mikrodenetleyici AI projesinin standardize ettiği çalışma zamanı. Dinamik tahsis olmayan, OS bağımlılığı olmayan ve dosya sistemi erişimi olmayan bir C++ kitaplığıdır. Espressif, S3 için ESP-NN çekirdekleri ekleyen resmi bir ESP-IDF bileşeni sevk eder, bu nedenle INT8 evrişimleri ve yoğun katmanları referans çekirdeklerinden dört ila sekiz kat daha hızlı çalışır. Mikrodenetleyici AI’da yeniyseniz, bu öğreticilerin varsaydığı çalışma zamanı.

Başarısız olduğu yer: API C++ ve acımasız. Kötü bir model girdisinde hata ayıklamak genellikle seri bağlantı noktasında bir yığın izlemesiyle sonuçlanır.

Fiyatlandırma:

Platformlar: masaüstü araç zinciri Windows, macOS, Linux üzerinde çalışır

İndir: github.com/tensorflow/tflite-micro

Alt çizgi: yeni bir mikrodenetleyici AI projesine eklenecek ilk kitaplık.

2. Edge Impulse Studio — En iyi veri-to-firmware ardışık düzeni

Edge Impulse Studio, sizi bir sensör kaydından dağıtılabilir bir firmware ikilisine götüren tarayıcı uygulaması. Verileri yükleyin, etiketleyin, bir model mimarisi seçin, eğitin ve hedef kart için ayarlanmış bir C++ kitaplığı veya tam Arduino taslağı yayınlar. ESP32-S3, nRF52840, Nicla Vision ve Nano 33 BLE Sense desteği derindir. Masaüstü CLI, ardışık düzenin tamamını CI için yazmanıza izin verir.

Başarısız olduğu yer: ücretsiz katman eğitim süresini ve veri seti boyutunu sınırlandırır. Gelişmiş mimariler kurumsal katman gerektirir.

Fiyatlandırma:

Platformlar: Web uygulaması artı Windows, macOS, Linux için CLI

İndir: edgeimpulse.com

Alt çizgi: Colab yerine tarayıcıda eğitim yapmayı tercih ettiğiniz seçim.

3. PlatformIO — En iyi çapraz platform derleme ortamı

PlatformIO, VS Code uzantısı, tek bir projeyi yüz karttan herhangi biri için derlemeye dönüştürür. platformio.ini içinde iki satırlık bir değişiklikle hedefi ESP32-S3’den RP2040’a nRF52’ye geçirin. TensorFlow Lite Micro, TinyMaix ve Edge Impulse kitaplıklarının tümü yerleşik paket yöneticisi aracılığıyla kurulur. Hata ayıklayıcı entegrasyonu herhangi bir J-Link veya ST-Link sondasıyla çalışır.

Başarısız olduğu yer: ilk indirme ağırdır. Windows’ta ilk çalıştırma performansı yavaştır.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux (VS Code uzantısı olarak)

İndir: platformio.org

Alt çizgi: üç çip satıcısında aynı projeyi canlı tutan ortam.

4. ESP-IDF — Hedef özel olarak ESP32-S3 olduğunda en iyi

ESP-IDF, Espressif’in resmi çerçevesi. Proje ESP32-S3 ailesine karşı gerçekleştilirse, bu en derin takım donatımı: yerel PSRAM ayırıcılar, birinci taraf ESP-NN çekirdekleri ve yerleşik OTA güncelleme desteği. idf.py CLI menuconfig, flash, monitor ve birim testleri yönlendirir. TFLM ve TinyMaix ile temiz bir şekilde eşleşir.

Başarısız olduğu yer: yalnızca ESP32. Erken kilitlenmek taşınabilirliği sınırlandırır.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux

İndir: github.com/espressif/esp-idf

Alt çizgi: hedefin ESP32 olduğunu bildiğiniz çerçeve.

5. Arduino IDE 2 — İlk mikrodenetleyici AI projesi için en iyi

Arduino IDE 2, çoğu insanın başladığı yer. ESP32, RP2040 ve nRF için kart yöneticileri bir tık uzakta, TensorFlow Lite Micro paket edilmiş bir kitaplık olarak mevcuttur ve seri monitörü uygulamada doğru orada. Yeniden yazılan 2.x sürümü uygun bir hata ayıklayıcı ve proje başına taslak ekledi.

Başarısız olduğu yer: PlatformIO veya ESP-IDF’den daha yavaş derlemeler ve derleme bayraklarında daha az kontrol.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux

İndir: arduino.cc/en/software

Alt çizgi: çoğu ilk projenin PlatformIO’ya geçmeden önce kullandığı giriş rampası.

6. TinyMaix — En küçük modeller için en iyi çalışma zamanı

TinyMaix, TFLM çok büyük olduğunda başvurduğunuz çalışma zamanı. Tüm çıkarım motoru yaklaşık 400 satır C’dir. INT8 ve INT16 nicelleştirilmiş modelleri, yalnızca tamsayı çıkarımını ve 30 KB kadar az RAM’ı olan kartları destekler. Yalnızca selamlamak, sınıflandırmak veya yönlendirmek gereken küçük transformer deşifre edicileri için mükemmel.

Başarısız olduğu yer: TFLM’den daha dar işlem kapsamı. Özel katmanlar elle taşınması gerekebilir.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux’tan çapraz derlemeler

İndir: github.com/sipeed/TinyMaix

Alt çizgi: “bu bile sığar mı” anı için çalışma zamanı.

7. llama.cpp — Mikrodenetleyicinin neleri tutabileceğinin tavanını zorlamak için en iyi

llama.cpp geleneksel bir mikrodenetleyici çalışma zamanı değildir, ancak topluluk bunu ESP32-S3’e, RP2350’ye ve araştırma amaçları için hatta Milk-V RISC-V kartlarına taşımıştır. Oyundaki model, modern bir tabantan damıtılmış 20 ila 60 milyon parametre transformer’ı ise, llama.cpp’nin GGUF nicelik hatası ardışık düzeni, kartın tutabileceği bir şeye düzeltmenize izin verir. Prototyping için önce masaüstünde çalıştırılır, sonra çapraz derlenir.

Başarısız olduğu yer: çıkarım döngüsünü gömülü RTOS’a entegre etmek manuel çalışmadır. Gerçek zamanlı performans agresif nicelemeye bağlıdır.

Fiyatlandırma:

Platformlar: Windows, macOS, Linux’tan çapraz derlemeler

İndir: github.com/ggml-org/llama.cpp

Alt çizgi: “gerçek” transformer’ı bir kartın içine sıkıştıran herkes için referans çalışma zamanı.

Doğru olanı seçme

SSS

ESP32-S3 gerçekten bir dil modelini çalıştırabilir mi? Küçük bir tane. 30 milyon parametreden az, INT8 nicelenmiş, dar bir görev. ChatGPT’yi beklemeyin. Niyetleri sınıflandırma, yapılandırılmış çıkarım veya şablon eşleştirmesini yenen kısa yazılı yanıtları bekleyin.

TFLM ve TinyMaix arasındaki fark nedir? TFLM, daha iyi işlem kapsamı ve satıcı çekirdekleri ile Google tarafından korunan daha geniş çalışma zamanı. TinyMaix, en küçük cihazlar için tasarlanan daha yapay bir çalışma zamanı. Varsayılan olarak TFLM’yi kullanın; TFLM sığmayacağı zaman TinyMaix’e düşün.

PlatformIO kullanırsam ESP-IDF’ye ihtiyacım var mı? PlatformIO, ESP-IDF’nin kapı altında bir kopyasını sevk eder. Aynı çalışma zamanını daha arkadaş canlı bir derleme sistemine sarılmış şekilde alırsınız. ESP-IDF’yi doğrudan yalnızca en son özelliklere veya Espressif’in tam CI kurulumuna ihtiyacınız olduğunda kullanın.

Edge Impulse mikrodenetleyiciler için LLM eğitebilir mi? Henüz hayır. Edge Impulse’ın model kataloğu sınıflandırma ve algılama için boyutlandırılmış CNN, RNN ve transformer çeşitleri kapsar, dil üretimi değil. LLM çalışması için PyTorch’ta eğitin ve dağıtım için llama.cpp veya TinyMaix’i kullanın.

llama.cpp gerçekten mikrodenetleyicide kullanılabilir mi? Araştırma ve demolar için, evet. Ürün kalitesi dağıtım, genellikle model mimarisi ayarlandıktan sonra TFLM veya TinyMaix’e geçer, çünkü bellek ayak izi daha sıkıdır ve RTOS derlemelerine entegrasyonu daha temizdir.