VideoRAG: Retrieval-Augmented Generation with Extreme Long-Context Videos
基本信息
博客贡献人
燕青
作者
Xubin Ren, Lingrui Xu, Long Xia, et al. (HKU, Baidu)
标签
LLM, RAG, knowledge graph
摘要
检索增强生成(RAG)在通过外部知识集成增强大语言模型(LLM)方面取得了显著的成功,但其应用主要集中在文本内容上,而多模态视频知识的丰富领域则主要未被探索。本文介绍了 VideoRAG,这是第一个专门用于处理和理解超长上下文视频的检索增强生成框架。本文的核心创新在于其双通道架构,该架构无缝集成了 (i)基于图的文本知识对齐,用于捕获跨视频语义关系,以及(ii)多模态上下文编码,用于有效保留视觉特征。这种新颖的设计使 VideoRAG 能够通过构建跨越多个视频的精确知识图谱来处理无限长度的视频,同时通过专有的多模态检索范式保持语义依赖性。通过对本文提出的 LongerVideos 基准测试进行全面的实证评估——包括讲座、纪录片和娱乐类别的 160 多个视频,总计 134+ 小时——VideoRAG 与现有的 RAG 方法和长视频理解方法相比表现出可观的性能。
本文已开源代码:https://github.com/HKUDS/VideoRAG
问题定义
检索增强生成(RAG)通过在推理过程中动态检索和整合外部知识来增强 LLM。虽然 RAG 在各种基于文本的应用程序(例如问答和事实推理)中取得了成功,但在多模态内容(尤其是视频理解)的丰富领域中,其潜力仍未得到充分开发。RAG 对视频内容的扩展带来了独特的挑战和机遇,因为视频包含复杂的多模态特征、时间动态和复杂语义关系,这超出了传统的基于文本的知识集成方法的能力范围。
尽管大型视觉模型(large vision models, LVM)在视频理解任务方面取得了进步,但在处理长上下文(long-context)视频时仍面临限制。这些模型主要为短视频片段而设计,难以有效地捕获和推理跨越数小时的时间依赖关系。在需要跨视频(cross-video)理解和知识整合的场景中,例如系列讲座理解、纪录片分析或顺序娱乐内容解读,挑战变得尤为严峻。现有方法通常会将长视频分割成孤立的片段,从而导致上下文信息丢失,并且无法在不同视频之间建立有意义的联系。这种限制严重阻碍了在教育内容分析、媒体存档和基于视频的知识提取中的应用。在这些应用中,了解多个视频的更广泛上下文至关重要。
为长上下文视频(及跨视频)实现检索增强生成的主要挑战是多方面的:
- 捕获异构视频知识。视频包含跨多种形式的丰富信息,包括视觉帧、音频流和文本描述。有效地捕获和组织这些不同的知识是一项独特的挑战,现有的基于文本的 RAG 方法无法解决。现有方法无法处理跨模态信息的复杂性及其关系。
- 保持语义连贯性以进行跨视频理解。在可能长达数小时或数天的大量视频之间保持语义连接比单个视频更复杂。保留这些错综复杂的关系和全面的知识相互依赖关系对于整体视频理解至关重要。
- 高效的视频知识检索。当视频知识库包含数量不受限制的冗长视频时,快速识别最相关的片段以响应用户查询变得更具挑战性。检索系统必须为用户提供最相关的信息,以便准确回答查询。
通过解决这些关键挑战,VideoRAG 旨在释放 RAG 在超长上下文视频领域的全部潜力,从而实现强大而全面的视频理解功能。VideoRAG 的核心是两个环环相扣的组件——多模态视频知识索引框架(Multi-Modal Video Knowledge Indexing)和基于知识的多模态检索范式(Knowledge-Grounded Multi-Modal Retrieval):
-
索引框架将视频内容转换为结构化的文本和视觉表示形式,以基于图形的文本知识为基础来保留视频之间的语义关系,并辅以多模态上下文编码来捕获细粒度的跨模态交互。这种双通道架构使 VideoRAG 能够有效地组织和索引长上下文视频,从而保留多媒体内容的丰富语义。
-
检索范式集成了文本语义和视觉内容匹配,利用索引后的知识图谱和嵌入来识别最相关的视频内容。最后,VideoRAG 采用两阶段内容提取过程,将 LLM 支持的关键字提取和基于视觉语言模型的文本基础相结合,通过基于文本的检索来丰富视觉分析,为最终响应生成全面的输出。
方法
RAG架构
RAG将用户查询与从外部知识库获取的相关文档集合集成在一起,包含检索组件和生成组件两个基本要素:
-
检索组件负责从外部知识库中获取相关的文档或信息。它根据输入的查询来识别和检索最相关的数据。
-
生成组件接收检索到的信息,生成连贯的、上下文相关的回复。它利用语言模型的能力来产生有意义的输出。在形式上,这种RAG框架,记为 M \mathcal{M} M,可以定义如下:
M = ( G , R = ( φ , ψ ) ) , M ( q ; D ) = G ( q , ψ ( q ; D ^ ) ) , D ^ = φ ( D ) \mathcal{M}=\big( \mathcal{G}, \mathcal{R}=(\varphi,\psi) \big),\quad \mathcal{M}(q;\mathcal{D})=\mathcal{G}\big(q,\; \psi(q;\mathcal{\hat{D}}) \big),\quad \mathcal{\hat{D}}=\varphi(\mathcal{D}) M=(G,R=(φ,ψ)),M(q;D)=G(q,ψ(q;D^)),D^=φ(D)
在该框架中, G \mathcal{G} G 和 R \mathcal{R} R 分别表示生成模块和检索模块, q q q 表示输入查询, D \mathcal{D} D 表示外部数据库。而检索模块 G \mathcal{G} G 包含两个关键部分:
(i )数据索引器 φ \varphi φ(Data Indexer),其在外部数据库 D D D 的基础上构建具体的数据结构 D ^ \hat{D} D^ 。
(ii)数据检索器 ψ \psi ψ(Data Retriever),通过对索引数据的查询得到"相关文档"。
本文架构

