llama.cpp は NVIDIA Nemotron-3-Puzzle-75B-A9B モデルのサポートを導入し、この Mixture of Experts アーキテクチャの推論を有効にします。今回の更新では、モデルが 40 層の MoE レイヤーを持ち、n_ff_exp と top-k の値がそれぞれ異なるため、必要となる、可変のレイヤー別エキスパートフィードフォワードサイズと top-k ルーティングのためのインフラストラクチャを実装しました。
- スカラーまたは配列の読み込み機能を持つレイヤー別の n_ff_exp および n_expert_used 配列を追加。
- レイヤー間で異種なエキスパート構成を処理するための G1/G2 インフラストラクチャを実装。
- 公式 BF16 チェックポイントの block_configs の解析とテンソル名の正規化を行うコンバーターを更新。
- レイヤー別の expert_used_count 配列に基づいて、Nemotron 3 Puzzle と Super バリアントを区別。
この変更により、llama.cpp は複雑で不均一な MoE 構造のため以前はサポートされていなかった Nemotron-3-Puzzle モデルの読み込みと実行が可能になりました。