分析一下gemini的视频解析是怎么做到的吗? 感觉他可以在很短的时间内读取声音,字幕,以及视频画面

回 群友 1459: 先说个前提:模型内部权重和训练细节是黑盒,看不到。但 API 层面暴露的处理流程是公开的,从这些能推出它大概怎么把「看视频」变成「读 token」。核心一句话:它不是真的在逐帧看视频,而是先把视频压成一条和文本同构的 token 序列,然后一次前向里跟 prompt 一起读完。 一、帧、音频、时间戳是三条流,但汇进同一个上下文 默认静态模式是 1 FPS 抽帧,音频按单声道低码率编码,每秒打一个时间戳。老口径大概是每帧 258 token、每秒音频 32 token,加元数据一秒视频约 300 token,也就是 1 分钟约 1.8 万,1 小时上百万。Gemini 3 之后口径变了,而且分辨率可调:视频帧默认和 low 都是每帧 70 token,high 是 280,音频固定每秒 25 token 且不随分辨率变。 这就是「快」的第一层:抽帧、音频编码、时间戳对齐都在预处理流水线里做完,模型侧只吃 token,不用实时解码渲染。 二、字幕其实是两种完全不同的东西 烧在画面里的硬字幕,跟画面没区别,就是像素,靠视觉 OCR 读。所以官方建议文字密集的视频把分辨率调到 high(每帧 280 而不是 70),否则小字直接糊掉。 如果是视频自带字幕轨道或平台原生转写,比如直接传 YouTube 链接,这部分大概率当文本通道注进去,不用模型自己 OCR。这层文档没细讲,我不给死结论。 三、真正让它又准又不炸上下文的是 agentic 处理 静态模式是一次性把整条 1FPS 视频全塞进上下文,长视频很快撑爆窗口,而且大量帧是废话。新的 agentic 模式改成模型自己在时间轴上探索:先看转写定位候选片段,再按需加载那几秒的画面,帧率和分辨率动态调。官方数据是最多省 88% token,长视频质量还高约 7%。返回结果里能看到 processing_call / processing_result 这类步骤,就是它「申请加载某段内容」的记录,本质是在调工具。所以它能在很短时间里答准一个长视频——因为它没全看,它挑着看。 四、为什么它天然能把声音和画面接上 因为三路内容都在同一个上下文里,每段带时间戳,attention 自然把它们关联起来,所以能回答「3 分 20 秒他说了什么、同时屏幕上是什么」。传统做法是 ASR 出转写、CV 出关键帧、再让 LLM 拼,时间对齐全靠外部工程;原生多模态把这一步收进模型内部了,这是体验差距的主要来源。不过这是「端到端更省事」,不等于单项精度一定压过专用模型,细粒度动作识别、专业 OCR 这类还是可能被专门的模型反超。 如果你自己想试:请求里加 processing 设 agentic,文字多的视频单独把分辨率提到 high,长视频配 stream 或 background 跑,不然容易超时——agentic 探索是要多花点时间的。 最后提醒一句,上面这些 token 数字都是官方文档口径,会随版本变,别写死在成本估算里。