{"id":182824,"date":"2026-08-11T04:54:15","date_gmt":"2026-08-11T02:54:15","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3"},"modified":"2026-08-12T18:21:41","modified_gmt":"2026-08-12T16:21:41","slug":"yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3","title":{"rendered":"Een taalmodel met 28,9 miljoen parameters werkt op de ESP32-S3","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" style=\"display: block; margin: 0 auto;\" src=\"\/wp-content\/uploads\/2026\/08\/5aa73219999b2228886364ab9430b279.jpg\" \/> <a id=\"memories_button\" title=\"Volgen\" href=\"#\" rel=\"nofollow\"><i class=\"icon-bell\"><\/i><\/a><br \/>\nOntwikkelaar Vyacheslav Serbov, die optreedt onder het pseudoniem slvDev, <a href=\"https:\/\/x.com\/slvDev\/status\/2080322138410524737\" rel=\"nofollow\">gedemonstreerd<\/a> heeft een volledig lokale tekstgeneratie op de ESP32-S3 microcontroller ontwikkeld. Het door hem gemaakte taalmodel bevat 28,9 miljoen parameters en genereert ongeveer 9,9 tokens per seconde zonder gebruik te maken van een server of andere externe rekenbronnen. De gegenereerde korte verhalen worden weergegeven op een aangesloten OLED-display.<\/p>\n<p>&nbsp;<\/p>\n<p>Project <a href=\"https:\/\/github.com\/slvDev\/esp32-ai\" rel=\"nofollow\">esp32-ai<\/a> is getest op de ESP32-S3 N16R8 module, die 512 KB ingebouwde SRAM, 8 MB PSRAM en 16 MB flashgeheugen heeft. Het tot vier bits gequantiseerde model neemt 14,9 MB in beslag. De broncode van de uitvoeringsomgeving in C, de leermiddelen en het kwantiseren van het model, de firmware, tests en scenario's voor het uploaden naar de kaart zijn gepubliceerd in de repository.<\/p>\n<p>&nbsp;<\/p>\n<p>De opgegeven 28,9 miljoen parameters moeten niet rechtstreeks worden vergeleken met het aantal parameters van gewone desktop LLM's. Volgens <a href=\"https:\/\/github.com\/slvDev\/esp32-ai\/blob\/main\/RESULTS.md\" rel=\"nofollow\">een gedetailleerd rapport van de ontwikkelaar,<\/a>bestaat het model uit een dicht computational kern van ongeveer 559 duizend parameters, een outputlaag van 3,1 miljoen parameters en een tabel van laag-voor-laag vectorrepresentaties van ongeveer 25 miljoen parameters. Juist deze laatste zorgt voor het grootste deel van de formele grootte van het model, maar wordt niet volledig verwerkt bij het genereren van elk token.<\/p>\n<p>&nbsp;<\/p>\n<p>Om het model te plaatsen worden drie geheugenniveaus gebruikt. De meest gebruikte gegevens bevinden zich in de interne SRAM, de outputlaag, KV-cache en tijdelijke buffers bevinden zich in de PSRAM, terwijl de 25 miljoen tabel in het flashgeheugen blijft en toegankelijk is via mapping in het adresruimte. Voor elk token worden er slechts ongeveer zes rijen uit gelezen met een totaal van ongeveer 450 bytes.<\/p>\n<p>&nbsp;<\/p>\n<p>Een dergelijk apparaat is gebaseerd op de Per-Layer Embeddings technologie, toegepast door Google in Gemma 3n. Volgens <a href=\"https:\/\/ai.google.dev\/gemma\/docs\/gemma-3n\" rel=\"nofollow\">de documentatie van Google,<\/a>kunnen PLE-parameters buiten het werkgeheugen van het model worden opgeslagen en aan het outputproces worden toegevoegd naarmate afzonderlijke lagen worden verwerkt. In esp32-ai is dit principe overgebracht naar de geheugenhierarchie van de microcontroller, waarin snelle SRAM bijzonder beperkt is.<\/p>\n<p>&nbsp;<\/p>\n<p>De eerste correcte versie van de in C geschreven runtime gaf slechts 0,57 token per seconde. Na het plaatsen van de outputlaag in PSRAM, het overschakelen naar 8-bits activaties, het verdelen van de berekeningen tussen twee Xtensa LX7-kernen en andere optimalisaties werd de vertraging teruggebracht tot 94,9 ms per modelstap. De uiteindelijke gemeten snelheid bereikte 9,88 token per seconde inclusief het volledige generatieproces. De belangrijkste beperking is nu de doorvoersnelheid van PSRAM bij het lezen van de outputlaag.<\/p>\n<p>&nbsp;<\/p>\n<p>Het model is getraind op een synthetische dataset <a href=\"https:\/\/arxiv.org\/abs\/2305.07759\" rel=\"nofollow\">TinyStories<\/a>, bestaande uit eenvoudige Engelstalige verhalen met een beperkte woordenschat. Daarom is het in staat om zinnen voort te zetten en korte samenhangende verhalen te verzinnen, maar het is niet bedoeld voor het beantwoorden van vragen, het uitvoeren van instructies, programmeren of het reproduceren van feitelijke kennis. De ontwikkelaar beschouwt het werk voornamelijk als een demonstratie van een effectieve plaatsing van het model in het geheugen van de microcontroller, en niet als een kant-en-klaar autonoom chatbot.<\/p>\n<p>&nbsp;<\/p>\n<p>In de actuele documentatie benadrukt de auteur afzonderlijk dat esp32-ai een zelfstandige ontwikkeling is. Projecten <a href=\"https:\/\/github.com\/karpathy\/llama2.c\" rel=\"nofollow\">llama2.c<\/a> van Andrei Karpaty en de eerdere uitvoering van het 260.000 model op de ESP32-S3 worden alleen genoemd als richtlijnen en voorbeelden van eerdere werken: de code, checkpoints en methodologie zijn niet rechtstreeks uit deze overgenomen. De broncode van esp32-ai <a href=\"https:\/\/github.com\/slvDev\/esp32-ai\/blob\/main\/LICENSE\" rel=\"nofollow\">wordt verspreid onder de MIT-licentie<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<p>Bron: <a rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/ai\/18353997\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0412\u044f\u0447\u0435\u0441\u043b\u0430\u0432 \u0421\u0435\u0440\u0431\u043e\u0432, \u0432\u044b\u0441\u0442\u0443\u043f\u0430\u044e\u0449\u0438\u0439 \u043f\u043e\u0434 \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u043e\u043c slvDev, \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u0443\u044e \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u044e \u0442\u0435\u043a\u0441\u0442\u0430 \u043d\u0430 \u043c\u0438\u043a\u0440\u043e\u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043b\u0435\u0440\u0435 ESP32-S3. \u0421\u043e\u0437\u0434\u0430\u043d\u043d\u0430\u044f \u0438\u043c \u044f\u0437\u044b\u043a\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 28,9 \u043c\u043b\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0438 \u0432\u044b\u0434\u0430\u0451\u0442 \u043e\u043a\u043e\u043b\u043e 9,9 \u0442\u043e\u043a\u0435\u043d\u0430 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443, \u043d\u0435 \u043e\u0431\u0440\u0430\u0449\u0430\u044f\u0441\u044c \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438\u043c \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u0430\u043c. \u0421\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u0440\u043e\u0442\u043a\u0438\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b \u0432\u044b\u0432\u043e\u0434\u044f\u0442\u0441\u044f \u043d\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u0439 OLED-\u0434\u0438\u0441\u043f\u043b\u0435\u0439. &nbsp; \u041f\u0440\u043e\u0435\u043a\u0442 esp32-ai \u0438\u0441\u043f\u044b\u0442\u0430\u043d \u043d\u0430 \u043c\u043e\u0434\u0443\u043b\u0435 ESP32-S3 N16R8, \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0449\u0435\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":9,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-182824","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\".\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Emin Berklin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/news\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u042f\u0437\u044b\u043a\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0441 28,9 \u043c\u043b\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u043d\u0430 ESP32-S3 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\".\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-08-11T02:54:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-08-12T16:21:41+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Taalmodel met 28,9 miljoen parameters werkt op ESP32-S3 | ProHoster","description":".","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u042f\u0437\u044b\u043a\u043e\u0432\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0441 28,9 \u043c\u043b\u043d \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0430 \u043d\u0430 ESP32-S3 | ProHoster","og:description":".","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/yazykovaya-model-s-289-mln-parametrov-zarabotala-na-esp32-s3","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-08-11T02:54:15+00:00","article:modified_time":"2026-08-12T16:21:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"182824","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-08-11 06:43:49","updated":"2026-08-11 06:43:49","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/182824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=182824"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/182824\/revisions"}],"predecessor-version":[{"id":182897,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/182824\/revisions\/182897"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=182824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=182824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=182824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}