Pare de alimentar LLMs de visão com dez páginas: Dentro da recuperação adaptativa sem treinamento do ViSAR
Based on: ViSAR: Training-Free Adaptive-$k$ Retrieval for Visual Document Question Answering — Adrien Mialland, Marc Plantevit, Julien Gallois, Céline Robardet
Pergunte a um modelo de linguagem visual para localizar informações em um documento longo, e as arquiteturas padrão de recuperação de documentos podem fazer algo notavelmente desperdiçador. Elas pontuam cada captura de tela de página independentemente usando um codificador visual, classificam a lista e entregam um conjunto fixo das cinco ou dez melhores páginas para um pesado Modelo de Linguagem-Visão Grande (LVLM).
Se a consulta for simples, a evidência pode estar em uma única página, enquanto as páginas restantes recuperadas adicionam contexto visual irrelevante. O modelo ainda processa tabelas, cabeçalhos e layouts que podem não ajudar a responder à pergunta. Por outro lado, um orçamento rígido pode omitir evidências quando uma pergunta requer informações de várias páginas.
Este dilema decorre de uma escolha de design fundamental na recuperação visual de documentos moderna: seleção fixa de top-$k$. As abordagens existentes comumente recuperam o mesmo número de páginas, independentemente da complexidade da consulta, embora determinar quantas páginas uma determinada pergunta precisa tenha um efeito direto na latência e na qualidade da resposta.
Um artigo de pesquisa publicado em 2 de setembro de 2026, por Adrien Mialland, Marc Plantevit, Julien Gallois e Céline Robardet (INSA Lyon, CNRS, LIRIS, EPITA e Lowit), introduz uma alternativa elegante: ViSAR (Visual Semantic Activation Retrieval). O ViSAR determina dinamicamente o número de páginas a serem recuperadas no momento da inferência, sem treinar o codificador visual. Ao analisar interações já presentes dentro dos espaços de incorporação de interação tardia, o ViSAR reduziu a latência de ponta a ponta para perguntas e respostas em até 58,7% nos experimentos relatados, mantendo ou melhorando a precisão das respostas.

