「LensVLM-9B」長文を画像として縮小して処理する視覚言語モデル:必要VRAM 4GB〜・GGUF版あり

基本情報
| 項目 | 内容 |
|---|---|
| リポジトリ | apple/LensVLM-9B |
| 公開元のまとめ | Apple のモデルとライセンスのまとめ |
| 公開日 | 2026-09-22 |
| ライセンス | apple-amlr |
| 配布形式 | safetensors |
| 論文 | arXiv:2605.07019 |
| 出典の種類 | 公開元の一次情報(Apple公式HFリポジトリとGitHubコードが一次情報として確認可能) |
情報を集めた時点で、当サイトのコードが確定させた値です。日付はJSTで表示しています。
当サイトで確かめたこと
- Qwen3 のトークナイザより約21%少ないトークンで同じ日本語を表せます。同じ文脈長に入る日本語が約1.26倍になり、生成も1字あたりで速くなります。
詳しい値と条件は、下の「当サイトでの実測」の節にあります。
概要
Apple の研究チームが、長い文書を画像に縮めて読ませる視覚言語モデル(VLM)LensVLM-9B を Hugging Face で公開しました。Qwen3.5-9B を土台に、Apple と Duke 大学の研究者が追加学習したモデルで、論文「LensVLM: Selective Context Expansion for Compressed Visual Representation of Text」(arXiv:2605.07019)の成果物にあたります。
狙いは、長い文脈を扱うときのトークン数とメモリの削減です。テキストをそのままトークンに分けると、長い文書はそのまま長いトークン列になります。一方、テキストを画像として描画して VLM に渡すと、画像1枚は決まった数の視覚トークンにしかなりません。描画の解像度を下げるほど、同じ文章を少ないトークンに詰め込めます。問題は、縮めすぎると文字が潰れて読めなくなることでした。
LensVLM は、この問題を「全体は縮めたまま流し読みし、答えがありそうなページだけを元の形に戻して読む」ことで解決します。モデルは縮小されたページ画像の一覧を見て関係のありそうなページを選び、学習で身につけたツールを呼んでそのページの元のテキスト(または高解像度の画像)を取り寄せ、それを読んで答えます。名前の「Lens(レンズ)」は、縮んだ文脈の一部を拡大して読むこの動きに由来します。
ライセンスは Apple Machine Learning Research Model License で、非商用の研究目的に限って使えます(詳細は後述)。
スペック
- パラメータ数: 約 9B(Qwen3.5-9B-Base からの追加学習)
- 入力: テキストを描画した画像(ページ画像)と質問。実際の文書画像(PDF 等)にも使える
- 圧縮の設定: 付属のコードでは
5x・10x・15xの 3 段階を選べます。論文によれば、Qwen3.5 の視覚エンコーダは1枚の画像を圧縮の段階に応じて 72・48・24 個の視覚トークンに変換します - ツール: ページの番号を指定して元の内容を取り寄せる
read_pageを使います。1回の呼び出しで1ページを開き、複数のページが要るときは順に開きます - 思考: 行動の前に
<think>タグの中で推論してからツールを呼ぶ - 学習の手順(論文より): ① 元のモデルが縮小画像だけで答えられない「難しい」問題を選び出し、② Qwen3.5-397B に正解と根拠を与えて「どのページを開いて何を読むか」の手本を合成させ、教師あり学習(SFT)を行い、③ 自分自身の試行で強化学習(RL)を行います。報酬は答えの正しさと、正解したときだけ加点するツール利用のボーナスで作ります。学習中は視覚エンコーダを固定し、言語モデルの部分だけを更新します
- 学習データ: NQ・HotpotQA・MuSiQue・HELMET の質問応答
性能
論文の主な結果を、公開元自身の数値のまま紹介します。
テキストの質問応答(7つのベンチマークの平均): 文書を全部テキストで渡したときの正答率(上限の目安)が 72.4% であるのに対し、5 倍に縮めた画像をそのまま読ませると 31.3% まで落ちます。LensVLM は同じ条件で 68.9% を保ち、実際にモデルが処理したトークン数で測った実効の圧縮率は 4.3 倍でした。論文は、実効の圧縮率 10.1 倍までの範囲で、検索(RAG)・テキストの圧縮・画像の圧縮のどの比較手法も上回ったとしています。
コードの理解(追加学習なしでの転用): コード専用の学習をしていないのに、縮小したコードの画像からの質問応答でも比較手法を上回りました。
| 手法 | 5x | 10x | 15x |
|---|---|---|---|
| Text(全文をテキストで渡す) | 65.6 | 65.6 | 65.6 |
| Comp. Image(縮小画像をそのまま読む) | 26.7 | 6.1 | 3.2 |
| Glyph | 31.8 | 9.7 | 7.0 |
| LensVLM | 38.1 | 26.1 | 20.0 |
縮めるほど差が開き、15 倍では縮小画像をそのまま読むと 3.2% しか答えられないところ、LensVLM は 20.0% を保ちます。ただし全文をテキストで渡した場合(65.6%)との差はまだ大きく、コードでは「縮めても精度を保てる」とまでは言えません。
実際の文書画像(MMLongBench-Doc): PDF のような元から画像の文書では、取り寄せる内容を高解像度の画像にする「Zoom」の方が、OCR でテキストを取り出すより強かったです。15 倍の圧縮で、縮小画像をそのまま読むと 31.1% のところ、Zoom 版は 41.9% でした。一方、5 倍の圧縮ではまだ文字が読めるため、縮小画像をそのまま読む方(51.2%)が Zoom 版(50.5%)よりわずかに高いです。
モデルの大きさによる差: 同じ方法で 2B・4B・9B を学習した比較では、正答率が 45.5%・56.3%・68.9% と大きく変わります。論文は、2B はツールの呼び方こそ覚えるものの、どのページを開くかの判断と、開いた内容の理解の両方が揃うのは 9B からだとしています。このやり方は小さいモデルほど効くわけではありません、という点は手元で動かす人にとって重要です。
学習データへの混入の確認: Qwen3.5 の学習データの締め切り(2026年2月16日)より後に公開された PubMed Central の論文だけで評価し直しても、縮小画像をそのまま読む場合より平均 39.7 ポイント高く、主な結果と同じ傾向だったといいます。
得意なこと・想定用途
LensVLM が役に立つのは、長い文書の中の一部だけが答えに関係する質問です。論文の例では、15 ページ分の縮小画像から 10 ページ目だけを開いて読み、2 回のやりとりで答えにたどり着いています。
手元で動かすうえで効くのは、KV キャッシュ(文脈を保持するメモリ)の削減です。論文の計測では、15 倍の圧縮で 100 ページ分の入力を扱うと、全文をテキストで渡す場合は 51,273 トークン(KV キャッシュ 1,602 MiB)が要るのに対し、LensVLM は答えるまでに開いたページを含めても 8,090 トークン(253 MiB)で済み、84.2% 少なくなります。長い文書ほど、メモリの少ない機材で扱える範囲が広がります。
一方で、速さは犠牲になります。ページを開くたびに生成と読み込みを往復するため、ページを1回開く典型的な場合で、全文を渡す方式(8 秒)の約 2 倍の 17 秒かかったと論文は報告しています。論文自身も、この方法の狙いは速度ではなく「縮めても精度を失わないこと」だと明言しています。
類似モデルとの違い
- Glyph(GLM-4.1V-9B ベース)との違い: Glyph も文章を画像として読ませる同規模のモデルですが、描画の方法を工夫して「縮小画像をそのまま読む力」を上げる方向の研究です。LensVLM は読めない部分を無理に読ませず、必要なページを取り寄せます。論文によれば、元のモデルは描画の設定(フォント・画像の幅など)に敏感で、20 通りの設定で正答率が 32 ポイントもぶれます。圧縮率を揃えた 3 通りの画像の幅で比べると、学習前に 18.0 ポイントあった差が、学習後は 0.5 ポイントまで縮まりました
- 検索(RAG)との違い: RAG は事前に索引を作り、質問に近い断片を選んでから読ませます。LensVLM は文書全体を縮めたまま一度に見せ、どこを読むかをモデル自身が決めます。索引を作る工程が要りません
- 元の Qwen3.5-9B との違い: 同じ重みから出発していますが、元のモデルに同じツールを持たせただけでは 5 倍の圧縮で 39.2% にとどまります。ページを選んで開く振る舞いは、今回の追加学習で身についたものです
動作環境
動作環境の目安(Local Model Watch 算出) — パラメータ数 9.4B
| 手持ちのVRAM | 選べる量子化 | ファイルサイズ | 必要メモリの目安 |
|---|---|---|---|
| 4GB(ノートPCの内蔵GPU・スマートフォンなど) | IQ2_M | 3.3GB | 4.0GB |
| RTX 4060 / 3060 Ti など 8GB | Q5_K_M | 6.4GB | 7.7GB |
| RTX 4070 / 3060 12GB など 12GB | Q8_0 | 8.9GB | 10.7GB |
| RTX 4090 / 3090 など 24GB | BF16 | 16.7GB | 20.0GB |
推論エンジンの対応状況(各プロジェクトのソースにあるモデル登録表とアーキテクチャ名を当サイトが機械的に照合。2026-11-12 時点): llama.cpp: 登録あり、vLLM: 登録あり、MLX (mlx-lm): 登録あり。
必要メモリは配布ファイルの実サイズに実行時のオーバーヘッド(KVキャッシュ等)を20%見込んだ概算で、文脈長・バッチサイズ・推論エンジンによって増減します。公開元の公称値ではなく、当サイトがファイルサイズから機械的に算出した値です。 ファイルサイズは変換版 bartowski/LensVLM-9B-GGUF の配布ファイルの実測値です。 他のモデルとの比較はVRAM別の早見表を参照してください。 量子化の名前の読み方は用語集にあります。
手元で動かせるか
Ollama・LM Studio・llama.cpp で動かせます(変換版を利用)。
公開元の配布は safetensors ですが、bartowski/LensVLM-9B-GGUF が GGUF版を公開しているため、そちらを使えば手元で動きます。
ライセンス apple-amlr(商用利用不可): Apple の Machine Learning Research Model License です。非商用の科学研究に限られ、商用の製品・サービスでの利用は明示的に除外されています。
量子化の圧縮率: IQ2_M は実測 3.01 bit/weight で、元の16bitの重みの約19%のサイズです(配布ファイルの実サイズから当サイトが算出)。
配布形式・当サイトが見つけた変換版・各推論エンジンの登録表を突き合わせた判定です。「確認できていない」は当サイトが見つけていないという意味で、存在しないことの断定ではありません。ライセンスの要約は法的助言ではないため、実際の利用にあたっては公開元の原文を確認してください。
当サイトでの実測
当サイトのサーバー(GPUなし)で、このモデルのファイルを実際に読み込んで(モデルは動かさずに)確かめた値です。モデルカードの記載ではなく、当サイトが測った結果です。測り方と全モデルの一覧は観測データにまとめています。
ライセンスの都合で行っていない実測
このモデルのライセンス(apple-amlr)は商用利用を認めていません。広告を掲載している当サイトでは、ライセンスの都合上、モデルを動かす実測(CPU での実行・回答・量子化の比較・変換・生成)は行っていません。トークン数や GGUF ファイルの中身など、モデルを動かさずに確かめた値だけを載せています。
日本語のトークン効率
| トークナイザ | 日本語1,000字あたりのトークン数 | 同じ内容の英文との比 |
|---|---|---|
| このモデル | 546 | 0.99倍 |
| Qwen3 | 688 | 1.26倍 |
| Llama 3.2 | 744 | 1.36倍 |
| Gemma 3 | 564 | 1.03倍 |
| gpt-oss | 795 | 1.45倍 |
| LLM-jp-3 | 497 | 0.85倍 |
Qwen3 のトークナイザより約21%少ないトークンで同じ日本語を表せます。同じ文脈長に入る日本語が約1.26倍になり、生成も1字あたりで速くなります。
apple/LensVLM-9B の tokenizer.json で、当サイトが書き下ろした固定の文章(876字。ニュース・会話・技術文書・敬語のメール・紀行文・料理の6種)と、同じ内容の英文を数えました。トークン数が少ないほど、同じ文脈長に長い日本語が入ります。
GGUFファイルの中身
対象: LensVLM-9B-Q4_K_M.gguf(5.44GB、Q4_K_M)。ファイルの先頭のメタデータだけを読んで確かめました(重みはダウンロードしていません)。
| 項目 | 値 |
|---|---|
| アーキテクチャ(GGUF上の名前) | qwen35 |
| 学習時の最大文脈長 | 262,144トークン |
| 層の数 | 32 |
| 語彙数 | 248,320 |
| チャットテンプレート | 同梱(ツール呼び出しの記述あり・思考の切り替えの記述あり) |
| imatrix | 使用(LensVLM-9B-calibration-v6.txt・550チャンク) |
| 重みの型の内訳(パラメータ数の割合) | Q4_K 72.4% / Q6_K 21.3% / Q8_0 6.2% / F32 0.1% |
| 平均のビット数 | 5.21ビット/重み |
| 埋め込み層 / 出力層の型 | Q4_K / Q6_K |
ファイル名の量子化名はファイル全体の呼び名で、実際には層ごとに型が混ざっています。平均のビット数は、ファイルのデータの大きさを重みの数で割った実測値です。
入手方法
- 配布形式: Hugging Face の
apple/LensVLM-9Bに Transformers 形式(safetensors)の重みがある - 入手コマンドの例:
huggingface-cli download apple/LensVLM-9B - 動かし方: モデルカードは、GitHub の
apple-aiml-research/ml-lensvlmを取得して付属のスクリプトで動かす方法を案内しています。文章を圧縮した画像に描画し、ページを取り寄せるやりとりを回す部分はこのコードが担うため、一般的なチャットツールに重みを読み込ませただけでは LensVLM の仕組みは働きません。llama.cpp・Ollama・LM Studio について、モデルカードは触れていません - 付属スクリプトの例:
python demo.py --model apple/LensVLM-9B --text_file document.txt --question "..." --compression 10x - ライセンス: 重みは Apple Machine Learning Research Model License で、使えるのは「非商用の科学研究と学術的な開発」に限られ、商用の製品やサービスへの利用、製品開発は明示的に除外されています。追加学習した派生モデルにも同じ制限がかかります。付属のコードは別の Apple Sample Code License です。利用前にライセンスの原文を確認してほしいです
派生版・量子化版
→ 横にスクロールできます
| 追記日 | 配布元 | 形式 | リポジトリ | 最小のVRAM階層(量子化・必要メモリの目安) |
|---|---|---|---|---|
| 2026-09-28 | bartowski | GGUF(imatrix) | bartowski/LensVLM-9B-GGUF | IQ2_M 4.0GB(4GB VRAMで動作) |
| 2026-09-28 | mradermacher | GGUF(imatrix) | mradermacher/LensVLM-9B-i1-GGUF | IQ2_M 4.0GB(4GB VRAMで動作) |
| 2026-09-28 | mlx-community | MLX | mlx-community/LensVLM-9B-OptiQ-4bit | MLX 4bit 7.9GB(8GB VRAMで動作) |
各リポジトリの量子化とファイルサイズ:
- bartowski/LensVLM-9B-GGUF の量子化: IQ2_M 3.3GB / Q2_K 3.4GB / IQ3_XXS 3.9GB / Q3_K_S 4.0GB / IQ3_XS 4.0GB / Q3_K_M 4.2GB / Q3_K_L 4.3GB / IQ3_M 4.5GB / IQ4_XS 4.9GB / Q4_0 5.1GB / Q4_K_S 5.1GB / IQ4_NL 5.4GB / Q4_K_M 5.4GB / Q4_1 5.5GB / Q4_K_L 5.8GB / Q5_K_S 6.0GB / Q5_K_M 6.4GB / Q6_K_S 7.0GB / Q6_K 7.3GB / Q6_K_L 7.5GB / Q8_0 8.9GB / BF16 16.7GB
- mradermacher/LensVLM-9B-i1-GGUF の量子化: IQ1_S 2.6GB / IQ1_M 2.7GB / IQ2_XXS 2.9GB / IQ2_XS 3.1GB / IQ2_S 3.2GB / IQ2_M 3.4GB / Q2_K_S 3.4GB / Q2_K 3.6GB / IQ3_XXS 3.7GB / IQ3_XS 4.0GB / Q3_K_S 4.0GB / IQ3_S 4.1GB / IQ3_M 4.1GB / Q3_K_M 4.3GB / Q3_K_L 4.6GB / IQ4_XS 4.8GB / Q4_0 5.0GB / Q4_K_S 5.0GB / IQ4_NL 5.0GB / Q4_K_M 5.2GB / Q4_1 5.4GB / Q5_K_S 5.9GB / Q5_K_M 6.0GB / Q6_K 6.9GB
- mlx-community/LensVLM-9B-OptiQ-4bit の量子化: MLX 4bit 6.6GB
このほか、上記以外の投稿者による変換版が 5 件あります(当サイトは公開元自身と、実績のある量子化担当の配布だけを表に載せています)。
この節は、記事公開後に見つかった変換版を当サイトが機械的に追記したものです。必要メモリは配布ファイルのサイズから算出した概算です。 量子化の名前の読み方は用語集にあります。
関連記事
- 「clef-flash」構造化出力特化型モデル:当サイトでの回答例・必要VRAM 4GB〜・GGUF版あり
- 「MiMo-V2.6-Distill-Qwen-9B-GGUF」:当サイトでの回答例・必要VRAM 12GB〜
次に読むなら
- GPUのVRAMから探す(このモデルは4GBの階層から動きます) → 8GBのGPUで動くほかのモデル
- このモデルを動かすエンジンを調べる → llama.cpp / Ollama / vLLM
- 入手できる形式と、表に出てくる IQ2_M・Q5_K_M・Q8_0 の意味を知る → GGUF形式の解説と対応モデル / MLX形式の解説と対応モデル / 量子化・モデル形式の用語集
- 公開元について調べる → Apple のモデル・ライセンス・記事のまとめ
- 同じ用途の他のモデルを探す → VLM・マルチモーダルのモデル一覧
出典
- https://huggingface.co/apple/LensVLM-9B
- https://arxiv.org/abs/2605.07019
- https://github.com/apple-aiml-research/ml-lensvlm
更新履歴
- 2026-09-28: 変換版を「派生版・量子化版」に追記しました: bartowski/LensVLM-9B-GGUF, mradermacher/LensVLM-9B-i1-GGUF, mlx-community/LensVLM-9B-OptiQ-4bit
- 2026-09-28: 動作環境の表を bartowski/LensVLM-9B-GGUF の実ファイルサイズで更新しました。
- 2026-09-28: タイトルを、記事で分かる内容(必要VRAM・配布ファイル等)を示す形に変更しました。
- 2026-09-28: 当サイトでの実測(日本語のトークン効率・GGUFファイルの中身)を追加しました。
- 2026-09-28: 当サイトでの実測(CPUでの速度と日本語の質問への回答)を追加しました。

