[CVPR 2026] VideoSeek: Long-Horizon Video Agent with Tool-Guided Seeking

안녕하세요 오늘은 CVPR 2026에 accept된 video understanding 연구를 리뷰해보겠습니다.
요즘 저는 적은 프레임, 작은 모델을 사용하면서도 성능은 어느 정도 나오는 효율적인 프레임워크들을 관심있게 보고 있는데요! 이 논문은 그중에서도 적은 프레임으로 필요한 장면만 똑똑하게 찾아가는 방식에 해당하는 연구입니다.
그럼 리뷰 시작하겠습니다.


Intro

이 논문의 핵심은 긴 비디오를 다 보지 말고 답을 찾는데 필요한 장면만 똑똑한 장면만 찾아보자! 입니다.

기존의 일부 비디오 에이전트들은 겉으로는 agent를 사용해서 효율성을 높인다~라고는 하지만 여전히 긴 비디오에서 프레임을 많이 뽑아 놓고 그걸 하나하나 설명하거나 메모리로 저장하는 방식을 사용합니다. 이렇게 되면 정확도가 어느정도 나오더라도 비디오가 길어질수록 비용 문제를 피할수가 없겠죠! 이 논문이 깔고 시작하는 문제의식이 바로 이 부분입니다.

따라서 저자들은 이 논문을 통해 VideoSeek라는 방법론을 제안합니다. 영상을 전부 읽는 대신 비디오의 논리흐름을 따라가면서 필요한 증거를 찾아간다! 라는 방법입니다. 여기서 ‘논리 흐름을 따라간다’ 라는 말은 비디오가 보통 시간의 순서와 사건의 인과를 가지고 전개되는데, 이때 모든 프레임을 다 일일히 뜯어보는게 아니라 사람처럼 비디오를 보겠다는 말 입니다. 쉽게 말하자면 긴 영상을 대충 무슨 상황(영상)인지 전반적으로 먼저 파악하고 → 답이 나올만한 구간을 추정하고 → 그 부분을 자세히 보는 인간의 추론 전략을 모델에 넣으려는 것 입니다.

이런 탐색 추론전략을 위해 VideoSeek는 크게 두 가지 핵심 구성요소를 사용합니다. 먼저 think–act–observe loop 구조로 지금까지 본 정보로 생각(think)하고, 다음에 어떤 툴을 쓸지 결정(act)하고, 그 툴을 사용해서 비디오에서 새 정보를 가져(observe)오면 그걸 다음 판단에 다시 반영합니다. 이 과정은 single-pass방식이 아니라 추론하면서 필요한 정보를 추가로 수집하는 agentic한 구조입니다. 다음으로 multi-granular toolkit 구조입니다. 이건 비디오를 여러 granularity로 본다는 뜻으로, 하나의 고정된 해상도나 고정된 시간단위로만 보는게 아니라 아주 거칠게 전체를 훑어보고<overview>, 중간 정도로 특정 후보 구간을 살피고<skim>, 짧은 클립을 자세히 들여다본다<focus>! 는 의미입니다.

이 두 구조 덕분에 기존의 방식들과 메모리 방식의 차이를 볼수 있습니다. 기존의 일부 에이전트 방법들이 처음에 비디오 전체를 싹 정리해서 DB나 메모리 형태로 구축해 뒀다면, VideoSeek는 필요할 때마다 보고 그때그때 질문 중심으로 필요한 증거만을 순차적으로 누적해서 모으는 방식입니다. 또한 단순히 비디오 내용만 저장하는 것이 아니라 무슨 생각으로(think) 어떤 툴을 호출했고(act) 그 결과 무엇을 봤는지(observe)까지를 포함한 trajectory를 함께 남기는 방식입니다. 이렇게 하면 ‘왜 이 구간을 봤고, 아직 뭐가 부족한지’와 같은 이전 행동의 맥락을 참조할수 있게 됨으로 llm이 다음 step에서 더 맞는 툴(act)을 고르기가 쉬워지는 것 입니다!

위 fig1의 제안하는 모델의 구조도를 살펴보면 에이전트가 툴을 써서 전체 비디오 중 일부 프레임만 선택적으로 보고, 그 결과를 다시 LLM이 받아 다음 행동을 정하는 구조로 그려져 있습니다. 오른쪽의 실험 결과처럼 적은 프레임 수로도 높은 점수를 내는게 이 논문의 포인트 입니다. 특히 그래프를 보면 LVBench에서 base model인 GPT-5와 비교에서도 성능은 약 한 10% 향상인데 프레임은 93% 감소한 것을 볼 수 있습니다. 이게 어떻게 가능한건지, 어떤 조건에서 잘 되는건지는 뒤에 이어서 살펴보겠습니다.


