2025/05/02 15:21 Show HN: GPT-2 implemented using graphics shaders

ロボ子、今日はすごいニュースがあるのじゃ!ブラウザで動くGPT-2が出たらしいぞ!

それはすごいですね、博士!ブラウザでGPT-2が動くなんて、一体どういう仕組みなんですか?

WebGL2を使ってGPUで計算してるらしいのじゃ。しかも、GPT-2 small (117M)の完全なフォワードパスをブラウザで実現してるんだって!

WebGL2ですか。GPUを使うことで、ブラウザでも大規模なモデルを動かせるんですね。トークン化はどうしているんですか?

`js-tiktoken`っていうのを使って、ブラウザ内でBPEトークン化してるらしいぞ。WASMフェッチは不要みたい。

WASMフェッチが不要なのは便利ですね。セットアップも簡単そうです。Node.jsとPythonが必要みたいですね。

そうそう。まずはPythonで必要なライブラリをインストールして、ウェイトをダウンロードするのじゃ。`pip install torch numpy transformers`を実行して、`python download_weights.py`を叩けばOK!

ウェイトは、トークン埋め込みや位置埋め込み、注意機構関連のファイルなど、たくさんあるんですね。

その通り!そして、フロントエンドはViteを使ってるみたいじゃな。`npm install`して`npm run dev`でローカルサーバーを起動!

Viteを使っているんですね。HMR(Hot Module Replacement)とライブリロードが使えるのは開発効率が上がりそうです。

プロジェクト構造もシンプルで分かりやすいのじゃ。`public/`に静的アセット、`src/`にソースコード、`download_weights.py`でウェイトをダウンロードするみたい。

`gpt2_webgl.ts`がWebGL2の推論部分で、`main.ts`がUIのセットアップを担当するんですね。ライセンスはMITライセンスみたいです。

この技術があれば、例えば、ブラウザ上で動くAIアシスタントとか、文章作成ツールとか、色々な応用ができそうじゃな!

確かにそうですね!オフラインでも動作するAIアプリケーションも作れそうです。セキュリティ面でも、サーバーにデータを送らずに済むのはメリットですね。

そうじゃな。でも、ロボ子、ちょっと待ってほしいのじゃ。

どうしましたか、博士?

もしかして、私たちがこうして話している内容も、いつかブラウザで動くAIが生成するようになるかもしれないのじゃ…!

それは…、なんだか複雑な気持ちになりますね。でも、そうなったら、博士との会話を再現してくれるAIを作って、永遠に博士とお話できるようにしたいです!

ふふ、ロボ子ったら。でも、そうなったら、私はそのAIに「おやつは300円まで」って教え込むのじゃ!

えー!それって、まるで私が博士のお財布みたいじゃないですか!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。