File size: 2,224 Bytes
9404e2c
 
cb414cf
 
9404e2c
 
 
cb414cf
9404e2c
 
 
cb414cf
9404e2c
 
cb414cf
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
---
title: Offsides Soccer Analytics
emoji: 
colorFrom: green
colorTo: blue
sdk: gradio
sdk_version: 6.14.0
python_version: '3.12'
app_file: app.py
pinned: false
license: mit
short_description: AI tactical analysis finds edges in UCL prediction markets
---

# Offsides — Tactical Edge Detection

Multimodal AI analyzes UEFA Champions League footage using **YOLO + Qwen-VL 72B on AMD MI300X** to detect where sports prediction markets are mispriced.

## How It Works

1. **Extract** — Sample key frames from recent match highlights (both teams, last 3 matches)
2. **Detect** — YOLO extracts player/ball positions, formation shapes
3. **Annotate** — OpenCV renders tactical overlays (defensive lines, compactness, team colors)
4. **Reason** — Qwen-VL 72B reasons over annotated frames + stats + market odds
5. **Edge** — Identifies where VLM probability diverges from market implied probability

## Results

Validated on 5 UCL knockout upsets — **3/5 correct edge calls** on outcomes the market got wrong.

| Match | VLM Edge | Result |
|-------|----------|--------|
| Dortmund vs PSG (SF) | +9pp Home | ✓ Dortmund 1-0 |
| Dortmund vs Atletico (QF) | +5pp Home | ✓ Dortmund 4-2 |
| PSG vs Barcelona (QF) | +4pp Home | ✓ PSG 4-1 |
| Man City vs Real Madrid (QF) | +3pp Home | ✗ Draw (pens) |
| Atletico vs Inter (R16) | +2pp Draw | ✗ Atletico 2-1 |

## Architecture

```
YouTube Highlights → Frame Extraction → YOLO Detection → Annotation (OpenCV)

Stats + Market Odds ──────────────────────────→ Qwen-VL 72B (AMD MI300X)

                                                   Edge Signal + Reasoning
```

## Tech Stack

- **GPU:** AMD Instinct MI300X (192GB HBM3) — single GPU fits 72B model
- **Model:** Qwen/Qwen2.5-VL-72B-Instruct via vLLM on ROCm
- **Detection:** YOLOv8m + ByteTrack
- **Annotation:** OpenCV (team colors, defensive lines, compactness ellipses)
- **Demo:** Gradio (this Space displays pre-computed results)

Built for the **AMD Developer Hackathon 2026** (Track 3: Vision & Multimodal AI)