ESP32-S3が単体で物語を書く、言語モデルの規模が従来の100倍に

文章を書くAIは、データセンターや高性能なパソコンで動かすものだと思われている。ところが、電子工作に使う1000円台のマイコン1枚に言語モデルを載せた例が出てきた。開発者のslvDev氏が公開した「esp32-ai」は、2890万個のパラメーターを持つ言語モデルをESP32-S3の上だけで動かす。ネットにはつながず、つないだ小さな画面へ文章を書き出していく。速さは毎秒9.5トークン、トークンは単語より細かい区切りを指す。

難しさは、モデルの置き場所にある。マイコンが素早く読み書きできるメモリーは、ESP32-S3で512KBしかない。スマートフォンで撮る写真1枚よりも小さい容量で、言語モデル全体を置くにはとても足りない。そのため、同じ規模のチップで動いた言語モデルはこれまで26万パラメーターが上限だったと同氏は書く。今回載せたのは、その約100倍にあたる。価格は同氏の記述で約8ドル(約1260円)だ。

同氏が採ったのは、モデルを速いメモリーに置くのをやめる手だ。言語モデルのパラメーターの大半は、計算に使うのではなく、単語を数値の並びに置き換える対応表に入っている。辞書と同じで、そのつど必要な行さえ引ければいい。そこで2500万行の表は容量の大きい16MBのフラッシュメモリーへ回し、1トークンを出すたびに6行分、約450バイトだけを読み出す。実際に計算する小さな部分だけが速いメモリーに残る。4bitに丸めたモデルは14.9MBで、16MBのフラッシュにぎりぎり収まる。

この置き方はGoogleがGemma 3nとGemma 4で使うPer-Layer Embeddingsで、もとはスマートフォンやGPUを想定した設計だった。同氏はこれほど小さなチップで試した例は見当たらないと書いている。ただし、できることは限られる。学習に使ったのは短い作り話を集めたTinyStoriesで、書けるのも短く単純な物語だけだ。質問に答えることも指示に従うこともできず、世の中の事実も知らない。計算する部分が小さいままだからで、メモリーの工夫では変わらないと同氏は断っている。

リポジトリのコミットは2026年7月20日から26日までの31件で、学習用のコードから実機での動作までを1週間で積み上げた。コードはMITライセンスで公開され、パラメーターの数え方を誤って初期の数値が過大になっていた経緯も履歴に残している。手元にESP32-S3がある人なら、同じ手順をたどれるだろう。

関連情報

fabsceneの更新情報はXで配信中です

この記事の感想・意見をSNSで共有しよう
  • URLをコピーしました!

最新記事

YouTube / PodCast

【PR】読んで役立つ注目記事

目次