tokimoa/llm-jp-4-vl-9b-beta-mlx-bf16
0264
llm-jp-4-vl-9b-beta (MLX bf16, reference-verified)
LLM勉強会(llm-jp)の llm-jp-4-vl-9b-beta(日英対応9B VLM。InternVL型グルー×SigLIP×llm-jp-4-8bの構成)のMLX bf16変換版です。
当方で移植したMLX実装はmlx-vlm本体にマージ済み(0.6.8で標準対応)です(llmjpvl/ディレクトリ)。mlx-vlm 0.6.8以降ではそのまま使えます。
transformers公式実装(bf16・MPS)とgreedy出力が文字列レベルで完全一致することを確認した、移植の基準となる版です。通常利用には高速・省メモリな 8bit(bf16と全問一致)か 4bit を推奨します。
導入手順
mlx-vlm 0.6.8以降なら追加手順は不要です(この移植実装は#1738で本体にマージされ、0.6.8に収録されました。0.6.8での動作を実測確認済み):
pip install mlx-vlm<details><summary>0.6.7以前を使う場合(旧手順)</summary>
repo同梱のllmjpvl/をmlx_vlm/models/へコピーしてください(詳細は旧版カード参照)。
</details>
使い方
from mlx_vlm import load, generate
model, processor = load("tokimoa/llm-jp-4-vl-9b-beta-mlx-bf16", trust_remote_code=True)
text = processor.apply_chat_template(
[{"role": "user", "content": "<image>この請求書の合計金額はいくらですか?"}],
tokenize=False, add_generation_prompt=True,
)
out = generate(model, processor, text, image=["invoice.png"], max_tokens=256, temperature=0.0)
print(out.text)変換品質の検証(tokimoa)
- transformers公式実装(bf16・MPS・greedy)との比較で、日本語ビジネス文書5種(請求書・議事録・契約条項・チェックシート・技術文書)の正解既知QA 6問すべてが文字列レベルで完全一致(前処理・後処理を揃えた条件)
- 独立に書いた検証スクリプト2種・反復実行で出力完全一致(決定論的)
- 議事録の長文説明(約200トークン生成)でも事実関係(数値・担当変更・期日)を正確に抽出
実測速度(M4 Max 36GB)
- 生成: 17.9 tok/s / プロンプト処理: 429 tok/s(画像3,370トークン・512px×最大12タイル)
- ピークメモリ: 20.6GB(重み17GB)
変換情報
- 変換元:
llm-jp/llm-jp-4-vl-9b-beta(公式BF16、commit 783c4a9) - MLX実装: mlx-vlm 0.6.7の部品(InternVL型グルー+SigLIP+Llama)を組み合わせた移植パッケージ
llmjpvl(このrepoに同梱) - 変換:
mlx-vlm 0.6.7convert(量子化なし・bf16) - 兄弟repo: 8bit(bf16と6/6完全一致・12.5GB・38.7 tok/s)/ 4bit(GT 6/6正解・8.2GB・61.7 tok/s)
- 変換者: tokimoa
ライセンス
Apache-2.0(元モデルに準拠)
