Real-time streaming video question answering with vision-language models must answer queries that arrive at any time with low latency while sustaining the video-processing rate required by the application. Existing systems construct key-value (KV) caches for the entire video as it arrives, although a query typically uses only a few of the preceding frames as evidence. This highlights a fundamental trade-off: performing more computation as video arrives reduces query-time computation but can increase processing lag, whereas deferring computation can increase the video-processing rate but requires additional query-time computation for retrieved content. We present StreamAhead, an algorithm-system co-design that exploits this trade-off through adaptive precomputation: dynamically controlling how much computation to complete for each video segment before a query arrives. StreamAhead encodes video segments independently and lets each remain at a different representation level, from inexpensive visual features to costly KV caches, completing KV caches only for the retrieved segments when a query arrives. StreamAhead profiles offline the cost of advancing a segment to each representation level. Its runtime uses these profiles to schedule segment computation concurrently with query execution, pipelining it across heterogeneous CPU and GPU resources while maintaining the required video-processing rate. StreamAhead achieves accuracy competitive with state-of-the-art methods with up to 10.4x lower time-to-first-token (TTFT), and up to 5.9x lower TTFT than state-of-the-art streaming systems. It sustains 30 FPS with P95 TTFT under 0.5 s, and up to 57 FPS with P95 TTFT under 2 s. To our knowledge, StreamAhead is the first real-time streaming video QA system with competitive accuracy, setting a new Pareto frontier between video-processing rate and TTFT.
Figures & tables
Fig. 1: (a) Building KV caches for every segment, (b) deferring computation under temporal dependencies, and (c) adaptive precomputation in StreamAhead.
Fig. 2: Overview of StreamAhead: continuous video processing, shared segment state and storage, and query processing.
Fig. 3: Offline profiling, online pipelined execution, and runtime scheduling states in StreamAhead.
Method
Perception
Backward
Gemini 1.5 Pro
69.3
62.5
GPT-4o
64.5
60.8
LLaVA-Video-7B
62.3
53.7
LLaVA-OneVision-7B
62.0
43.7
Flash-VStream-7B
28.4
27.4
VideoLLM-online-8B
22.2
16.2
TABLE I: Answer quality on OVO-Bench (accuracy, %).
Method
Accuracy (%)
VideoLLM-online-8B
35.99
Dispider
67.63
StreamAgent-7B
74.28
Think while Watching
74.40
SAVEMem
76.00
HERMES
79.44
TABLE II: Answer quality on StreamingBench Real-Time (accuracy, %). External results are from published evaluations; StreamAhead uses a randomly sampled subset.
Setting
Accuracy (%)
Mean TTFT (ms)
Bwd.
RT
Bwd.
RT
Segmentation
0.5 s / 15 frames
53.5
79.3
146.1
204.3
0.5 s / 8 frames
52.5
78.8
123.1
154.2
0.5 s / 4 frames
52.0
78.5
90.1
117.9
1.0 s / 30 frames
52.0
78.0
275.2
334.4
TABLE III: Sensitivity to algorithmic settings.
Fig. 4: Video-processing-rate–TTFT trade-off. (a) Mean TTFT across video-processing rates, showing three required representation levels selected by offline profiling: L3 below 30 FPS, L2 from 30 to 80 FPS, and L1 above 80 FPS. (b) Highest video-processing rate satisfying each P95 TTFT target. External methods are shown at their measured TTFT for reference.
Method
2 FPS
8 FPS
16 FPS
StreamAhead
176.6
273.1
360.8
ReKV
191.6
771.3
–
StreamingVLM
294.4
678.7
2140.5
OASIS
1830.4
1557.2
–
TABLE IV: Mean TTFT under online replay (ms).
Fig. 5: Processing lag and recovery for StreamAhead at 30 and 40 FPS under continuous video arrival. (a) Peak processing lag and (b) recovery time versus Query-Priority duration.
Configuration
Mean TTFT
P95 TTFT
P95 L2 Lag
L3-ready
30 FPS
Full StreamAhead
198
330
0.5
96.2%
Required-Only
1181
1283
0.5
0.0%
No Query Task Priority
238
530
0.5
94.8%
No Pipeline
295
453
0.5
93.7%
40 FPS
TABLE V: Runtime ablation at 30, 40, and 50 FPS. TTFT is reported in milliseconds. P95 L2 lag is reported in seconds. The target lag is 0.5 s. All configurations use a 16-GiB GPU cache.
Historical state
Evict D2H
L3 H2D
L2 → L3
TTFT
0/2 L3 on GPU
86.1
59.9
0.0
254.5
1/2 L3 on GPU
39.8
29.9
0.0
176.1
2/2 L3 on GPU
0.0
0.0
0.0
90.1
1 CPU L2 + 1 GPU L3
36.6
0.0
339.3
490.1
TABLE VI: TTFT under different historical representation states (ms).