inclusionAIは、Qwen3.5を基盤とする4Bパラメータのマルチモーダル意思決定モデル「Sing VL S1」のGGUF版をinclusionAI/SingVL_S1_4B_GGUFとして公開しました。デコーダーはBF16・Q8_0・Q4_K_Mの3種類で、最小のQ4_K_Mは2.71 GBです。
何をするモデルか
Sing VL S1は、テキストまたはJSONと最大4枚の画像を入力に、名前付きの質問へ回答します。各質問は1回の完全なforward passで選択肢をスコアリングします。質問タイプは3つです。
choice: 選択肢を選び、候補ごとの確率を返すnoul: yes/no命題が真である確率を返すscore: 低→高に並べた2〜10段階で評価し、各レベルの確率と期待レベル(0始まりのレベル番号×確率の総和)を返す。例: 3段階で確率0.1/0.3/0.6なら1.5
完全attention層は入力全体への双方向attentionを使い、GDN層は因果的再帰を維持します。各質問はKVと再帰状態をクリアした状態から始まり、最後の有効入力位置で候補のlogitを読みます。付属のllama.cppアダプターがこのattention契約を自動で適用します。
ファイルとスコア
| ファイル | 精度 | サイズ |
|---|---|---|
models/SingVL-4B-BF16.gguf |
BF16デコーダー | 8.42 GB |
models/SingVL-4B-Q8_0.gguf |
Q8_0デコーダー | 4.48 GB |
models/SingVL-4B-Q4_K_M.gguf |
Q4_K_Mデコーダー | 2.71 GB |
models/mmproj-SingVL-4B-F16.gguf |
共有F16ビジョンプロジェクター | 0.67 GB |
デコーダーを1つ選び、共有ビジョンプロジェクターと組み合わせます。チェックサムと正確なバイト数はmanifest.jsonにあります。
Public Decision Index 0.3でのSing VL S1のスコアは、Textが69.76、Visionが73.94です。原文の表ではStartLux-Decision v1.1 4BがText 67.8/Vision 67.90、Perplexity Decider Flash v1.2 (4B)がText 60.1/Vision 72.5、TypeSafe Jev 1.14がText 60.70です。これらはソースモデルの完全な公開再実行(テキスト140,178リクエスト、ビジョン12,210リクエスト)に基づく値で、GGUF版の検証は現時点で3精度にわたる9例・11問にとどまり、GGUF版の完全な公開スコアは保留中です。
動かし方と要件
- バックエンド: Linux x86_64 CPU上のllama.cpp
- 入力処理: Python 3.12と互換性のあるPyTorch・torchvision
- コンテキスト: デフォルト4096 tokens(画像トークン込み)
- 固定されたllama.cppコミットでアダプターを一度ビルドし、リポジトリのルートから例を実行
PythonではJEV_GGUF_MODEL、JEV_GGUF_MMPROJ、JEV_CPU_CONTEXT、JEV_CPU_THREADSを設定し、SingVLS1("config", device="cpu")でモデルを生成してpredictを呼びます。stateと質問のinstructionsは連結されるため、区切りが必要な場合はテキストstateの末尾に空白か改行を残します。
HTTP APIはFastAPIサービスで提供します。
export JEV_GGUF_MODEL="$PWD/models/SingVL-4B-Q8_0.gguf"
export JEV_GGUF_MMPROJ="$PWD/models/mmproj-SingVL-4B-F16.gguf"
export JEV_CPU_CONTEXT=4096
export JEV_CPU_THREADS=8
export OMP_NUM_THREADS=8
python examples/llama_cpp/serve.py --model "$PWD/config" --device cpu --port 8173 --image-root "$PWD/examples/images"
リクエストは/v1/systemoneへ送り、"model": "sing-vl-s1"を指定します。サーバーは起動時にattentionとコンテキストの設定を表示し、/healthで公開、/docsで対話的APIドキュメントを提供します。画像は順序付きのimages配列で渡し、data_url(Base64 data URL)、base64、path(--image-root内で解決)の形式に対応します。
背景
GGUFはGGMLプロジェクトで仕様が公開されている推論用モデルのバイナリ形式で、llama.cppはggml-orgが公開するC/C++実装の言語モデル・視覚言語モデル推論ソフトウェアです。

まだコメントはありません。