多模态视频知识索引
由于以下限制,基于文本的标准 RAG 方法被证明不适用于视频内容:
-
基于文本的系统无法直接捕捉视觉动态
-
传统 RAG 方法无法跨帧保持时间依赖关系
-
简单文本编码无法在视觉和文本信息之间捕获的跨模态交互
为了应对上述挑战,本文引入了一个全面的索引框架,其中包含两个组件:(1)基于图的文本知识对齐(Graph-based Textual Knowledge Grounding),它将多模态信号转换为结构化的文本表示,同时保留语义关系和时间依赖性,(2)多模态上下文编码(Multi-Modal Context Encoding),通过统一嵌入捕获细粒度的跨模态交互。这种双通道架构使 VideoRAG 能够有效地组织和索引长上下文视频,同时保留多模式内容的语义丰富性。
基于图的文本知识对齐
本文的框架通过基于图形的技术将多模态视频内容转换为结构化的文本知识,以增强索引和检索。转换过程通过两种关键方式进行:对于视觉内容,本文采用最先进的视觉语言模型 (VLM) 来生成全面的文本描述,捕捉场景动态和上下文信息;对于听觉流,本文利用高保真自动语音识别 (ASR) 来提取具有时间对齐的口语内容。这种双流处理确保视觉语义和音频信息都保留在文本知识表示中。
-
音频-文本对齐
为了捕捉对话和旁白等关键元素来丰富视频理解,本文采用自动语音识别 (ASR) 技术来转录每个视频片段,其中 T j = A S R ( S j ) \mathcal{T}_j = ASR (\mathcal{S}_j) Tj=ASR(Sj) 表示从片段 S j \mathcal{S}_j Sj 中提取的转录文本。
-
视频-文本对齐
为了有效地分析视觉内容,本文将每个视频 V V V 分割成短片段 S 1 , . . . , S m S_1, . . ., S_m S1,...,Sm,从而能够处理无限长度的视频。对于每个片段 S j S_j Sj,通过两个步骤将视觉信息转换为文本:首先,按时间顺序均匀采样 k k k 帧( k ≤ 10 k ≤ 10 k≤10 )以捕获关键的视觉元素;然后,使用视觉语言模型 (VLM) 来生成全面的自然语言描述,以捕捉物体、动作和场景动态。字幕生成过程如下:
C j = V L M ( T j , { F 1 , . . . , F k } ∣ F ∈ S j ) \mathcal{C}_j=VLM(\mathcal{T}_j,\{F_1,...,F_k\}|F\in\mathcal{S}_j) Cj=VLM(Tj,{F1,...,Fk}∣F∈Sj)
其中 F F F 表示按时间顺序排列的片段 S j S_j Sj 中的 k k k 个采样帧集。保持 k ≤ 10 k ≤ 10 k≤10 以优化效率,同时保持时间的连贯性。模型将当前片段的视觉帧 F F F 和语音转录 T j \mathcal{T}_j Tj 集成为输入提示,使 VLM 能够生成上下文丰富的字幕 C j \mathcal{C}_j Cj,以捕获视觉动态和相关的语音内容。
本文提出的 VideoRAG 的核心是有效组织和检索多视频知识的挑战。为了解决这个问题,本文提出了一个基于图的索引框架,该框架系统地链接不同视频中的文本知识。此体系结构支持从提取的文本信息中逐步构建全面的知识图谱,同时保持语义关系和上下文依赖关系。整个过程通过这些基本步骤执行,每个步骤都旨在优化多模态知识表示和检索。
-
语义实体识别和关系映射
本文的框架利用大型语言模型 (LLM) 构建高质量的知识图谱 G = ( N , E ) \mathcal{G} = (\mathcal{N},\mathcal{E}) G=(N,E),全面捕获和连接视频知识。为了优化 LLM 性能并有效管理其上下文窗口限制,本文实施了策略处理流水线:
- 文本分割:第一阶段侧重于文本分割,将视频文本描述 V t V_t Vt 划分为可管理的块 H i ∈ V t H_i \in V^t Hi∈Vt。每个数据块都经过有效构建,以包含多个视频片段描述,同时遵守预定义的长度阈值,确保在保持语义连贯性的同时实现最佳处理。
- 实体关系提取:在实体关系提取阶段,通过 LLM 处理每个块的 (视频字幕-音频转录) 对,以识别关键实体(表示为节点 N N N )并提取有意义的关系(表示为边 E E E)。例如,给定文本 “GPT-4 利用 transformer 架构进行高级自然语言理解,同时通过 ViT 基于补丁的图像编码整合视觉特征 ”,在LLM主导下提取实体“GPT-4”、“transformer 架构”和“Vision Transformer (ViT) ”,以及关系“GPT-4 利用 transformer 架构”和“GPT-4 整合 ViT 的编码”。
-
增量图构建和跨视频知识集成
- 实体统一与合并:本文的跨视频实体统一流程系统地识别各种视频中语义等效的实体并将其合并到知识图 G G G 中的统一节点中。这种统一方法不仅保持了实体的一致表示,还保留了从不同视频源派生的丰富上下文信息。因此,它有效地创建了一个有凝聚力且相互关联的知识网络,从而增强了对图中包含的信息的整体理解和可用性。
- 动态知识图谱进化:随着新视频内容的处理,本文的知识图谱通过双轨进化进行系统扩展:整合新发现的实体和建立以前未观察到的关系。在处理来自传入视频的文本块时,系统不仅会识别和整合新实体(例如,新兴的 AI 架构或方法),还会发现现有节点之间的新语义连接。这种双向增长过程在容纳新概念的同时加强了已建立的知识模式,确保图在扩展时保持全面性和适应性。
- LLM 驱动的语义合成:为了保持语义的一致性,本文利用大型语言模型 (LLM) 通过合成来自多个视频片段的信息来生成统一的实体描述。此合成过程可确保每个实体保持全面而一致的表示,从而有效地整合不同视频上下文中的知识,同时保持整个知识结构的语义准确性。
完整知识图谱的构造定义如下:
G = ( N , E ) = ⋃ H ∈ { V 1 t , . . . , V n t } ( N H , E H ) \mathcal{G} = (\mathcal{N},\mathcal{E})=\bigcup_{\mathcal{H}\in \{\mathcal{V_1^t},...,\mathcal{V_n^t}\}}\big(\mathcal{N_\mathcal{H}},\mathcal{E_\mathcal{H}}\big) G=(N,E)=H∈{V1t,...,Vnt}⋃(NH,EH)
( N H , E H ) (\mathcal{N_\mathcal{H}},\mathcal{E_\mathcal{H}}) (NH,EH) 表示从每个文本块 H \mathcal{H} H 中提取的实体及其关系,从视频描述 V t \mathcal{V}^t Vt 中分离出来。通过处理所有视频,本文构建了完整的图 G \mathcal{G} G 。
混合索引建立
-
文本块索引:对于每个文本块 H H H,使用文本编码器 T E n c ( ⋅ ) TEnc(·) TEnc(⋅) 对文本嵌入 e H t = T E n c ( H ) e^t_{\mathcal{H}} = TEnc(H) eHt=TEnc(H) 进行编码,从而能够高效检索原始块。将完整的块集表示为 H H H,并将其集合文本嵌入表示为 E H t ∈ R ∣ H ∣ × d t E^t_H \in \mathbb{R}^{|H|\times d_t} EHt∈R∣H∣×dt ,其中 ∣ H ∣ |H| ∣H∣表示总块计数, d t d_t dt 表示嵌入维度。知识图谱 G \mathcal{G} G 和块嵌入 E H t E^t_H EHt 共同构成了本文的图索引模块的核心组件。
-
多模态上下文编码:在视觉到文本的基础中,某些视觉细微差别本质上会丢失,例如照明动态和复杂的对象细节,这些都会阻碍准确的文本表示。为了保留这些视觉元素,本文采用了多模态编码器 M E n c ( ⋅ ) MEnc(·) MEnc(⋅) 将视频内容转换为检索优化的嵌入。此编码器能够将视觉内容和文本查询映射到共享的多模态特征空间,从而实现高效的语义检索。基于 CLIP 和 ImageBind 等强大的多模态编码框架,本文将视频编码表示为:
E S v ∈ R ∣ S ∣ × d v w . r . t . e S v = M E n c ( S ) E^v_{\mathcal{S}} \in \mathbb{R}^{|S|\times d_v}\quad w.r.t.\; \bold{e}^v_{\mathcal{S}}=MEnc(\mathcal{S}) ESv∈R∣S∣×dvw.r.t.eSv=MEnc(S)
在这个公式中,每个视频片段 S \mathcal{S} S 被编码为一个嵌入,共同形成 E S v E^v_{\mathcal{S}} ESv。在这里,使用大写的 S \mathcal{S} S 来表示完整的片段集,其中 | S \mathcal{S} S|表示总片段计数, d v d_v dv 表示视觉嵌入维度。本文的 VideoRAG 框架的索引模块 φ ( ⋅ ) \varphi(·) φ(⋅) 处理视频知识库 D = V 1 , . . . , V n \mathcal{D} = \mathcal{V_1}, . . . , \mathcal{V_n} D=V1,...,Vn 以创建结合知识图谱和多模态上下文嵌入的混合索引:
D ^ = φ ( D ) = ( G , E H t , E S v ) \mathcal{\hat{D}}=\varphi(\mathcal{D})=(\mathcal{G},E^t_H,E^v_{\mathcal{S}}) D^=φ(D)=(G,EHt,ESv)
多模态检索范式
该范式旨在通过集成文本语义和视觉内容匹配,有效地从视频中检索相关知识以响应查询。利用混合索引框架 D ^ \mathcal{\hat{D}} D^ ,这种方法识别信息丰富的视频片段并使用 VLM 生成特定于查询的描述,确保一个全面的检索过程,同时捕获语义理解和视觉上下文以获得更准确的响应。
文本语义匹配检索视频片段
文本检索过程利用索引阶段构建的知识图谱 G \mathcal{G} G,其中每个实体都包含从相关文本块派生的文本描述。检索过程包括四个连续的步骤:
- 查询重表述:在初始步骤中,使用 LLM 将输入查询重新表述为陈述句,为后续的实体匹配作进行优化。
- 实体匹配:然后,系统会计算重表述的查询与知识图谱中的实体描述之间的相似性分数,从而识别最相关的实体及其关联的文本块。
- 区块选择:在实体匹配之后,本文应用基于 GraphRAG 的方法从检索到的集合中排序和识别最相关的区块 H q \mathcal{H}_q Hq。
- 视频片段检索:最后,从选定的块中提取视频片段,因为每个块都包含多个视频片段的描述,从而产生基于文本检索的视频片段集 S q t \mathcal{S}_q^t Sqt。
通过内容嵌入进行视觉检索
本文的框架通过直接视觉检索来补充文本匹配,从而在查询和视频片段之间实现语义对齐。基于建立的视觉索引框架,每个视频片段都通过多模态编码器 M E n c ( ⋅ ) MEnc(·) MEnc(⋅) 进行编码,以生成基于内容的嵌入。视觉检索过程分两个阶段进行:
-
从查询中提取场景信息:利用 LLM 将查询 q q q 提取为其核心视觉场景组件,从而创建重点场景描述。例如:原始问题:“在电影中,在城市中追逐主角的汽车是什么颜色的?”;以场景为中心的重新表述:“一个激烈的城市追逐序列,其中一辆汽车在城市街道上追逐某人,背景是建筑物和交通”
-
跨模态特征对齐:这种以场景为中心的查询重新表述使用多模态编码器投影到与视觉嵌入相同的特征空间中,利用其跨模态功能来对齐来自不同模态的上下文。通过余弦相似度计算查询嵌入和视频片段嵌入 E S v E^v_{\mathcal{S}} ESv 之间的相似性分数,表示为 S i m ( M E n c ( q ) , E S v ) Sim(MEnc(q), E^v_{\mathcal{S}}) Sim(MEnc(q),ESv)。前 K K K 个匹配的片段形成视觉检索结果 S q v \mathcal{S}_q^v Sqv。
-
基于 LLM 的视频片段过滤:为了从检索结果中过滤掉有噪声的片段,本文使用 LLM 来评估每个片段 S ∈ S q t ∩ S q v \mathcal{S} \in \mathcal{S}_q^t ∩ \mathcal{S}_q^v S∈Sqt∩Sqv,以了解其与使用文本和视觉信息 V S t \mathcal{V}_{\mathcal{S}}^t VSt 查询 q q q 的相关性。过滤后的片段定义为:
{ S ^ ∣ S ^ ∈ ( { S } q t ∩ { S } q v ) ∧ L L M s − J u d g e ( V S ^ t ) = 1 } \{\mathcal{\hat{S}}|\mathcal{\hat{S}}\in (\{\mathcal{S}\}^t_q \cap \{\mathcal{S}\}^v_q) \wedge LLMs-Judge(\mathcal{V_{\mathcal{\hat{S}}}^t})=1 \} {S^∣S^∈({S}qt∩{S}qv)∧LLMs−Judge(VS^t)=1}
其中函数 L L M s − J u d g e ( ⋅ ) LLMs-Judge (·) LLMs−Judge(⋅) 是二元决策器,通过精心设计的 prompt 评估片段相关性,如果片段包含对回答查询 q q q 至关重要的信息,则返回 1。这种方法利用 LLM 的高级语义推理功能来有效地过滤掉不相关的片段,同时保留关键信息。
查询感知内容集成和响应生成
使用检索到的视频片段,本文实施一个两阶段的内容提取过程。首先,利用 LLM 从查询
q
q
q 中提取关键字
K
q
\mathcal{K}_q
Kq,然后将其与采样帧一起集成到 VLM 提示中,以生成详细的视觉字幕
C
^
\mathcal{\hat{C}}
C^ :
C
^
=
V
L
M
(
K
q
,
T
^
,
{
F
1
,
.
.
.
,
F
k
^
}
∣
F
∈
S
^
)
\mathcal{\hat{C}}=VLM(\mathcal{K}_q,\mathcal{\hat{T}},\{F_1,...,F_{\hat{k}}\}|F\in \mathcal{\hat{S}})
C^=VLM(Kq,T^,{F1,...,Fk^}∣F∈S^)
其中
T
^
\mathcal{\hat{T}}
T^ 表示视频片段
S
^
\mathcal{\hat{S}}
S^ 的音频转录,采用更大的采样帧数
k
^
>
k
\hat{k} > k
k^>k 。对于每个片段
S
^
j
\mathcal{\hat{S}}_j
S^j,通过结合其视觉字幕和音频转录来创建一个全面的描述
V
^
j
t
=
(
C
^
j
,
T
^
j
)
\mathcal{\hat{V}_j^t}=(\mathcal{\hat{C}_j},\mathcal{\hat{T}_j})
V^jt=(C^j,T^j))。这些描述被收集到集合
V
^
t
\mathcal{\hat{V}^t}
V^t 中以增强生成。然后,使用传统的基于文本的检索来丰富这种视觉分析,在查询
q
q
q 和文本块
H
H
H 之间采用语义相似性匹配来获得相关的文本信息
H
^
\mathcal{\hat{H}}
H^。因此,本文检索模块
φ
(
⋅
)
\varphi(·)
φ(⋅) 的完整输出包括特定于查询的视频描述和相关文本块:
φ
(
q
,
D
^
)
=
(
V
^
t
,
H
^
)
\varphi(q,\mathcal{\hat{D}})=(\mathcal{\hat{V}^t},\mathcal{\hat{H}})
φ(q,D^)=(V^t,H^) 。
实验
实验设置
本文实施了两种不同的协议来评估不同场景中的模型性能:
-
胜率比较 Win-Rate Comparison
遵循已建立的检索增强生成 (RAG) 评估方法,使用基于 LLM 的判断。这种方法使用 GPT-4o-mini 对两个模型生成的响应进行比较排名,为每个排名决策提供解释性理由。本文的实验在RAG场景下使用该协议。
-
定量比较
通过结合分数分配的方法来扩展基于 LLM 的判断。它为每个查询建立一个标准基准答案,根据该答案以 5 分制评估基线模型的响应,范围从 1 (差) 到 5 (好)。本文的实验在长视频理解场景下使用该协议。
数据集
- Lecture Video:以当代技术主题为特色的开放获取教育内容,包括 AI 代理和 RAG 技术,通过综合教程提供。
- Documentary Video:高质量的纪录片涵盖野生动物探索、自然景观和专家访谈,每部纪录片均采用专业摄影制作。
- Entertainment Video:内容多样,包括颁奖典礼、带有战略分析的游戏评论以及记录全球文化探索的旅行体验。
基线模型
RAG
- NaiveRAG:一种标准的 RAG 实现,可将文档分割成大小均匀的块,并通过文本嵌入相似性匹配来检索上下文相关的内容,作为检索增强生成系统广泛采用的基线。
- GraphRAG:一个增强的 RAG 系统,它利用 LLM 从输入文档构建实体知识图谱,通过执行基于社区的图形摘要来捕获全局上下文和实体之间的关系,从而改进答案生成。
- LightRAG:一个轻量级的基于图的 RAG 框架,实现了双级检索架构,同时集成了低级和高级语义知识发现。该系统支持高效且上下文感知的文档检索,以处理复杂的查询。
长视频理解
- LLaMA-VID:一个视觉语言框架,利用上下文和内容标记进行高效的长视频处理,解决视频理解任务中的标记复杂性。
- VideoAgent:一个多模态代理,通过统一的内存架构集成不同的基础模型。它通过对短视频剪辑中的时间依赖关系进行精细的对象检测、跟踪和建模,实现强大的视频理解。
- NotebookLM:Google 专为视频内容分析而设计的辅助系统。它通过高级转录分析实现高效的多视频理解和信息检索,使用户能够跨多个视频源提取上下文一致的见解。
实验结果
- 胜率比较