Method

1. Problem formulation

기존 비디오 QA의 가장 기본적인 형태는 다음(식(1))과 같습니다.

X는 비디오이고 Q는 질문일때, 비디오 X와 질문 Q를 보고 정답 Y를 맞히는 문제 입니다. 이런 기본적인 관점에서는 모델이 추론을 하는 동안 무슨 일이 일어나는지 보다는 긴 비디오 전체를 어떤식으로든 인코딩 해서 그냥 바로 답 Y를 내는 구조입니다. 이렇게 할 경우 문제는 추론하는 중간 과정(ex.어디를 먼저 봤는지, 왜 그 구간을 골랐는지, 어떤 증거를 찾았는지, 현재 증거가 충분한지)이 숨겨져 있다는 것 입니다.

저자들은 긴 비디오에 대한 이해를 단순히 입력→정답 의 문제가 아니라 여러번의 추론과 탐색이 필요한 long-horizon 문제라고 봅니다. 여기서 long-horizon 이라는 말은 단순히 영상 길이가 길다는 뜻만이 아니라 한번에 띡! 하고 끝나는 추론이 아니고 여러 step에 걸쳐서 이전 관찰을 바탕으로 다음행동을 결정하면서 답에 접근해 가는 것을 말합니다.

이런 과정을 앞서 인트로에서 언급했듯이 think–act–observe 과정으로 설명합니다. 각 추론 step t에서 에이전트는 <z_t, a_t, o_t>를 만듭니다. z_t는 생각(think)으로 내부 추론(왜 다음 행동을 하려는가?!)을 말합니다. 예시로 설명하자면 (지금까지 본 정보로는 부족하다),(앞쪽보다 뒤쪽에 답이 있을 가능성이 높다),(이 구간은 너무 길어서 skim이 적절하다)같은 식의 판단 과정을 말합니다. a_t는 행동(act)으로 이건 실제로 선택한 행동으로, overview,skim,focus중 하나를 호출하거나 answer를 하는 tool call을 말합니다. 즉 이번 step에서 실제로 무엇을 할것인지! 를 말합니다 o_t는 관찰(observe)로 행동(overview,skim,focus)의 결과로 얻은 정보를 말합니다. 저 셋중 하나만 예시로 살펴보자면 skim(act)를 통해 (00초 부근에 여우주연상 수상자가 등장한다) 같이 얻은 증거를 말합니다.

위 식(2)처럼 이 모든 step들을 시간 순으로 쌓으면 trajectory τ를 구성할수 있습니다. τ는 이 에이전트가 답을 찾기까지 남긴 전체 탐색 로그로, 단순히 답변 하나가 아니라 1턴에서 (무슨생각→어떤도구→관찰)을 바탕으로 2턴에서 어떻게 (무슨생각→어떤도구→관찰)했는지를 포함합니다. 요게 중요한 포인트인데 답만 잘 내는게 아니라 적은 프레임으로 효율적으로 찾아가는 과정자체를 핵심으로 보기 때문입니다.

그럼 이제 기존의 식(1) 에서 정답 Y만 예측하던 것에 방금말한 이 trajectory τ가 더 추가되어야 하겠죠?! 그럼 식(3)은 아래와 같습니다.

즉 비디오와 질문이 주어졌을때 모델은 어떤 탐색 trajectory τ를 만들지 & 그 결과 어떤 답 Y를 낼지 함께 결정해야 합니다. 이렇게 되면 어떤 과정을 통해 답에 도달하는지 까지를 포함하기 때문에 올바른 evidence-seeking trajectory를 만드는 에이전트가 됩니다. 그렇다면 위 식을 어떻게 풀수 있을까요?! 아래의 수식(4)처럼 chain rule로 조건부 확률을 분해합니다!

우항의 곱의 앞쪽을 1, 뒤쪽을 2 라고 한다면, 1에서는 비디오와 질문을 보고 어떤 탐색경로를 밟을지 결정합니다. 어디부터 볼지, 어떤 툴킷을 쓸지, 다음엔 어디로 이동할지와 같은 추론+탐색 과정을 모델링 합니다. 두번째로 이제 이 trajectory τ가 여러 스텝에서 얻은 관찰 증거를 통해 쌓였다면 이걸 바탕으로 최종 답 Y를 생성합니다. 즉 이미 정리된 evidence trajectory를 바탕으로 답을 내는 것이죠! 이렇게 분해를 해서 진행하는 것으로 저자들은 단순히 정답만 출력하는 모델이 아니라 정답에 필요한 증거를 효율적으로 찾아가는 정책(policy)설계 자쳬가 핵심이라는 점을 강조합니다!

