地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

Qwe3-VL-30B-A3Bにmarioを見せてみる。 #6

Qwen3-VL-30B-A3B-InstructはMarioのゲーム画面を記述させてみます。Colab A100 環境で行いました。VRAM占有率は、66935MiB /  81920MiB でした。

 

huggingface.co

 

公式のQuickstartにそって準備します。flash_attentionは有効化し実行しました。

 

位置関係や状況判断はさらに出来るようになっています。相対位置関係となると数値化には苦労しつつ、納得の行くレベルまでは詰められませんでした。ただし、文字認識や状況把握の立場からすると、キャラクタのX,Yの位置を数値化して学習させる理由もないでしょう。一方で、ゲーム画面と位置のデータを大量に準備して・・・と考えると、これをネタにVLMの学習のお勉強もできるような気がしてきます。

 

VLMで何か、お手軽に弄れることを探してみたいと思います。

 

利用した画面:

 

生成例:

これはどのようなシーンですか?

これは、任天堂が開発・発売したゲーム『スーパーマリオブラザーズ』のゲーム画面です。このゲームは1985年に発売され、ゲーム業界に大きな影響を与えた作品として知られています。

画像の左上には「MARIO」と表示され、プレイヤーが操作するキャラクターがマリオであることを示しています。右上には「WORLD 1-1」と表示されており、これはゲームの最初のステージであることを意味します。また、「TIME 386」というタイマーも表示されており、残り時間のカウントダウンが行われている様子がわかります。

このゲームでは、マリオが悪のキャラクター「クッパ」から姫の「ピーチ」を救出するために、様々なステージを進んでいきます。この画像のシーンでは、マリオが地面に立ち、右側に「ブロック」や「敵」が見えます。背景には青空と白い雲が描かれており、典型的な『スーパーマリオブラザーズ』の世界観が表現されています。
CPU times: user 26.1 s, sys: 10.2 ms, total: 26.2 s
Wall time: 26.1 s

 

マリオと敵の位置を出来るだけ正確に述べてください。

画像に登場するマリオと敵の位置を、ピクセル単位でできるだけ正確に説明します。

---

### **マリオの位置**
- **座標**: 画面左側の土ブロックの上に立っています。
- **X座標**: 約 **100** ピクセル(画面左から)
- **Y座標**: **382** ピクセル(画面下から)
- **状態**: 通常の走行姿勢で、右を向いており、右方向に移動中です。

---

### **敵の位置**
- **敵の種類**: ゴーレム(Goomba)です。
- **座標**: マリオの右側、緑色のパイプの右隣にいます。
- **X座標**: 約 **260** ピクセル(画面左から)
- **Y座標**: **382** ピクセル(画面下から)
- **状態**: 土ブロックの上に立っており、右方向に移動中です。

---

### **補足情報**

CPU times: user 26.9 s, sys: 22.8 ms, total: 26.9 s
Wall time: 27 s

 

マリオと敵の位置をフォーマットに従って書き出してください。マリオの位置が(0,0)です。キャラクターの幅を1とします。左方向がプラスです。
### フォーマット例
0. Mario (0,0)
1. Goomba (3,5)

 

0. Mario (0,0)  
1. Goomba (6,2)
CPU times: user 2.19 s, sys: 926 µs, total: 2.19 s
Wall time: 2.26 s

これは無理でしたね。

 

Marioは次にどういう行動をとるべきですか?詳しく操作を説明してください。

この画像は、スーパーマリオ Bros.(1985年、任天堂)のゲーム画面です。マリオが左から右へ進んでおり、右側には敵のゴーレム(Goomba)と緑色のパイプがあります。この状況で、マリオが次の行動を取るべきです。

---

### **次の行動:右に進み、敵を跳び越える**

#### **操作の詳細(任天堂ファミコン/FC版の操作)**
- **方向キー(右)を押す**:マリオを右に進ませます。
- **Aボタン(ジャンプ)を押す**:敵の上をジャンプして跳び越えます。

---

### **具体的な手順**

1. **右に進む**:
   - マリオが右側のゴーレムに近づくまで、**右方向キー**を押します。

2. **ジャンプして敵を跳び越える**:
   - ゴーレムの上に来た瞬間に、**Aボタン**を押してジャンプします。
   - マリオは敵の
CPU times: user 27 s, sys: 8.54 ms, total: 27 s
Wall time: 27 s

全体の把握はちゃんとできています。