はじめに
Bonsaiはdeepgrove-aiによって開発されたオープンソースの言語モデルで、三項重みを使用し、パラメータサイズは5億である。Llamaアーキテクチャと ミストラル この分類器は、3値の重みをサポートするように適応された線形層で設計されている。このモデルは主にDCLM-ProとFineweb-Eduデータセットを使って学習され、合計50億トークン未満である。少ない学習データにもかかわらず、Bonsaiは優れた性能を発揮し、競争力のあるレベルに達した最初の軽量3値モデルの1つである。ユーザーは、Huggingface Transformersライブラリを介してこれを呼び出すことができる。プロジェクト・コードはGitHubで公開されており、効率的なAIモデルを探求する開発者のために用意されている。
機能一覧
- 軽量で効率的な操作性3値の重み付け技術を使用し、小型で高速、低リソースデバイスに適したモデルです。
- 自然言語生成対話、Q&A、その他のタスクに使用できる流暢なテキストの作成をサポート。
- オープンソースアクセス全コードはGitHubで公開されており、ユーザーはダウンロード、修正、最適化ができる。
- ハギングフェイス対応Transformersライブラリへのシームレスな統合により、ロードとデプロイが容易に。
- 優れたパフォーマンス少ない学習データで同程度のモデルに匹敵するパフォーマンス。
ヘルプの使用
設置プロセス
Bonsaiを使うには、まず実行環境をセットアップする必要がある。以下はその詳細な手順である:
- Python環境のチェック
Python 3.8以上がコンピュータにインストールされていることを確認してください。ターミナルで
python --version
お持ちでない方は、Pythonのウェブサイトからダウンロードできます。
- トランスフォーマー・ライブラリーのインストール
BonsaiはHuggingfaceのTransformersライブラリに依存している。ターミナルで実行してください:
pip install transformers
インストール後 pip show transformers
バージョンを確認する。
- 盆栽モデルのダウンロード
モデルはHuggingfaceでホストされています。コード(下記参照)で自動的に読み込むことを推奨しますが、手動でダウンロードすることもできます。 - オプションの依存関係をインストールする
微調整や加速が必要な場合は、以下をインストールしてください。torch
歌で応えるdatasets
::
pip install torch datasets
使用方法
BonsaiはPythonスクリプトを使って呼び出される。基本的な手順は以下の通り:
ロードモデルとスプリッター
Pythonで以下のコードを実行する:
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("deepgrove/Bonsai", trust_remote_code=True)
テキストの生成
テキストを入力し、結果を生成します:
text = "中国的首都是哪里?"
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_length=100)
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(result)
出力は "中国の首都は北京です "となる。.
調整パラメーター
例えば、生成パラメータを変更することができる:
outputs = model.generate(**inputs, max_length=50, temperature=0.7)
max_length
出力長を設定する。temperature
値が小さいほど出力が安定する。
注目の機能操作
効率的な運用
Bonsaiの3値重み付けは、16ビット精度でも十分に動作する。GPUがあれば自動的に高速化される:
import torch
print(torch.cuda.is_available()) # 返回 True 表示 GPU 可用
GPUは性能を大幅に向上させるが、CPUは問題なく動作する。
パフォーマンス評価
ボンサイはいくつかのベンチマークで好成績を収めている。以下は公式の数値である:
モデリング | ARC-c | アークイー | HSだ。 | OBQA | PiQA | ウィノ | MMLU | 平均点 |
---|---|---|---|---|---|---|---|---|
モビラマ 0.5B | 26.62 | 46.68 | 51.66 | 30.00 | 71.65 | 54.50 | 28.61 | 44.25 |
クウェン2 0.5B | 28.84 | 50.29 | 49.12 | 33.00 | 69.26 | 56.99 | 31.78 | 45.61 |
MobileLLM 600M | 29.01 | 56.65 | 55.35 | 34.00 | 71.65 | 59.75 | 31.40 | 48.13 |
クウェン 2.5 0.5B | 32.25 | 58.29 | 52.18 | 35.40 | 69.91 | 56.12 | 33.40 | 48.22 |
盆栽 | 33.36 | 57.95 | 48.04 | 34.00 | 70.24 | 54.85 | 30.28 | 46.96 |
ARC、OBQA、MMLUなどを含むこれらのテストでは、ボンサイは軽量モデルのトップクラスにランクされている。 |
モデルの微調整
Bonsaiは汎用的な生成タスクのために微調整されていません。特定の用途(クイズなど)に最適化する必要がある場合は、微調整が可能です:
- データの準備:テキストファイルまたは
datasets
ライブラリーのローディング。 - 設定パラメータ: with
TrainingArguments
セッティング - トレーニングモデル:
from transformers import Trainer, TrainingArguments
training_args = TrainingArguments(
output_dir="./bonsai_finetuned",
num_train_epochs=3,
per_device_train_batch_size=4
)
trainer = Trainer(model=model, args=training_args, train_dataset=your_dataset)
trainer.train()
詳細は以下を参照のこと。 ハギングフェイス・ドキュメンテーション.
ほら
- 精密限界現在のところ16ビット精度の演算しかサポートしておらず、チームは混合精度のサポートを開発中である。
- アンコマンド・チューニングデフォルトのモデルは、複雑なコマンドタスクに直接使用するには適しておらず、微調整が必要です。
- ハードウェア要件GPUは必要ないが、推奨する。
アプリケーションシナリオ
- 教材
盆栽は「フランスの首都はどこですか」といった基本的な知識の質問に答えることができる。Bonsaiは「フランスの首都はどこですか」といった基本的な知識の質問に答えることができます。回答は入力後すぐに生成され、学習に適しています。 - エッジデバイス・アプリケーション
このモデルは軽量で、ローカライズされた言語処理のために携帯電話や組み込み機器に展開するのに適している。 - モデリング研究
研究者はこれを用いて、3値重み付け技術の可能性を検証し、効率的なAIモデル設計を探求することができる。
品質保証
- 盆栽の強みは何ですか?
3値重み付け技術を使用することで、軽量かつ高効率を実現し、少ない学習データで強力な性能を発揮するため、リソースに制約のあるシナリオに適している。 - GPUが必要ですか?
実行にCPUは必要ないが、GPUはスピードアップする。 - 直接対話に使えるのか?
デフォルトのモデルはチューニングを要求しないので、特定のタスクに使用する前に微調整することを推奨する。