SmolVLM2
SmolVLM2はHugging Faceの小型視覚言語モデルです。LibreYOLOはこれをオープンボキャブラリ物体検出器としてラップし、自由形式のチャットを直接公開します。クラス一覧を指定して検出するか、質問してください。
- タスク
- detection
- サイズ
- 500m at 512 px
- インストール
pip install libreyolo- サポートティア
- 姉妹ティア、v以降。独自のファクトリと契約を持つ、独立した製品インターフェースです。
- ライセンス
- コード:MIT、重み:Apache-2.0。商用利用
インストール
SmolVLM2はLibreYOLOの検出器として使うVLM階層に属します。これは独自のファクトリーを持ち、チェックポイントベースのファミリーとは別の製品面です。vlm 追加パッケージが必要であり、SmolVLM2独自のプロセッサーの依存関係である num2words も導入されます。
pip install "libreyolo[vlm]"推論
重みは初回使用時にHugging Faceからダウンロードされ、ローカルにキャッシュされます。
from libreyolo import LibreVLM, SAMPLE_IMAGE model = LibreVLM("smolvlm2-500m")model.set_classes(["cat", "dog"])result = model.predict(SAMPLE_IMAGE, save=True) for box in result.boxes: print(box.cls, box.conf, box.xyxy)from libreyolo import LibreVLM, SAMPLE_IMAGE model = LibreVLM("smolvlm2-500m") # 検出用の簡易機能の下にある脱出口 任意の質問に対応し# バウンディングボックスの質問だけに限定されないanswer = model.chat(SAMPLE_IMAGE, "What is the cat doing?")print(answer)このファミリーは LibreYOLO() ではなく、LibreVLM() ファクトリーから読み込みます。VLMファミリーはチェックポイントローダーを宣言しないため、他のモデルページで説明しているファイル接尾辞による振り分けはここでは適用されません。set_classes() はSmolVLM2に探させるボキャブラリを設定します。この設定は維持されるため、再設定するまで、その後のすべての predict() または track() 呼び出しに適用されます。SmolVLM2では、LibreYOLO内のパーサー上書きは不要です。この階層で共有されるデフォルトと同じ、チャットテンプレートとJSON出力の組み合わせに従うため、検出プロンプトとボックス形式はファミリー固有ではありません。すべての検出結果に同じ仮信頼度が設定されるため、conf によるフィルタリングは順位付けではなく、すべてを残すかすべてを除外するかのどちらかです。iou は効果があり、後から得られた同じクラスのボックスが、すでに保持したボックスとしきい値を超えて重なると除外されます。これを行わないと、反復生成器が1つの物体に対してほぼ重複したボックスを出力する場合があるためです。SmolVLM2は chat() を通じて自由形式の質問にも回答します。これは LibreVLM ファクトリーで説明しているものと同じ脱出口です。LibreYOLOのCLIはこの階層に対応しておらず、libreyolo predict model=... 形式はありません。ソース、ストリーミング、結果の処理については、推論を参照してください。
バリアント
レジストリ内のサイズはSmolVLM2-500M-Video-Instructの1つで、LibreVLM("smolvlm2-500m") で読み込みます。SmolVLM2は、この階層でグラウンディング専用に設計されたモデルより検出性能が低いモデルです。LibreYOLO独自のラッパーでは、最も強力なオープンボキャブラリ選択肢としてではなく、新しいファミリーが特別な解析処理なしでここで動作できることを示す実例として説明されています。
LibreYOLOはSmolVLM2の学習、検証、エクスポートを行いません。この階層のすべてのファミリーで、train()、val()、export() は NotImplementedError を発生させます(上のサポート階層を参照)。組み込みのカスタムボキャブラリが必要な場合は、アップストリームでSmolVLM2をファインチューニングし、得られた重みを読み込んでください。すべての検出結果が同じ仮信頼度を持つため、COCO形式の検証を行う代わりに、predict() の出力を目視で確認してください。
ライセンス
ダウンロードする特定の重みについて、Hugging Faceリポジトリのライセンスを確認してください。LibreYOLO orgの各チェックポイントにはライセンスが付与されており、同じファミリー内でも常に同一とは限りません。そのリポジトリが正式な情報源です。以下の概要は、このページを最後に検証した時点で適用されていた内容を示します。
これは関連するライセンスの説明であり、法的助言ではありません。商用上重要な場合は、自分でライセンスを読み、専門家の助言を受けてください。
- 原著作物
- SmolVLM2, Hugging Face (HuggingFaceTB)
- アップストリームのライセンス
- Apache-2.0
- アップストリームのソース
- github.com/huggingface/smollm/tree/main/vision
- LibreYOLOのコード
- MIT
- 重み
- Apache-2.0、著者が配布。LibreYOLOではホストもミラーもしていません。
- 解釈
- Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. Both sizes LibreYOLO downloads, SmolVLM2-500M-Video-Instruct and SmolVLM2-2.2B-Instruct, carry this license on their Hugging Face repository.
引用
@article{marafioti2025smolvlm,
title={SmolVLM: Redefining small and efficient multimodal models},
author={Andrés Marafioti and Orr Zohar and Miquel Farré and Merve Noyan and Elie Bakouch and Pedro Cuenca and Cyril Zakka and Loubna Ben Allal and Anton Lozhkov and Nouamane Tazi and Vaibhav Srivastav and Joshua Lochner and Hugo Larcher and Mathieu Morlon and Lewis Tunstall and Leandro von Werra and Thomas Wolf},
journal={arXiv preprint arXiv:2504.05299},
year={2025}
}著者によるhuggingface.co/blog/smolvlm2の引用ブロックからコピーしています。