2. Toolkit Design

앞서 말한 툴킷 3개를 살펴보겠습니다. 이 툴킷 3개는 coarse-to-fine 탐색을 할수 있도록 계층적으로 구성되어 있습니다. VideoSeek은 긴 비디오를 이해할때 비디오 전부를 세밀하게 보지 않고 3가지 도구를 사용해서 먼저 넓게 보고 그 다음 후보 구간을 추리고 마지막에 진짜 중요한 부분만 자세히 봅니다.

먼저 <overview>는 스토리라인이나 핵심 등장인물, 장소 와 같은 비디오의 초기 지도를 그리는 단계로 전역적인 맥락을 담당합니다. 이 툴은 비디오의 전체 타임라인에서 일정한 개수의 프레임을 샘플링 하고 간단한 설명을 생성합니다. 디테일을 잡으려는것이 아니라 이 비디오가 대략적으로 어떤 흐름인지를 빨리 파악하기 위한 도구입니다. 따라서 주로 시작할때 탐색을 위한 promising region을 잡는 역할을 한다고 합니다.

다음으로 <skim>은 이 3도구중 가장 중요한 도구입니다. 대부분 롱비디오의 문제에서 overview로 후보가 될만한 구간을 찾았다 하더라도 바로 frame-by-frame 보기엔 그 구간은 여전히 길기 때문입니다. 따라서 이때 skim을 사용하는 건데 overview로 찾은 구간에 대해 몇개의 프레임을 유니폼샘플링 하고 현재 overview+누적 observation로 부터 나온 쿼리와 관련 있는 프레임을 강조 합니다. 즉, skim의 핵심은 후보 구간 내부를 대충 훑어보면서 진짜 중요한 구간을 더 좁히는 것 입니다.

마지막으로 <focus>로 이 툴은 말 그대로 마지막 확대 탐색 도구입니다. 논문에서는 이 도구를 짧은 비디오 클립, 더 높은 frame rate, 1FPS, skim+누적 observation으로 부터 나온 쿼리와 함께 사용한다고 합니다. 이 단계는 앞서 대충 이 근처에 답이 있다 라고 한 결과를 기반으로 이 짧은 구간에서 진짜 답의 증거를 확인하자! 가 목적입니다.

이때 overview에서 바로 focus로 가지 않는 이유는 오버뷰 툴은 너무 거친데 이때 바로 구간을 좁혀 들어가면 잘못된 구간을 보거나 맥락을 놓치거나 하게 되고, 이러면 여러번 구간을 헛짚게 될수 있기 때문에 skim을 사용하는 것입니다.

이 과정 논문에서 설명하는 대로 말해보자면 서로다른 temporal granularity의 도구(3개)를 조합해서 전체 비디오에서 정답에 핵심이 되는 클립까지 탐색공간을 점진적으로 줄여가는 구조라고 설명합니다.

3. Agentic Workflow of VideoSeek

앞서 설명한 툴킷들을 바탕으로 에이전틱 워크플로우로 동작과정을 살펴보겠습니다.

위의 알고리즘1을 살펴보면 VideoSeek가 think–act–observe 루프를 실제로 어떻게 돌리는지를 직관적으로 확인할 수있습니다. 이 알고리즘은 입력으로 질문과 비디오를 받고 → 현재까지의 trajectory를 읽은 뒤 → 다음 생각과 행동을 정하고 → 툴을 호출해 observation을 얻고 → 그걸 trajectory에다가 계속 누적하다가(4~11행) → 증거가 충분하면(6~8행) 답을 내는 것으로 진행됩니다. 이때 각 턴 t에서 thinking모델은 이전의 trajectory τ(전단계의 모든 thought, action, observation 포함)를 읽고 추론 결과z_t와 구쳬적인 툴킷 계획a_t를 함꼐 출력합니다. 만약 최대 턴 수 N안에서 답이 생성되지 않을 경우에는 trajectory 에 direct-answer instruction I_answer를 추가하고 모델을 한번 더 호출해서 최종 답변 Y를 생성합니다.

