YAPC::Tokyo 2026 で Transformer 道場をやります

最後の YAPC だと聞いて、この10年行けていなかった分だと思い、もしもトークが採択されたら弾丸日程で日本いくぞ!という気持ちで応募したら、本当に採択されたのでとてもうれしいです。というわけで、YAPC::Tokyo 2026 で 「Transformer をあなたの言語で ― 60分で書く LLM 推論、Transformer 道場」 というハンズオンをやります!YAPC 常連の方も初めての方も、ぜひ会場でお会いしましょう!

何をやるの?

Day2 の 11/29 11:05〜のハンズオン (60分) で、好きな言語を使って非常に簡単な Transformer 推論エンジンを書いてもらおうと思います。 15M パラメータの小さいモデルで文章が生成されるところまでやりきります。ただしモデル学習はやりません、いわゆる推論だけです。とは言え、限られた時間で Transformer の理解をなるべく深めてもらいたいので、基本的にコーディングエージェントに書いてもらうハンズオンになります。そのため、書くことよりもコードを読んで動作を見て理解することに重きを置いています。

ハンズオンコンテンツは鋭意 Opus 5.5 と作成中ですが、言語依存しないテストスイートと実装のための細かな設計をしたためたスキルを提供する形になるので、おそらく何もしなくても出来上がってしまうでしょう。でもそれで動くものができたからと言って中身を理解したことにならないのは皆さんお分かりのことかと思います。なので、コードを読んで動きを見て理解するためのマテリアル作成に時間を費やしています。

コーディングエージェントに書いてもらうので、特にプログラミング言語は選びません。自分が一番慣れているものを使うもよし、あえて勉強中のものを使うもよし。エージェントの力でハンズオン前半に出来上がるコードを、後半ではじっくり読んで動かしてみて、わからないところを AI なり僕なりに聞いてもらって、Transformer 完全に理解した!になってもらえたら嬉しいなと思ってます。

ダニング=クルーガー曲線。完全に理解した、なにもわからない、チョットデキルの順に自信が上下する

なぜ Transformer を自分で書くのか?

LLM を使ったことがない方はもはやいないと思いますが、実際 API を叩いた裏側で何が起こって言語生成されているかを分かっている人は多くはないでしょう。僕は AI を学び始めた 1年半くらい前にその状況が嫌だなと思い、中身を勉強することに数か月費やしました。その時に初めて Transformer というものを知りました。

今の AI ブームのすべては Transformer で動いているといっても過言ではないくらいにありとあらゆるところで使われていると知って、逆に言えばこれが分かれば大体わかるんじゃん、ラッキー!と思って、必死こいて Stanford の講義ビデオを見まくって勉強しました。

特に CS336 というコースが素晴らしくて、僕は事あるごとにおすすめしてるんですが、これがまさに Transformer をゼロから作ってみるコースなのです。なかなかハードコアで、Tokenizer の実装から小さいモデルの学習まで、一通り実装を体験できます。数値計算の一番 primitive な部分は PyTorch に投げますが、その上のレイヤの便利クラスとかは使わずに、準備されたテストスイートを通すために授業と課題の資料と格闘しながら、なんとか作りきることができました。

だからといって、今すぐ AI ラボで LLM を学習させたり推論基盤作ったりできるわけでは全くないです。それは、ソフトウェアエンジニアとして CPU エミュレータを作ってみたからと言ってすぐに CPU メーカーで CPU 作れるようになるわけではないのと似たような話かと思います。それでも、CPU の仕組みを可能な限り低レベルで知っていることは、ソフトウェアエンジニアとして働く上で必ずプラスになるように、Transformer の仕組みを知っていれば AI を使ったシステム開発において必ずプラスになります。

どうして context window があるのか、なぜ cache が重要なのか、といった基礎的なことから、AI エージェントを作るにあたってどういうところに気を付けると良いかの勘所まで、Transformer の知識があるとないとでは確実に差がでます。また、近いうちに Transformer の次が生まれたときに、キャッチアップする量が Transformer からの差分だけで済みます。自然言語処理をずっとやってきた人たちなどは、Transformer がそういう文脈で出てきたのですぐ理解できちゃうんですが、僕みたいにいきなり Transformer から始めることになった人はキャッチアップが大変でした。そのキャッチアップの過程で学んだことは Notion にまとめているので、興味のある方はぜひ覗いてみてください。

そのキャッチアップの大変さをなるべく無くして、より多くの人が Transformer を理解している世界にしたいなと思ってこのハンズオンを提案しました。元々1年前くらいにコンテンツ作り始めていたんですが挫折してました。それをハンズオンというイベント駆動で再開して、かつその間にコーディングエージェントが圧倒的な進化を遂げたおかげで、2日くらいでベースのコンテンツを完成させることができました。今はひたすらそれをブラッシュアップしてます。お楽しみに!もちろん、イベント後には全部 GitHub で公開するので誰でもいつでも体験できるようにします。

(コーディングエージェントを使ってだけど)自分で書いて動かしてみることは、何時間も動画で勉強したり本を読んだりするだけよりも効果的です。ぜひハンズオンしてみましょう!

誰でも参加できます

コーディングエージェントを使ったことのある方であれば、誰でも参加できます。用意するものもノートパソコン1台で十分、 GPU も不要です。具体的な環境は今考え中ですが、ノートパソコンの中でご自身が契約してるコーディングエージェントを使ってもらうか、もしくはこちらでクラウド環境を準備するのでそこで全部用意しておくか、その合わせ技か、みたいなのを考えてます。アイデア募集中!

最後の YAPC なので

なんでわざわざ宣伝を書いたかというと、YAPC が今年で一旦一区切りということなので、できるだけ多くの方に足を運んでほしいなと思ったからです。僕は YAPC が一旦最後となった 2015年が最後の参加だったんですが、4年ほど参加して人生変えられてます。きっとそういうインパクトを受ける方がいるんじゃないかなと思うので、初めてでも遠慮することなく最後のお祭りに参加してみると良いと思います。トークを聞くだけじゃなくて、廊下でお話したりもしましょう。その辺歩いてるときに捕まえてもらって大丈夫です。前夜祭も懇親会も楽しみましょう!

15年くらい前に参加したときはコード書いたことない完全なインフラ屋さんでしたが、そこからいろいろ経験して Amazon でソフトウェアエンジニアもやり、1年半前くらいに AI エンジニアに振り切りました。そんな感じのパッチワークな人生です。

なお、僕は今カナダに住んでるわけですが、これのために特に旅費とか出ないので自腹で行きます。今後の副業のご依頼なんかあったらついでに話しかけてもらえると大変お金が助かります。分散システムと DevOps と AI がチョットデキルので、その辺のお仕事をリモートでできます。