Instructions to use tokimoa/plamo-2.1-2b-vl-mlx-4bit with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- MLX
How to use tokimoa/plamo-2.1-2b-vl-mlx-4bit with MLX:
# Make sure mlx-vlm is installed # pip install --upgrade mlx-vlm from mlx_vlm import load, generate from mlx_vlm.prompt_utils import apply_chat_template from mlx_vlm.utils import load_config # Load the model model, processor = load("tokimoa/plamo-2.1-2b-vl-mlx-4bit") config = load_config("tokimoa/plamo-2.1-2b-vl-mlx-4bit") # Prepare input image = ["http://images.cocodataset.org/val2017/000000039769.jpg"] prompt = "Describe this image." # Apply chat template formatted_prompt = apply_chat_template( processor, config, prompt, num_images=1 ) # Generate output output = generate(model, processor, formatted_prompt, image) print(output) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- LM Studio
PLaMo 2.1-2B-VL (MLX 4bit) — Built with PLaMo
Preferred Networksの PLaMo 2.1-2B-VL(Mamba×Attentionハイブリッドplamo2 LM+SigLIP so400mの日英VLM)をMLX 4bit(group size 64、実効6.16bpw)に量子化した最軽量版(2.1GB・約120 tok/s)です。
当方で移植したMLX実装はmlx-vlm本体にマージ済み(0.6.8で標準対応)です(plamo2vl/ディレクトリ)。導入手順は下記のとおりです。
品質面の注記: 写真説明の検証プローブではbf16版と出力完全一致しますが、モデルが不確信な入力(高密度文書の読み取り等)では8bit版より出力のブレが大きいことを実測で確認しています。品質重視なら 8bit版 を推奨します。
このrepoは上流のtrust_remote_codeをtransformers 5対応に再構成済みです(上流はtransformers<5専用)。mlx-vlm 0.6.7でそのまま動きます。
導入手順
mlx-vlm 0.6.8以降なら追加手順は不要です(この移植実装は#1739で本体にマージされ、0.6.8に収録されました。0.6.8での動作を実測確認済み):
pip install mlx-vlm numba torch torchvision
0.6.7以前を使う場合(旧手順)
repo同梱のplamo2vl/をmlx_vlm/models/へコピーしてください(詳細は旧版カード参照)。
使い方
チャットテンプレートではなく、processorが日本語Alpaca型(### 指示:/### 応答:)のプロンプトを内部で組み立てます。processor(images=画像, text=質問)だけで正しい形式になります。コード例は8bit版のカードと同じです(repo名を読み替えてください)。
変換品質の検証(tokimoa)
同梱のMLX実装は、bf16変換版でtransformers公式実装(bf16・MPS)との突き合わせ検証を実施済みです(同一入力のprefillロジットでtop-1トークン6/6一致・cos類似度0.998以上、写真説明プローブでgreedy完全一致)。
この4bit版の検証:
- 写真説明プローブでbf16版と出力完全一致
- 同一入力の反復で出力完全一致(決定論的)
- 日本語ビジネス文書QA(不確信領域)ではbf16版と2/6一致で、8bit版(4/6)よりブレが大きい
用途上の注意: 2Bクラスのため高密度文書の数値読み取りは苦手です(transformers公式実装でも同様=変換起因ではありません)。写真・図の説明など軽量VL用途向きです。
実測速度(M4 Max 36GB)
- 生成: 約120 tok/s / プロンプト処理: 約1,400 tok/s(画像2,187トークン=Eagle2タイリング3枚・384px)
- ピークメモリ: 5.8GB(重み2.1GB)
変換情報
- 変換元:
pfnet/plamo-2.1-2b-vl(公式BF16、commit 3d32366) - MLX実装: mlx-vlm 0.6.7の部品+mlx-lmの
plamo2実装をベースに移植したplamo2vlパッケージ(このrepoに同梱。RoPE base=1e6のplamo-2.1系対応を含む) - 量子化:
mlx-vlm 0.6.7convert -q --q-bits 4(group size 64 affine、実効6.16bpw) - 兄弟repo: bf16(参照一致検証の基準・9.2GB)/ 8bit(推奨・6.9GB・約84 tok/s)
- 変換者: tokimoa
ライセンス
PLaMoコミュニティライセンス(全文を同梱のLICENSE.mdに収録。本モデルの利用はその条件に従います):
- 個人・学術利用は登録不要で利用可
- 商用利用は事前登録+年商10億円以下が条件(超える場合はPFNの商用ライセンスが必要)
- 再配布時はライセンス同梱・「Built with PLaMo」表示・モデル名にPLaMoを含めることが必要
- Downloads last month
- 47
4-bit
Model tree for tokimoa/plamo-2.1-2b-vl-mlx-4bit
Base model
pfnet/plamo-2.1-2b-vl