Saját AI az ESP32-n: kezdő útmutató
Egy ESP32-re tényleg lehet mesterséges intelligenciát tenni — de nem egy ChatGPT-méretű nyelvi modellt. A kulcsszó a TinyML: apró, előre betanított neurális hálózat, amely közvetlenül egy mikrokontrolleren fut.
Mire képes egy ESP32-s AI?
A mikrokontroller alkalmas lehet egyszerű mozdulatok felismerésére gyorsulásmérőből, néhány hangparancs vagy környezeti állapot osztályozására, illetve kamerával egyszerű képfeldolgozási feladatokra. Komplex szöveges érvelésre és általános fizikai feladatmegoldásra nem érdemes számítani rajta.
1. Válassz megfelelő hardvert
Kezdéshez ESP32-S3 fejlesztőpanelt ajánlok, lehetőleg PSRAM-mal. Egy hagyományos ESP32 is képes korlátozott inferenciára, de több modell jelentősen lassabban fut rajta. Az alaplap mellett USB-kábelre és számítógépre lesz szükséged; kamerát vagy szenzort később is csatlakoztathatsz.
2. Mi történik valójában?
A teljes folyamat négy részből áll:
- Adatgyűjtés: például gyorsulásmérő-értékeket veszünk fel különböző mozdulatokról.
- Tanítás PC-n: Pythonban egy apró osztályozó modellt tanítunk. A tanítás nem az ESP32-n történik.
- Optimalizálás: a modellt kvantáljuk és az ESP-DL számára használható
.espdlformátumra alakítjuk. - Inferencia az ESP32-n: a beépített modell új mérésekhez kategóriát rendel, internet nélkül.
3. Első lépések ESP-IDF és ESP-DL használatával
Telepítsd az ESP-IDF fejlesztői környezetet, majd nézd meg az Espressif hivatalos ESP-DL projektjének példáit. Az aktuális dokumentáció ESP32-S3 és ESP32-P4 paneleket ajánl a gyors kezdéshez.
Egy ESP-IDF példaprojekt könyvtárában a tipikus parancsok:
idf.py set-target esp32s3
idf.py build
idf.py -p PORT flash monitor
A PORT értékét cseréld az operációs rendszereden látható soros portra. A parancsok csak olyan projektben működnek, amely tartalmaz megfelelő ESP-IDF alkalmazást és kompatibilis modellt; önmagukban nem tanítanak AI-t.
4. Egyszerű projektötlet
Készíts „mozgásfelismerő lámpát”. Rögzíts 50–100 mérést például nyugalmi helyzetről és két különböző kézmozdulatról. Taníts egy kis hálózatot a PC-n, majd futtasd az ESP32-S3-on: ha felismeri a mozdulatot, kapcsoljon egy LED-et. A kis adatmennyiség csak prototípusra elég; pontosabb működéshez több, változatos mérés szükséges.
5. Mit nem tud?
Egy teljes méretű LLM, például a ChatGPT-hez hasonló modell, nem fér bele a tipikus ESP32 memóriájába és számítási kapacitásába. Az ESP32 viszont nagyon jó célhardver egyetlen jól meghatározott AI-feladathoz.