Falcon-Edge: 強力で汎用的、かつ微調整可能な1.58ビット LLM
Falcon-Edge は、BitNet アーキテクチャに基づく三値言語モデルのシリーズで、エッジデバイス上での極限効率を実現するよう設計されています。三値重み({-1, 0, 1})を利用することで、従来の浮動小数点モデルと比較してメモリ使用量を大幅に削減し、推論速度を向上させる「matmul フリー」設計が可能になります。
主なモデルバリエーションと入手可能性
Falcon-Edge は、1 億(1 Billion)と 30 億(3 Billion)パラメータの 2 つのサイズで提供され、各サイズはベース版と指示チューニング版の両方が用意されています。多様なデプロイや開発ニーズに対応するため、チームは単一の学習プロセスから 3 つの異なるバリエーションを生成する事前学習パラダイムを導入しました。
- Native BitNet Model: 超高効率推論向けに最適化された標準的な三値フォーマットモデル。
- bfloat16 Variant: 重みスケールを注入して BitNet モデルを近似する非量子化バージョンで、標準の Hugging Face transformers でロード可能です。
- Pre-quantized Variant: 微調整と継続的な事前学習が容易になるよう特別に設計された重み。
技術アーキテクチャと性能
Falcon-Edge モデルは、WSD 学習率スケジューラを使用して、約 1.5 テラトークンの内部データミックスで事前学習されました。
Hugging Face leaderboard v2 ベンチマークを用いた評価において、Falcon-Edge は同等サイズの他モデルと同等かそれ以上の性能を示しました。また、leaderboard v1 のタスクにおいても Microsoft の BitNet モデルと競合できることが確認され、BitNet アーキテクチャがさまざまな領域で強力に学習できることが証明されました。
ユニバーサリティ近似
チームは、重みを量子化した後に重みスケールを注入することで、BitNet モデルの bfloat16 対応版を作成できることを発見しました。この近似により、モデルは非 BitNet モデルとして機能しつつ高い性能を維持でき、1B と 3B のベースモデルのエンドツーエンド評価で確認されています。
onebitllms を用いた微調整
推論のみのリリースを超えるために、Falcon-LLM チームは onebitllms Python パッケージを公開しました。このツールキットは、事前に量子化された BitNet モデルを微調整するために必要なユーティリティを提供します。標準の nn.Linear 層で実行すると意味不明な出力になるモデルを対象としています。
onebitllms は以下の主要機能を提供します:
- Checkpoint Conversion: 事前量子化されたモデルチェックポイントを BitNet 訓練フォーマットに変換し、Hugging Face の
trlライブラリなどの微調整フレームワークで使用できるようにします。 - Quantization Utilities: 訓練済みチェックポイントを BitNet と
bfloat16の両フォーマットに量子化するツール。 - Low-level Components: 素の
BitnetLinear層と Triton カーネルを提供し、カスタム事前学習フレームワークへの統合を可能にします。
現在、このパッケージはフル微調整をサポートしていますが、BitNet モデルに対するパラメータ効率的微調整(PEFT)は未解決の研究課題です。
今後の研究課題
Falcon-Edge と onebitllms のリリースにより、三値 LLM の今後の開発に向けた重要な領域がいくつか明らかになりました。
- GPU Inference Kernels: GPU 上で BitNet モデルをネイティブの浮動小数点モデルよりも高速にするための特殊カーネルを開発すること(
bitnet.cppの目標に類似)。 - PEFT Support: 1 ビットモデルへのパラメータ効率的微調整の適用可能性を探ること。
- Universality Optimization: BitNet チェックポイントとその
bfloat16対応版との性能差をさらに縮小すること。 - Multi-modal Expansion: これらの基礎モデルを活用して、初のマルチモーダル BitNet ビジョン・言語モデル(VLM)を作成すること。
- Training Efficiency: BitNet 訓練カーネルを最適化し、非 BitNet モデルと比較して事前学習時に観測される約 20% のオーバーヘッドを削減すること。