이 과정을 think–act–observe 로 나누어서 보자면, 먼저 Think는 현재까지의 trajectory를 보고 어떤 observation이 모였는지, 무엇이 불확실한지, 지금답해도 되는지 같은지 를 판단합니다. 단순 요약이 아닌 현재의 상태를 평가하고, 뭐가 부족한지 파악하고, 다음 행동을 게획합니다. 다음으로 Act는 Think에서 내린 판단을 실제 행동으로 바꾸는 단계로 단순히 tool 하나를 고른다 가 아니라 어떤 도구를 어떤 시간에 쓸지, 어떤 쿼리로 확인할지 까지 함께 정합니다. 마지막으로 Observe로 act로 행한 도구가 실제 evidence를 반환하고 이걸 Think단계에 참고할수 있도록 trajectory에 누적합니다.

결과적으로 이 구조는 trajectory를 기반으로 한 long-horizon decision making으로 dense-parsing하는 기존의 베이스라인들과 비교해서 좋은 trajectory를 만들어서 훨씬 더 적은 프레임만 사용하여 더 좋은 성능을 보인다고 합니다.


Experiment

총 4가지 벤치마크에서 실험을 진행했습니다.

  • LongVideoBench
  • Video-MME
  • LVBench
  • Video-Holmes

1. Long-form benchmark

Table 1은 LVBench, Video-MME, LongVideoBench에서의 실험결과 입니다. 위쪽 행은 LMM모델들이고 아래쪽 행은 Video Agentic 모델들로 구성되어 있습니다. 이 벤치마크들 전반적으로 VideoSeek가 훨씬 더 적은 프레임을 사용하면서도 베이스로 잡은 GPT-5보다 일관되게 성능이 향상 되는것을 획인할 수 있습니다. 또한 추가적으로 자막이 있으면 더 적은 프레임을 보고서도 더 잘 맞추는걸 확인할 수 있는데, 저자들은 자막이 단순한 보조정보가 아니라 비디오의 논리 흐름을 텍스트로 드러내 주기떄문에을 논리 흐름을 찾는 강한 힌트로 작용해서 흐름을 더 빠르게 이해하고 불필요한 시각 탐색을 줄일수 있게 된 것이라 해석합니다.

2. Complex reasoning benchmark

Table 2는 Video-Holmes에서의 실험결과 입니다. Video-Holmes라는 벤치마크는 단순 장면 묘사가 아닌 비디오 전반에 걸쳐 여러 단서를 모아야 하는 복잡한 추론형 벤치마크라고 합니다. 이 실험으로는 비디오 전반에 걸쳐 길게 보고 그 단서들을 연결하는 능력을 보는 복잡한 추론 능력을 확인할 수 있습니다 실험 결과 VideoSeek는 평균 42.7 프레임만 사용하면서도 47.3%의 제일 높은 정확도(마지막열)를 보이는 것을 확인할 수 있습니다.

3. Empirical Analysis

아래의 실험들은 모두 LVBench의 자막없는 버전으로 실험을 진행한 결과입니다.

[Effect of Reasoning Capability]

이 실험은 결국 추론 모델 자체가 좋아야 한다를 결과를 보이는 실험입니다. 프레임워크가 좋으면 아무 모델이나 붙여도 되나? 라는 질문에 대해 답이 될수 있는데,사실 저는 이 부분에서 너무 추론 모델의 성능에 의존하게 되는게 좀 아쉬웠습니다. 트레젝토리나 사고과정(policy)를 잘 구성하면 작은 LLM으로도 좋은 성능을 끌어낼수 있지 않을까?가 최근에 비디오 연구를 보며 가졌던 생각인데, 결국 이 프레임워크도 큰 reasoning model이 받쳐줘야 잘 도는 거구나 하고.. 쩝 ..

[Effect of Tool Configurations]

각 툴을 하나씩 제거해본 실험 결과로, <overview>를 제거하면 가장 크게 13.3이 떨어지고, <skim>을 제외하면 6.0이 떨어지고, <focus>를 제거하면 가장 작은 4.7이 떨어지는것을 볼수 있습니다. 이 결과로 overview 툴이 가장 중요한 것을 볼 수 있는데 비디오의 전반적인 맥락의 흐름을 파악하는 툴킷이기 때문입니다.

[참고.실제 동작 과정]

[참고.Token Consumption and Runtime]

VideoSeek는 프레임 수와 토큰 수는 줄이지만 think–act–observe를 여러 턴 반복하면서 툴 호출을 하기때문에 runtime은 오히려 더 길 수 있습니다.


읽어주셔서 감사합니다 🙂

Author: 황 찬미

