メインコンテンツへスキップ
見出し画像

Bonsai 27B 試したらボロボロだった 〜VRAM16GBで動くローカルLLMが常識を覆…さなかった〜

    こんにちはRcatです。
    1Bit LLMで話題になったBonsaiシリーズの27Bが来ましたね!お待ちかねですよ。
    8Bの時はサイズが小さかったので特にベンチしていませんが、27Bサイズとあらば、エージェントとしての活躍が期待できるかもしれないので、早速試してみました。

    追記: Bonsai-2を試しました。能力が驚異的に向上しています。

    画像

    はじめに

    利用規約

    情報や作品の活用時は事前に利用規約をご確認ください。


    コメントについて

    利用規約のガイドラインを確認の上コメントしてください。
    則っていないコメントは削除します。


    概要

    Bonsai 27Bとは

    Bonsaiといえば、4月ごろにでたBonsai 8Bで世間を騒がせた奴ですね。なんといっても1Bit LLMという驚異的なものです。

    今回はそれの27Bバージョン。前回はQwen3 8ベースでしたが、今回のはQwen3.6 27Bベース。

    これの何がすごいって、現状30Bクラスでは多分最強モデルがQwen3.6です。
    いろいろチューニングモデルが出回り始めているものの、使った感じプレーンのQwen3.6が一番強い(バイブコーディング丸投げ用途で)。
    その最強モデルの1.7Bit版がBonsai27Bなのです。期待するなという方がおかしい

    種類と精度

    今回は完全0,1の1Bitと、-1,0,1の1.7Bitの二種類があるそうです。
    公式の記述では、1.7Bitは元の95%、1Bitは90%精度を保っているそうです。

    95%というと、普通の量子化の場合4Bitに当たります。それの半分以下のサイズで同等の精度を保持しているということらしいです。
    はて、1.7Bitで16Bitの95%を保持だと?信じられん。本当ならすごいことです。

    というわけなので実際にエージェントとして回して確認します。

    準備

    エンジン

    公式手順に則り、専用のllama.cppのフォークをCUDAビルドします。
    手順通りなので特にいうことはありません。

    モデル設定

    公式の推奨に合わせます。コンテキストは128kに制限。

    画像

    その他共通設定はいつも通りです
    公式見ると、KVはQ4に下げる余地が~みたいなこと書いてあるので、とりあえずQ8に落としちゃってよいでしょう
    というかQ8じゃないとメモリ足りないし、普通のモデルはこれで大丈夫。

    画像

    要求スペック

    モデルのサイズ

    今回使うのは1.7Bitの方です。サイズは6.67GBでした。

    画像

    ちなみに、今まで使っていた、Qwen3.6 27B IQ4_XSは14.3GBあります。
    もし本当に95%精度を保っているなら、同じ能力で半分以下のサイズということになります。

    VRAMとコンテキスト

    まずはこちらをご覧ください。
    なんと27B DenseモデルがVRAM16GBにおさまってしまうという奇跡が起きています!
    しかも、128kコンテキストです。エージェントとしては最低でも128kのコンテキストがないとやっていけません。64kでも動きますが、連続でファイル読むと積みます。

    画像

    つまり、VRAM16GBで実用といわれる30B級モデルがエージェント要件の128kコンテキスト含めおさまってしまうんですね。

    パフォーマンス

    私の利用規約を要約させたのがこちら

    画像

    Denseモデルでこの速度。
    デコードはモデルサイズ+KV10%で7.4GBとして、帯域896GB/sだと理論値121t/s。
    大抵理論値の半分程度しか出ないことが多いので、おおかたOK?
    プリフィルはどんな計算なのかわからないので、これが早いか遅いかは何とも言えない。

    なお、全く関係ないが、Gemma4 E4B Q4の結果はこれ。サイズは4.96GB。
    サイズだけで考えると、1.35倍差なのでBonsaiはちょっと遅い?

    画像

    なお出力はこんな感じで、ちゃんとそれっぽい答えが返ってきています。
    今までだと3Bit以下は意味不明な答えが返ってくることが多かったので、1.7Bitでこれってすごいですね。

    画像

    エージェントとしての能力(が期待外れだった件)

    概要

    さて、VRAM16GBでもエージェントとしての要件を満たして動きそうだということはわかりましたが、実際使えるんですかね?

    LLMが使えるというのには二つの意味があります。

    • 動くかどうか
      物理的に使えるかどうか。まず自分の環境で動かないと意味がありません。
      動けばそれは「使えた」というでしょう

    • 能力が要件にマッチしているか
      求めた能力を持っていて、「使える」部下かどうか。
      ベンチマークスコアが載ってますが、使ってみると全然話が違うなんてざらにあります。
      自分のオリジナル環境で回したらどうかって書いてあることが少なくわかりづらい。

    べンチマーク

    最近のベンチは内容自体がトレーニングデータに混入しているいわゆる汚染状態になっているらしくあまり信用できないそうですね。
    実際Qwen3.6より優れているという2モデルを使ったことがありますが、どっちもオリジナルベンチを掛けるとプレーンのQwen3.6に負けます。

    ちなみにどんな感じかというと、過去にこんな感じでお題を与えて丸投げしてどうなるかを見てます。

    内容

    今回はTODOアプリを作ります。ほかでもよく見かけますよね。
    あんまり簡単でもつまらないので下記のような仕様にします。

    • フロントエンド
      Vue3

    • バックエンド
      Flask

    • DB
      SQLite

    また、事前に用意するのは環境と要件定義書のみです。
    要件定義書にどんなアプリが欲しいのかや制約を書き込んで置きます。
    また、環境構築を任せるのは怖いので、vueのテンプレートプロジェクトを用意しておき、バックエンドもvenvとflaskなどのインストールは済んだ状態から開始です。

    なので、エージェントは下記を行えばよいです

    • 詳細設計書の作成

    • 実装

      • フロントエンド

      • バックエンド

    • テスト

      • ブラウザ

    • 報告

    Take1

    結論から言います。vueはコンパイルできましたが、サーバーが起動しませんでした。

    約20mほどでタスクが完了しましたが、チラ見していた感じ、テストはしてない。
    確認するとフロントエンドもビルドされてない状態だった。
    npm run buildは通るので、フロントは少なくとも構文はOKのようでした。

    しかし、5回以上エラーメッセージと修正依頼を渡してもサーバーは起動することはありませんでした。
    これ以上は時間の無駄なのでやめました。


    Take2

    Take1はまぐれでダメだったのかもしれない。
    1回で決めつけるのはかわいそうなので、もう一度最初からやります。

    結果、同じくフロントは大丈夫だがサーバーが起動しない。
    そしてエラーメッセージを渡したところ、今度は修正タスクを実行すらしない。

    完了じゃなくてタスク作って進めないとダメなんだけど…
    というのを10回やりましたが進まなかったのでやめます。ここまで話通じないのはあり得ない。
    35B-A3 Q4のMoEですらサブタスクでと注意すればちゃんとやり始めるのに。

    画像

    感想

    ボロボロです。
    普通に2Bitに落としただけなのではと思うくらい。これで95%なわけがない。

    もちろん、たった7Gでエージェントチックに動け、フロントがコンパイル通ったことは評価できます。
    多分、正確なコードを書く能力はあるんでしょう。ですが、他ファイルとの関係性やエラーの探求などの能力が低下しておりサーバーを起動に持っていけなかった。

    結論期待させるような発表方法が悪かった。FP16の95%の精度を保持なんて言ったら今回のベンチなんて軽くできるハズ。
    難易度を下げてやれば役に立つことはあるのかもしれない。
    なんと言ってもVRAM16GBで動くのだから。

    ちなみにQwen3.6 27BのQ4の場合、通常個人のプロジェクトレベルなら完全に丸投げしてしまっても問題ないレベルの知能があります。
    Q4と同等の95%精度ならこれを期待してよかったはずです。

    具体的に気になった個所を挙げるとこんな感じです。

    • 自律性が薄くなっている
      自律モードで、ユーザーへ確認せずに進めろと書いてあるにもかかわらず、一度実装が終わった途端自律が始まらなくなる。
      常にユーザーに問い合わせするので進まない。

    画像

    サブタスクでといっても効かない

    画像
    • 言うことを聞かない
      過去の発言にとらわれやすいのか、違うと言っていにもかかわらず、「ユーザーはこう言っているけど、前はこうだったからこうだ」と勝手に決めつけ言うことを聞かなくなる。

    • MCPサーバーを呼ばない
      ブラウザ(playwright)とcontext7設定の上AGENTS.MDにも書いたにもかかわらず一切呼ばない。
      これではテストができません。Qwen3.6 27BのQ4なら呼び出してブラウザ操作をやってのけます。

    • 書き換えに失敗する
      Qwen3.6 27B Q4ではほぼありえないです。
      Q4ですら失敗しないのに、同じ95%精度保持のお前がなぜ失敗するんだ?

    画像
    • ToolCallをミスる
      小さいモデルやMoEだとたまにあるんですが、思考とかコンテンツにツールコールが混じる現象。
      27BのDenseで起こしちゃいますか。いや、まずいでしょ。
      確か公式でもツールコールはエージェントとして重要だから見たいなこと書いてあったよな?それ失敗するんですか。

    画像
    • 繰り返す
      ローカルLLMでよくある同じことを繰り返して進まないやつですね
      Qwen3.6はほぼ繰り返さない、かつ27Bならまず繰り返さないはずなんですが、Bonsaiは繰り返しが発生しました。極度の量子化により耐性が失われたようです。パラメータは公式推奨のにしてるので設定が悪いはないはず。

    画像

    まとめ

    Bonsai 27Bは公式発表の能力はだいぶ誇張されているか、ベンチマークの偏りが起きており、実際に使うと95%も精度を保持しているとは思えない有様です。
    上記で語った通り、繰り返しや出力の精度、自律的なタスクの成果物の精度、どれをとっても35B-A3のMoEにすら遠く及ばないです。
    この感じだと普通に9BモデルのQ4とかのほうが能力高いのでは?

    これがほかのモデルなら、バックエンドの最適化が追いついてないのでということもあるのですが、Bonsaiに関しては専用フォーク。

    ほかの方の環境ではどうなのかわかりませんが、少なくとも私の環境で回した結果はこの通りボロボロになってしまったというのが今回の結論となります。


    リンク集

    感想投稿フォーム

    コメントは公開で恥ずかしい!! Rcatだけに送りたい人向け


    メンバーシップの説明


    【ローカルLLM】バイブコーディング完全ガイド


    【ローカルLLM】自己成長AIエージェントHermesをホスト


    ミニPCにLinuxをインストール


    メンバー特典

     
     
    モノづくりが趣味。 "売ってないなら自分で作ればいいじゃない"をコンセプトに、機械/電気/AI/プログラム/ネットワーク 全部やります。 記事執筆はAI不使用。 ご連絡や利用規約はプロフィール記事参照。

    あなたへのおすすめ