Qwen3.5、Qwen3.6、Gemma4によるUIアイコン検出

Reddit r/LocalLLaMA / 2026/4/19

💬 オピニオンDeveloper Stack & InfrastructureSignals & Early TrendsTools & Practical UsageModels & Research

要点

  • この投稿では、アプリのスクリーンショットからUIアイコンを検出するために、bbox_2d座標を返すローカルのマルチモーダルLLMを使った小規模ベンチマークを紹介しています。
  • 手法は、スクリーンショットをLLMに入力して座標を取得し、supervisionで赤いバウンディングボックスを画像上に描画して、結果を目視で確認するという流れです。
  • 非量子化のローカルモデルとvLLM 0.19.1を用いたオフライン推論により、このタスクではMoEよりもDenseモデルの方が良いという結論が示されています。
  • ランキングは「Qwen3.5 > Qwen3.6 ≈ Gemma4」で、Cursor IDEの例ではGemma4がアイコンを1つも検出できなかったり、PhotoshopではQwen3.6が画面全体を“巨大な1つのアイコン”として誤認するなどの具体例が挙げられています。
  • さらに、生成温度を0から開始し、アイコンが返ってこない場合は0→0.3→0.6→0.9へ段階的に上げて検出の回復を試みています。
Qwen3.5、Qwen3.6、Gemma4によるUIアイコン検出

みなさんこんにちは、

アプリのスクリーンショットからUIアイコンを検出するために、ローカルモデルを使う小さな個人的ベンチマークを行いました。英語は母語ではないので、文法上の間違いがあればすみません!似たようなことをしている人の参考になればと思い、見つけたことを共有したかっただけです。

モデル(量子化なし):

  • Gemma4-31B-it
  • Qwen3.5-27B
  • Qwen3.6-35B-A3B

アプローチ:

アプリのスクリーンショットをLLMに入力し、UIアイコンを認識してbbox_2dの座標を返すように依頼します。座標を返してくれたら、supervisionを使って画像に赤いバウンディングボックスを描画します。最後に、結果を目視で手作業により確認します。

セットアップには、オフライン推論を行う最新のvLLM v0.19.1を使用しました。最も確信のある出力を得たいので、開始時のtemperatureは0に設定しました。モデルが0個のアイコンを返す場合は、temperatureを徐々に上げます:0 -> 0.3 -> 0.6 -> 0.9。

全体結果:

全体として、このタスクではDenseモデルのほうがMoEモデルよりずっと良いです。順位は次のとおりです:Qwen3.5 > Qwen3.6 ≈ Gemma4

いくつか具体的な所見:

  • Gemma4とQwen3.6はどちらも最下位で同率です。Qwen3.5より明らかに劣っています。
  • Gemma4はCursorのIDEスクリーンショットで完全に失敗しました。4回試しましたが、そのたびにtemperatureを最大の0.9まで上げても、1つもアイコンを検出できませんでした。
  • Qwen3.6はPhotoshopのスクリーンショットでかなり変な挙動をしました。基本的に画像全体を巨大な1つのアイコンとして認識し、画面全体を囲む巨大なボックスを描きました。
  • 他のアプリのシナリオについては、下の比較画像を確認できます。

詳細なvllmパラメータは以下です:

 - name: gemma-4-31B-it family: gemma4 params_b: 31 vllm_kwargs: model: google/gemma-4-31B-it tensor_parallel_size: 8 max_model_len: 8192 max_num_seqs: 1 gpu_memory_utilization: 0.85 limit_mm_per_prompt: image: 1 audio: 0 video: 0 mm_processor_cache_gb: 0 skip_mm_profiling: true mm_processor_kwargs: max_soft_tokens: 1120 - name: qwen3.5-27b family: qwen3.5 params_b: 27 vllm_kwargs: model: Qwen/Qwen3.5-27B tensor_parallel_size: 8 max_model_len: 32768 max_num_seqs: 1 gpu_memory_utilization: 0.9 limit_mm_per_prompt: image: 1 audio: 0 video: 0 mm_processor_cache_gb: 0 mm_encoder_tp_mode: data skip_mm_profiling: true - name: qwen3.6-35b-a3b family: qwen3.5 params_b: 35 vllm_kwargs: model: Qwen/Qwen3.6-35B-A3B tensor_parallel_size: 8 max_model_len: 32768 max_num_seqs: 1 gpu_memory_utilization: 0.9 limit_mm_per_prompt: image: 1 audio: 0 video: 0 mm_processor_cache_gb: 0 mm_encoder_tp_mode: data skip_mm_profiling: true 

最近、ローカルモデルでUI要素の検出を試した人はいますか?より良いバウンディングボックスを得るためのコツがあれば知りたいです。

submitted by /u/Jian-L
[link] [comments]