- 定量比较

相关知识链接
论文原文
VideoRAG: Retrieval-Augmented Generation with Extreme Long-Context Videos
总结
[亮点]
- 提出基于图的文本知识对齐与多模态上下文编码,通过构建跨越多个视频的知识图谱来处理无限长度的视频,解决了传统VLM面临的挑战
- 提出多模态RAG范式,有效保持上下文语义的相关性
[启发]
- 与传统RAG方法中数据来自外部知识库不同,本文的RAG知识(可以)全部来源于输入的视频。因此,本文实质是将RAG的框架应用于长视频与跨视频理解任务,从而解决长视频中超长上下文导致的语义丢失,与传统VLM无法有效编码跨视频的视觉语义的问题。这种 “临时知识来源,即插即用RAG” 的迁移使得本文方法表现出优异性能。
BibTex
@misc{ren2025videoragretrievalaugmentedgenerationextreme,
title={VideoRAG: Retrieval-Augmented Generation with Extreme Long-Context Videos},
author={Xubin Ren and Lingrui Xu and Long Xia and Shuaiqiang Wang and Dawei Yin and Chao Huang},
year={2025},
eprint={2502.01549},
archivePrefix={arXiv},
primaryClass={cs.IR},
url={https://arxiv.org/abs/2502.01549},
}