ディスカッション (11件)
Hacker Newsで公開された「1-Bit Bonsai」は、世界で初めて商用利用に耐えうるとされる1ビットの重みを持つ大規模言語モデル(LLM)プロジェクトです。従来の量子化よりもさらに踏み込んだ1ビット化を実現しつつ、実用的なパフォーマンスを維持している点が大きな特徴です。低スペックなエッジデバイスでの推論や、計算リソースの劇的な削減を可能にする、LLMの未来を切り拓く技術として注目を集めています。
Bonsaiって1ビットなの、それとも1.58ビット?
めちゃくちゃ面白そう。試してみるために自分のJetson Orin Nanoで彼らのllama.cppフォークをビルドしてるところ。
大規模機械学習モデルのトレンドは、浮動小数点数(float)での演算よりもビット単位に向かっていく気がするな。floatには非効率なところが多いんだよね。大抵は正規分布みたいな感じだから、ほとんどの値が狭い範囲に集まってるのに重みの保存や計算にコストがかかっちゃう。ニューラルネットワークの基礎は実数値関数にあるかもしれないし、それはfloatでシミュレートされてるけど、結局floatの演算だって内部的にはビット演算だし。唯一の問題は、GPUがfloat向けに作られてて、標準的な機械学習理論が実数ベースだってことかな。
ジェボンズのパラドックスに従えば、もっと巨大な1ビットモデルが出てくることになるんじゃない?
トレードオフは何なんだろう?小さくて速くて効率的なら、性能は落ちるのかな?素人なんだけど、気になって。
128ビットごとにFP16のスケールファクタを持つ1ビットか。これでこんなにうまく動くなんて面白い。いくつか試してみたよ。Cursorを動かしてみたんだけど、それ自体が感動ものだった。ツールの呼び出しもちゃんとこなしたし。Cursor経由でウェブページのテストをいくつか生成させてみた。円周率のモンテカルロ・シミュレーションでは、ロジックは合ってたけど、テストを開始するためのインターフェース作成には失敗した。修正の依頼はだいたい通ったけど、一部の記号が残っちゃってエラーになったから、少し手動で直す必要があった。サイモン・ウィルソンのペリカンも試したけど、すごく抽象的で、鳥どころか自転車にすら見えなかった。結果の画像はここ:https://x.com/pwnies/status/2039122871604441213 。公式サイトにデモがないみたいだから、試してみたい人向けにローカルデスクトップで動かしてるllama.cppを置いとく。投稿から2、3時間は動かし続ける予定:https://unfarmable-overaffirmatively-euclid.ngrok-free.dev
フル精度(FP16/FP32)のモデルと比較するのはちょっと不誠実な気がするな。モデルのサイズやメモリ使用量を気にする人なら、間違いなくすでに少なくとも8ビット量子化は使ってるはずだし。彼らの主な貢献はハイパーパラメータのチューニングにあるみたいで、他の量子化手法との比較は一切されてないね。
速さの理由はストレージだけじゃない。1ビットなら、FP16と比べて1回のフォワードパスあたりDRAMから読み込むデータ量がだいたい16分の1で済む。メモリ帯域がボトルネックになるハードウェアだと、それがそのまま速度向上に直結するんだよね。
めちゃくちゃクールだね!ollamaで試すのが待ちきれないよ。ollamaのモデルリストに追加されたら助かるんだけどな。
すごくいいし、かなりまともに動くね!