yousan
Get in touch

← Back to Works

JapaneseTinyAgentLM (Japanese tool calling on a microcontroller)

A 3.15M-parameter Japanese language model that runs entirely on an ESP32-S3 and turns Japanese requests into robot action calls (JSON).

Date
Role
Design, data, training, on-device implementation, release
Tech
Tiny LM, Tool calling, ESP32-S3, INT4, C, WebAssembly

Overview

A tiny Japanese language model that runs entirely on a microcontroller (ESP32-S3). The first model, Action LM (3.15M parameters), turns short Japanese requests such as “look to the left” into action calls (JSON) such as look(direction=left). It moves the head and changes the facial expression of M5Stack Stack-chan (CoreS3) using only the device itself, with no NPU and no network. The demo runs the same C runtime as the device (compiled to WebAssembly) with the INT4 weights in the browser.

What I did

I generated and checked the training data, trained the model from scratch, quantized it to INT4, wrote the C inference runtime and the ESP32-S3 firmware, built the browser demo, and handled evaluation and release.

Technical notes

Links