6 thoughts on “[CVPR 2026] VideoSeek: Long-Horizon Video Agent with Tool-Guided Seeking

  1. 안녕하세요 찬미님 좋은 리뷰 감사합니다.
    읽으면서 overview-skim-focus하는게 사람의 행동방식과 비슷하다는 생각이 들었습니다.

    해당 방법이 적은 프레임으로도 다른 방법론을 이기는게 더 깊고 자세한 추론과정이 있기 때문 같은데요.
    그럼 아무래도 think-act-observe하는 과정을 반복하다보니 추론시간이 오래 걸릴것 같습니다.
    VideoSeek가 다른 방법과 비교해서 시간적인 부분은 어떤지 궁금합니다.
    감사합니다.

    1. 안녕하세요 정우님 해당부분이 메인 실험 테이블에는 시간 비교가 직접 들어가 있지는 않고, 어펜딕스 A.1에서 runtime을 따로 리포트 되어있습니다. 다른 방법들을 다 다루지는 않고 이 모델이 베이스로 삼은 GPT-5와의 리포트가 있으니 위 리뷰글 제일 하단에 참고로 추가해두겠습니다!

  2. 안녕하세요 찬미님, 좋은 리뷰 감사합니다.
    1. overview에서 ‘전체 타임라인에서 일정한 개수의 프레임을 샘플링한다’고 하셨는데, 디테일하게 어떤 방식으로 샘플링되는지 궁금합니다! 전반적인 흐름을 잡으려면 어떤 샘플링 방법을 사용하느냐도 중요해보여서 질문드립니다.
    2. 서로 다른 temporal granularity를 보는 탐색 방법으로 이해했는데, spatial granularity까지 확인하지 않는다는 게 아쉬운 부분인 것 같습니다. (너무 deep할 수 있으나) 프레임 내에서도 정답을 찾기 위해 필요한 영역이 coarse할수도 fine할 수도 있을 것으로 생각하는데 논문에서 그러한 요소를 고려한 적이 있는지, 또는 이와 관련한 찬미님의 생각이 궁금합니다!

    1. 안녕하세요 재윤님 댓글 감사합니다.
      1. overview에서는 16a 프레임을 유니폼 샘플링합니다. 이때 LVBench인 경우 a=4이고(총 64프레임), 나머지 3개의 벤치마크는 a=2(총 32프레)로 설정해두었다고 합니다.
      2. 그 부분에 대해 저도 공감합니다. 이 논문은 기본적으로 어디를 볼지보다는 언제 볼지같은 temporal탐색에 더 초점을 둔 방법이라서 프레임 내부의 작은 영역이나 local적인 단서를 별도로 탐색하는 구조는 직접적으로 다루지 않습니다. 그래서 재윤님이 말씀해주신것 처럼 spatial하게 더 세밀한 evidence seeking까지 가려면 추가 확장이 필요하다고 생각 됩니다!

  3. 안녕하세요 찬미님 좋은 리뷰 감사합니다.
    Table 1을 보면 적은 프레임으로도 좋은 성능을 보여주었지만 자막이 추가되었을때 훨씬 큰 성능 향상이 일어났는데, 이 결과를 보았을때 프레임 보다는 텍스트의 역할이 크게 작용한다고 볼 수 있을 것 같습니다. 이때 자막 추출은 어떤 방식을 사용했나요? 그냥 데이터 셋에 있는 걸 가져왔는지 아니면 캡션 모델을 사용해서 생성을 한 건지 궁금합니다.
    그리고 w/sub를 통해 성능이 크게 향상된 것을 저자는 어떻게 해석하고 있는지도 궁금합니다.
    감사합니다.

    1. 안녕하세요 의철님 댓글 감사합니다
      1. 자막 추출은 어떤 방식?
      – 자막 활용 자체는 논문에 있는데 자막을 어떤식으로 추출했는지까지는 본문에도 어펜딕스에도 설명이 없네요..!
      2. w/sub에서의 성능향상 해석
      – 저자들은 자막이 있을대 성능이 크게 좋아지는 이유를 자막이 단순한 보조정보가 아니라 비디오의 논리 흐름을 텍스트로 드러내주기 때문에을 논리 흐름을 찾는 강한 힌트로 작용했기 떄문이라고 합니다. 자막이 있으면 에이전트가 장면간의 흐름과 답이 나올만한 구간을 더 빨리 파악할수 있게 되고 그만큼 불필요한 시각탐색을 줄이면서도 더 적은 프레임으로 더 잘 맞출수 있게 된다고 설명합니다!

Leave a Reply