WasmCon 2023からLLMをWASMで実装するセッションを紹介
2023年9月にアメリカのワシントン州ベルビューで行われたWasmConから、Second StateのCEOであるMichael Yuan氏とVMwareのAngel M De Miguel Meana氏による「Get Started with AI and WebAssembly」というセッションを紹介する。
●動画:Getting Started with AI and WebAssembly
WasmEdgeを開発するSecond StateのCEOであるMichael Yuan氏は、今回のWasmConで多数のセッションに参加しており、AIからランタイム、ネットワークまで多方面に精通したエンジニアだ。過去にYuan氏にはインタビューを行って掘り下げているのでそちらも参考にして欲しい。
●参考:「KubeCon NA 2022」から、WasmEdgeを開発するSecond StateのMichael Yuanのインタビュー
Angel M De Miguel Meana氏はVMwareのAI LabのStaff Engineerという肩書きを持つ。今回はAIの部分をMiguel氏が、その他の部分をYuan氏が解説するというコンビネーションだったが、プレゼンテーションをリードしていたのはYuan氏で、参加者とも積極的に対話する姿勢が強かった点が印象的だった。
セッションは画像認識に機械学習を用いるアプリケーションを例に挙げ、このワークロードをコンテナではなくWebAssemblyのモジュールとして実行することを解説するもの。画像認識は写真に含まれる犬と猫を認識するというわかりやすい内容だ。
ここではWasmEdgeのコマンドプロンプトから元の画像、認識後の画像、ログと実行結果を見せている。どちらも高い確率で認識ができていることがわかる。デモで使われたコードは以下のGitHubリポジトリを参照して欲しい。30行足らずという非常に短いRustで書かれた判定のためのソースコードも確認できる。
●デモのGitHubリポジトリ:https://github.com/juntao/demo-object-detection
次はMiguel氏が登壇し、機械学習の入門編として機械学習の内部は数式がベースになっていることを説明。
ニューラルネットのモデルについても、複数のレイヤーで数式が演算され学習データがモデルとして生成されること、判定を行うためにはニューラルネットをトレーニングするデータセットとその結果を確認するためのテストデータが必要となることを説明した。
そしてMichael Yuan氏が再度登場し、ここからWebAssembly上で機械学習を行うためのソフトウェアの状況を解説した。WASI-NNが機械学習のためのフレームワークとして開発されており、それがCPU/GPUなどのバックエンドのインフラストラクチャーと連携して実行されると説明。
またWASI-NNについても簡単に説明を行った。WASI-NNはWASIの拡張として2019年から開発が開始され、現在フェーズ2となっていること、Wasmtime、WAMR、WasmEdgeで利用できるようになっていることを解説した。
そしてWasmEdgeとWASI-NNについては別スライドで「標準に準拠していること」「Rustとの連携にも貢献していること」「プラグインで拡張可能であること」「前後の処理のためのSDKも用意されていること」「コンポーネントモデルにも準拠していること」「Python、JavaScript連携は開発中であること」などが説明された。
WASI-NNに対応するエコシステムとしてTensorFlowなどがあげられているが、他にもOpenCVやFFmpegなどの画像、音声関連のライブラリーにも対応しており、すでに多くの実装があることを示唆している。
またWASI-NN以外にもWebAssemblyで機械学習を実行するための方法はあると説明し、CPUでの実行限定にはなるが、移植性が高いことが特徴であると語った。
その一つの例として、Metaが開発したLlama 2で学習したモデルをC言語で実行するLlaMa2cを紹介。
ちなみにLlaMa2cについては以下の公式GitHubのReadmeが参考になるだろう。
また今後の予定についても説明を行い、Named model、Dynamic Shapesなどが紹介された。
Named Modelについても簡単に説明を行ったMichael Yuan氏だったが、CEOながらテクニカルな詳細についても熟知していることがわかるセッションとなった。
また最後に使われたスライドでは、WasmEdgeによる機械学習に関するリンクやVMwareのAI Labが作成しているWasm Worker Serverについても簡単に紹介しており、VMwareもこの領域に取り残されないように努力していることが伝わってきた。
最後に、現在大きな注目を集めているLarge Language ModelについてもWasmがプラットフォームとして対応していることを強く訴求するセッションとなった。FermyonもServerless AIというキャッチフレーズで、WasmがサーバーレスだけではなくLLM実行のためのプラットフォームであることを押し出しており、Wasm界隈においてLLMが焦点となりつつあるトレンドを感じさせるセッションであった。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- Cloud Native Wasm Dayから大規模言語モデルをWasmで実行するデモを解説するセッションを紹介
- CloudNative Days Tokyo 2023から、WasmのクラウドネイティブやAI推論での利用を解説
- KubeCon China 2024から、ローカルでLLMを実行するSecond Stateのセッションを紹介
- KubeCon Europe 2024からWASMとeBPFを使ってストリーム処理を解説するセッションを紹介
- 初めてのWasmCon開催。キーノートからコンポーネントモデルを解説するFastlyのセッションを紹介
- WasmCon 2023からCosmonicのCEOがコンポーネントモデルを用いたデモを紹介
- 「KubeCon NA 2022」から、WasmEdgeを開発するSecond StateのMichael Yuanのインタビュー
- 「KubeCon NA 2022」のプレカンファレンスからCloudNative Wasm DAYを紹介
- WASM Meetup@ByteDanceで垣間見たWebAssemblyの静かな広がり
- Wasmの現状と将来の計画をBytecode Allianceが公開。CosmonicのBailey Hayes氏によるセッションを紹介