O Ponto Cego Dentro dos Codificadores de Interação Tardia
Para entender como o ViSAR funciona, observe primeiro como os recuperadores visuais de documentos operam.
A recuperação baseada em texto tradicional requer Reconhecimento Óptico de Caracteres (OCR) para converter pixels em strings de texto antes de incorporá-los. Esse processo pode perder conteúdo visual e layout específico do documento. Recuperadores visuais modernos sem OCR, incluindo ColPali e ColQwen2.5, representam uma captura de tela de uma página como um conjunto de incorporações visuais de patches em um espaço compartilhado. A consulta do usuário é representada de forma semelhante por múltiplas incorporações.
A relevância é calculada usando interação tardia, impulsionada pelo operador MaxSim introduzido pelo ColBERT:
$$S_{Q, P^p} = \sum_{i=1}^m \max_{j \in {1, \dots, n_p}} \langle q_i, v_j^p \rangle$$
Para cada incorporação de consulta $q_i$, o recuperador busca através das incorporações visuais de patches $v_j^p$ na página $p$, pega a maior similaridade e soma esses alinhamentos de pico.
A interação tardia permite correspondência granular entre consulta e página e codificação offline de páginas. No entanto, ela possui duas limitações estruturais:
- Avaliação independente de páginas: O recuperador produz pontuações de relevância para páginas de forma independente, sem explorar a estrutura semântica entre as páginas.
- Ponderação semântica uniforme: Cada incorporação de consulta e página contribui uniformemente para a pontuação padrão de interação tardia.
A recuperação de texto abordou questões relacionadas de ponderação usando estatísticas de frequência de tokens, estimativas de importância aprendidas ou representações esparsas. Mas essas abordagens dependem de estruturas discretas de tokens ou treinamento adicional e não se estendem diretamente a incorporações visuais.
Consequentemente, a interação tardia produz uma lista classificada de pontuações escalares. Abordagens anteriores de $k$ adaptativo dependeram de heurísticas de pontuação, como identificar a maior lacuna entre pontuações consecutivas ou agrupar distribuições de pontuação. O ViSAR, em vez disso, usa a estrutura semântica codificada nas representações de interação tardia.
Como o ViSAR Opera: Decodificando Ativações Semânticas
O ViSAR não altera os pesos do codificador subjacente. Em vez disso, ele preserva as interações multivetoriais que a interação tardia padrão colapsaria em uma pontuação escalar.
A arquitetura se divide em quatro etapas sequenciais: cálculo dos pesos de consulta para página, derivação da importância em nível de patch, construção de uma matriz de similaridade de página condicionada à consulta e minimização de uma função de custo de partição adaptativa.
Embeddings de Consulta e Página
│
▼
[1. Consulta-para-Página] ──► Pondera a semântica da consulta e as co-ativações da página
│
▼
[2. Página-para-Consulta] ──► Inverte o MaxSim e deriva pesos em nível de patch
│
▼
[3. Página-para-Página] ──► Combina patches visuais ponderados entre páginas (matriz N x N)
│
▼
[4. Adaptativo-k] ──► Avalia coerência e vazamento para escolher o k* ótimo
1. Ponderação da Interação Consulta-para-Página
A interação tardia padrão colapsa a interação entre o vetor de consulta $q_i$ e a página $p$ em uma soma imediatamente. O ViSAR mantém a matriz de ativação completa:
$$A_{p,i} = \max_{j} \langle q_i, v_j^p \rangle$$
Este valor representa com que força a semântica de consulta $i$ se manifesta em qualquer lugar da página $p$. O ViSAR normaliza essa ativação pela sua média nas páginas do documento ($\hat{A}_{p,i}$) e a escala pelo seu desvio padrão inter-páginas normalizado:
$$\tilde{A}{p,i} = \hat{A}{p,i} \cdot \hat{\sigma}_i$$
Um embedding de consulta com ativações semelhantes em várias páginas é desvalorizado, enquanto um com ativações mais fortes e espacialmente localizadas recebe mais ênfase.
A partir dessas ativações moduladas, o ViSAR computa dois pesos:
- Peso do embedding de consulta ($w_i$): Formula-se como $w_i = \log(N / (1 + a_i))$, onde $a_i = \sum_p \tilde{A}_{p,i}$. Isso penaliza o conteúdo semântico ubíquo e enfatiza ativações esparsas.
- Peso da página ($w_p$): Mede a co-ativação semântica. Páginas onde semânticas de consulta discriminativas se ativam juntas recebem maior importância.
2. Ponderação da Interação Página-para-Consulta
Em seguida, o ViSAR inverte a direção da busca. Em vez de perguntar apenas o quão bem uma página corresponde à consulta, ele avalia o quão relevante cada patch visual em uma página é para a consulta.
Para cada patch visual $v_j^p$, o ViSAR computa sua pontuação de relevância $r_j^p$ tomando o alinhamento máximo entre os vetores de consulta, modulado pelos pesos de token e página calculados na etapa um:
$$r_j^p = \max_i \left[ \langle v_j^p, q_i \rangle \cdot \tilde{A}_{p,i} \cdot \hat{w}_i \cdot \hat{w}_p \right]^2$$
Ele então centraliza e aplica um limiar à relevância:
$$w_j^p = \max(0, r_j^p - \text{mean}_{p,j}(r_j^p))$$
Este limiar produz patches inativos com peso zero. Algumas páginas podem tornar-se totalmente inativas, e essas páginas não precisam contribuir para o cálculo de similaridade página-para-página.
3. Matriz de Interação Página-para-Página
Com os patches ponderados em mãos, o ViSAR mede os relacionamentos entre páginas. Para uma página de origem $P^p$ e uma página de destino $P^{p'}$, ele computa o quão bem os patches ponderados na página $p$ correspondem aos patches ponderados na página $p'$:
$$S_j^{p \to p'} = \hat{w}j^p \cdot \max{j'} \left[ \langle v_j^p, v_{j'}^{p'} \rangle \cdot \hat{w}_{j'}^{p'} \right]$$
O ViSAR faz a média das $T=50$ melhores interações de patch e toma a raiz quadrada, resultando em uma pontuação de similaridade direcional:
$$\text{Sim}(p, p') = \sqrt{\frac{1}{T} \sum_{j \in \mathcal{T}} S_j^{p \to p'}}$$
Como os patches de origem buscam seus melhores equivalentes independentemente na página de destino, essa similaridade é direcional: $\text{Sim}(p, p') \neq \text{Sim}(p', p)$. Montar essas pontuações pareadas cria uma matriz de similaridade em nível de página $N \times N$ condicionada à consulta do usuário.
4. Adaptativo-k via Coerência e Vazamento
Para decidir onde cortar a recuperação, o ViSAR classifica as páginas usando sua pontuação de auto-similaridade $s_p = \text{Sim}(p, p)$.
Para cada corte candidato $k$, o documento é dividido em dois grupos: o conjunto candidato relevante $R_k$ contendo as $k$ melhores páginas, e o conjunto irrelevante $I_k$ contendo as páginas restantes.
Para cada página $p \in R_k$, o ViSAR avalia duas forças opostas:
- Coerência Interna ($c_k^p$): A similaridade média entre a página $p$ e as páginas no conjunto candidato recuperado $R_k$.
- Vazamento Externo ($l_k^p$): A similaridade média entre a página $p$ e as páginas descartadas em $I_k$.
A qualidade geral do tamanho do conjunto candidato $k$ é pontuada usando a função de custo $J(k)$:
$$J(k) = \sum_{p \in R_k} w_p^s \left( c_k^p - \gamma l_k^p \right)$$
Aqui, $\gamma$ é um parâmetro de penalidade de vazamento, definido como $10^5$ nos experimentos relatados. Encontrar a contagem ótima de páginas $k^\star$ requer avaliar no máximo $N$ conjuntos candidatos, em vez de avaliar exaustivamente $2^N$ subconjuntos possíveis. O método também avalia se o mínimo corresponde a uma transição abrupta na função de custo.
O Que os Dados Mostram: Conjuntos Mais Leves e Inferência Mais Rápida
Os autores avaliaram o ViSAR em uma GPU NVIDIA A6000 com 48 GB de memória em dois benchmarks de múltiplas páginas: MMLongBench e LongDocURL. Ambos os conjuntos de dados fornecem páginas de evidência-resposta para avaliar a classificação de páginas, bem como cenários de perguntas e respostas em documentos que exigem raciocínio textual e visual.
Eles testaram três codificadores de interação tardia visual — ColQwen2.5, ColPali e ColModernVBERT — juntamente com um recuperador de texto usando OCR Tesseract (ColBERTv2) e um recuperador visual de vetor único (VisRAG-Ret). A geração de respostas usou o Qwen2.5-VL-7B-Instruct, enquanto o Qwen2.5-14B-Instruct serviu como avaliador LLM-as-a-judge usando saída estruturada com poucos exemplos.
Em ambos os benchmarks, a evidência de verdade fundamental requer uma média de 1,9 páginas: a mediana é de uma página no MMLongBench e duas páginas no LongDocURL.
1. Eficiência de Recuperação e Compactação de Contexto
A Tabela 1 mostra como os métodos de recuperação adaptativa se comportam em relação ao Oracle, definido como a menor janela top-$k$ na classificação padrão de interação tardia que contém todas as páginas de evidência:
| Codificador | Método | Média $k^\star$ MMLongBench | Mediana MMLongBench | Média $k^\star$ LongDocURL | Mediana LongDocURL |
|---|---|---|---|---|---|
| ColQwen2.5 | Oracle (Late-Int.) | 8.3 | 2 | 10.7 | 3 |
| Score-Cluster | 18.6 | 8 | 36.6 | 20 | |
| Largest-Gap | 15.4 | 2 | 28.7 | 3 | |
| ViSAR (Nosso) | 4.7 | 3 | 7.9 | 5 | |
| ColPali | Oracle (Late-Int.) | 8.8 | 2 | 12.4 | 3 |
| Score-Cluster | 18.7 | 8 | 35.8 | 18 | |
| Largest-Gap | 16.2 | 3 | 24.7 | 2 | |
| ViSAR (Nosso) | 5.3 | 3 | 8.1 | 6 | |
| ColModernVBERT | Oracle (Late-Int.) | 10.5 | 2 | 13.0 | 3 |
| Score-Cluster | 23.0 | 12 | 47.4 | 44 | |
| Largest-Gap | 20.0 | 4 | 39.3 | 4 | |
| ViSAR (Nosso) | 7.5 | 4 | 13.5 | 11 |
O Oracle mostra que recuperar todas as páginas de evidência pode exigir uma janela muito maior do que o número de páginas de evidência sozinho sugeriria. Como a classificação subjacente de interação tardia pode colocar páginas irrelevantes à frente das páginas de evidência, incluir todas as evidências pode exigir a expansão da janela de recuperação.
Score-Cluster e Largest-Gap geralmente recuperam mais páginas do que o ViSAR. No MMLongBench com ColQwen2.5, o ViSAR recupera uma média de 4,7 páginas. Ele tem menor recall que o Largest-Gap (75,16% versus 81,12%), mas maior precisão (50,37% versus 45,13%), favorecendo um conjunto recuperado mais compacto.
2. Precisão de Perguntas e Respostas a jusante
Os resultados relatados mostram que a recuperação adaptativa pode melhorar a precisão das respostas enquanto usa um orçamento de entrada de no máximo cinco ou dez páginas.
| Método de Recuperação | MMLongBench Max-5 | MMLongBench Max-10 | LongDocURL Max-5 | LongDocURL Max-10 |
|---|---|---|---|---|
| Baselines Fixas Top-$k$ | ||||
| ColBERTv2 (OCR + Texto) | 24.51% | 24.70% | 47.18% | 47.70% |
| M3DocRAG (ColPali) | 34.86% | 35.08% | 59.31% | 58.71% |
| VisRAG-Ret (Vetor Único) | 34.48% | 35.69% | 57.29% | 58.02% |
| ColQwen2.5 (Fixo Top-$k$) | 35.04% | 35.69% | 59.79% | 59.27% |
| Recuperação Adaptativa (ColQwen2.5) | ||||
| Largest-Gap | 35.79% | 35.88% | 61.01% | 60.89% |
| Score-Cluster | 36.25% | 35.97% | 60.00% | 59.83% |
| ViSAR (Nosso) | 36.53% | 36.63% | 61.06% | 60.97% |
Em 60 configurações combinando três codificadores, cinco LVLMs, dois orçamentos de página e dois conjuntos de dados, o ViSAR melhorou a precisão em 24 casos e manteve a precisão nos 36 restantes. O artigo não relata diminuições estatisticamente significativas. Com ColQwen2.5 e ColPali, os resultados geralmente tendem para cima, com melhorias estatisticamente significativas no LongDocURL de acordo com o teste de McNemar ($p < 0.05$).
As maiores melhorias apareceram com LVLMs que os autores descrevem como mais sensíveis a contextos mais longos, consistente com o ViSAR reduzindo tanto as páginas recuperadas quanto as páginas irrelevantes.
3. O Dividendo de Latência
O gargalo prático no pipeline de documentos visuais avaliado é o tempo de geração do LVLM. A recuperação fixa top-$k$ sempre preenche o orçamento de entrada do LVLM, enquanto o ViSAR ajusta o número de páginas e usa o orçamento completo apenas quando necessário.
O ViSAR introduz sobrecarga de recuperação do ponderamento de patches e cálculos de similaridade entre páginas. Mas o artigo encontra que essa sobrecarga contribui apenas marginalmente para o custo total para a maioria dos tamanhos de documento avaliados, enquanto a latência de geração reduzida domina o resultado de ponta a ponta.
Latência MMLongBench no Orçamento Max-10:
Fixo top-10: [Recuperação][================ Geração ================]
ViSAR: [Etapa de recuperação maior][====== Geração reduzida ======]
Redução de ponta a ponta: até 58.7%
A redução de latência de ponta a ponta relatada atinge 58,7% no MMLongBench e 38,5% no LongDocURL em um orçamento LVLM Max-10. A sobrecarga de recuperação do ViSAR cresce com o tamanho do documento e se torna perceptível para o maior documento do MMLongBench, que contém 468 páginas. O material suplementar propõe aproximações de matriz de similaridade para tais casos.

Geometria de Matrizes: Quando a Esparsidade Sinaliza Respostas Corretas
Uma das observações mais convincentes do artigo reside na estrutura da matriz de similaridade entre páginas condicionada à consulta $\text{Sim}(p, p')$.
Os autores ilustram dois casos contrastantes:
- Matrizes esparsas: Quando as semânticas relevantes à consulta estão localizadas, relativamente poucas páginas compartilham o conteúdo relevante. A matriz é esparsa e a função de custo $J(k)$ apresenta um mínimo mais acentuado, suportando um limite de recuperação mais confiável.
- Matrizes densas: Quando as semânticas relevantes à consulta estão distribuídas por mais páginas, a matriz torna-se mais densa. O mínimo correspondente em $J(k)$ é mais suave, tornando a decisão de parada menos confiável.
Em todos os codificadores testados no MMLongBench, e com uma tendência semelhante relatada para o LongDocURL, maior esparsidade da matriz de similaridade correlaciona-se com maior precisão nas respostas.
Esta é uma direção de pesquisa útil, e não um sistema de confiança concluído. Os autores sugerem que a estrutura da matriz poderia tornar-se um sinal de feedback sem rótulos para estratégias de recuperação futuras, incluindo refinamento iterativo de consultas ou seleção de evidências, sem a necessidade de um modelo adicional ou treinamento.
Engenharia e Limitações: Os Limites do Poda Sem Treinamento
ViSAR é uma contribuição algorítmica com várias restrições práticas que valem a pena ter em mente:
- O cálculo página a página cresce com o tamanho do documento: ViSAR constrói uma matriz de similaridade em nível de página e avalia as interações entre páginas em blocos, em vez de como um tensor denso. Sua otimização de páginas inativas evita cálculos desnecessários, mas o artigo relata um aumento na sobrecarga de recuperação à medida que os documentos ficam maiores. A sobrecarga é mais perceptível no exemplo de 468 páginas do MMLongBench.
- A qualidade do codificador estabelece um limite: ViSAR depende da estrutura semântica já aprendida pelo codificador. ColQwen2.5 e ColPali mostraram resultados mais fortes do que ColModernVBERT. O artigo atribui os ganhos mais modestos do ColModernVBERT, em parte, ao seu tamanho menor — 250M de parâmetros versus 3B — e à dificuldade resultante em separar a semântica em conjuntos de recuperação compactos.
- Instabilidade de codificação foi observada: ColModernVBERT apresentou instabilidade numérica durante a codificação para 7,31% das consultas LongDocURL. Os autores relatam que o problema ocorreu independentemente do ViSAR, e essas amostras foram excluídas da avaliação.
- ViSAR favorece a recuperação compacta: À medida que o corte Oracle cresce, ViSAR recupera menos páginas em média, limitando o contexto irrelevante, mas também trocando recall por precisão em alguns cenários. Largest-Gap atinge a melhor pontuação F1 agregada no LongDocURL, enquanto ViSAR oferece um comportamento adaptativo mais consistente em diferentes valores de $k_{\text{Oracle}}$.
Por que isso importa para pipelines de documentos
Para equipes que estudam resposta a perguntas em documentos, o ViSAR oferece uma alternativa ao tratamento da profundidade de recuperação como uma constante permanente.
Sua descoberta central é que os recuperadores visuais multi-vetores contêm mais informações do que uma pontuação escalar final de interação tardia revela. O ViSAR usa ativações de consulta para página, pesos em nível de patch e estrutura semântica de página para página para escolher um conjunto de recuperação adaptado à consulta.
Os resultados relatados no artigo apontam para três implicações concretas:
- Conjuntos de páginas mais compactos: O ViSAR recupera, em média, menos páginas do que os métodos Oracle, Largest-Gap e Score-Cluster nas comparações relatadas.
- Menor latência ponta a ponta: Com um orçamento Max-10, ele reduz a latência ponta a ponta do RAG em até 58,7% no MMLongBench e 38,5% no LongDocURL.
- Um sinal para pesquisas futuras sobre qualidade de recuperação: A relação entre a esparsidade da matriz de similaridade e a precisão das respostas sugere um potencial sinal de feedback para métodos posteriores de recuperação e seleção de evidências.
Se uma pilha de documentos visuais já utiliza um codificador de interação tardia como ColPali ou ColQwen2.5, o ViSAR fornece uma maneira sem treinamento para investigar a recuperação adaptativa-$k$. Seus resultados sugerem que a geometria dos embeddings pode ajudar a decidir quando um pipeline de documentos recuperou páginas suficientes — sem assumir que cada consulta merece a mesma janela de contexto fixa.