DeepSeek OCR
(github.com/deepseek-ai)Resumo em uma linha
Propõe e valida uma compressão óptica de contexto que converte documentos/registros de conversa em imagens (tokens visuais) para reduzir bastante o contexto do LLM (≈7–20×) e depois restaurá-los com precisão em texto (OCR). Combina um novo codificador visual (DeepEncoder) com um decodificador MoE de 3B e mostra desempenho de parsing de documentos em nível SOTA mesmo com poucos tokens visuais.
Definição do problema
• LLMs têm custo quadrático crescente à medida que o comprimento aumenta.
• Se o texto de um documento for renderizado como imagem, o número de tokens visuais fica muito menor que o de tokens de texto → se a restauração imagem→texto funcionar bem, é possível obter compressão altamente eficiente.
• OCR é um bom elemento experimental porque permite mapeamento natural de compressão/restauração entre visual↔texto e avaliação quantitativa.
Visão geral do método
Arquitetura: DeepEncoder (codificador) + DeepSeek-3B-MoE-A570M (decodificador)
• DeepEncoder (principal)
• Composto por duas etapas:
1. bloco de percepção visual com atenção em janela (família SAM-base, ~80M) → baixa memória ativa mesmo em alta resolução
2. após um compressor convolucional de 16× que reduz fortemente o número de tokens,
3. bloco de conhecimento visual com atenção global (CLIP-large, removido o primeiro Patch embedding)
• Suporte a múltiplas resoluções (modos): Tiny (64 tokens, 512²), Small (100, 640²), Base (256, 1024²), Large (400,1280²) +
Gundam (n blocos de 640² + visão global de 1024² → tokens = n×100+256),
Gundam-M (blocos de 1024² + global de 1280²)
• Conceito de tokens válidos (valid): exclui espaços em branco gerados por padding e contabiliza apenas os tokens efetivos (definido por fórmula).
• Decodificador MoE: usa DeepSeek-3B-MoE (12 camadas) para restaurar o texto original a partir dos tokens visuais comprimidos produzidos pelo codificador.
Motor de dados & treinamento
• OCR 1.0 (OCR tradicional):
• 30 milhões de páginas de PDF da internet (cerca de 100 idiomas):
• Coarse: extração com fitz (para treinamento de reconhecimento óptico de texto)
• Fine: 2 milhões de páginas em chinês e 2 milhões em inglês com rotulagem refinada de layout/OCR de alta qualidade (caixas + texto intercalado), além de 3 milhões de páginas de documentos Word
• OCR de cenas naturais: 10 milhões de amostras em chinês e 10 milhões em inglês (rótulos PaddleOCR)
• OCR 2.0 (parsing de imagens artificiais complexas):
• Gráficos (pyecharts/matplotlib): 10 milhões de imagens → rotuladas como tabelas HTML
• Fórmulas químicas: 5 milhões renderizadas com RDKit a partir de SMILES do PubChem
• Geometria plana: geração de dados no estilo Slow Perception (dicionário de segmentos de reta etc.)
• Visão geral: mistura de 100 milhões de amostras LAION para pré-treinamento do codificador
• Infraestrutura de treinamento: 20 nós (cada um com 8×A100-40G), paralelismo de pipeline em 4 estágios (codificador 2, decodificador 2), DP=40, batch global 640.
• Somente texto: 90B tok/dia, multimodal: 70B tok/dia
• Geração de dados em produção: com 20 nós, é possível gerar 33 milhões de páginas por dia
Resultados experimentais
-
Estudo de compressão óptica de contexto (Compression) — benchmark Fox (100 páginas em inglês, 600–1300 tokens)
• Com base no Small (100 tokens visuais), precisão & taxa de compressão (tokens de texto/tokens visuais):
• 600–700: 98.5%, 6.7×
• 700–800: 97.3%, 7.5×
• 800–900: 96.8%, 8.5×
• 900–1000: 96.8%, 9.7×
• 1000–1100: 91.5%, 10.6×
• 1100–1200: 89.8%, 11.3×
• 1200–1300: 87.1%, 12.6ו Resumo: em compressão de 9–10×, precisão de 96%+; em 10–12×, ≈90%; perto de 20×, ≈60%.
→ Em torno de 10×, aproxima-se de um regime quase sem perdas; acima disso, há degradação gradual devido à complexidade do layout e ao blur de baixa resolução. -
Parsing de documentos em cenário real (OmniDocBench) — distância de edição (quanto menor, melhor)
• Com apenas 100 tokens (640²), supera o GOT-OCR2.0 (256 tokens)
• Com 400 tokens (1280²), fica no mesmo nível do SOTA mais recente
• No modo Gundam (<800 tokens), supera o MinerU-2.0 (≈6.790 tokens)
→ Eficiência de tokens extremamente alta (desempenho equivalente/superior com menos tokens visuais). -
Resultados qualitativos (funções)
• Deep parsing:
• gráficos → tabelas HTML,
• fórmulas químicas → SMILES,
• figuras geométricas → estrutura de dicionário (segmentos, coordenadas, tipos etc.)
• Também permite perguntas e respostas básicas sobre imagens naturais
• Multilíngue: reconhecimento de PDFs em cerca de 100 idiomas (saída com ou sem layout controlada por prompt)
Significado
• Demonstra empiricamente que a compressão via tokens visuais é uma solução promissora para o problema de custo de contexto ultralongo em LLMs.
• Propõe uma estratégia de decaimento de memória (memory decay) em que conversas/contexto recentes ficam em alta resolução, enquanto históricos antigos são gradualmente reduzidos (maior taxa de compressão) → uma alocação de recursos parecida com a curva humana do esquecimento.
• Otimização de orçamento de tokens: fornece diretrizes da quantidade de tokens necessária por tipo de tarefa/documento (para textos ultra densos, como jornais, recomenda os modos Gundam/M).
Limitações & próximos desafios
• Atualmente está mais próximo de uma PoC baseada em OCR, e a análise de perdas de um pipeline verdadeiramente digital↔óptico↔digital ainda exige mais pesquisa.
• Melhorar as causas da queda brusca de desempenho acima de 10× (layouts complexos, blur de baixa resolução) é uma tarefa em aberto.
• Há questões de compatibilidade entre formato e benchmark (ex.: no Fox, diferenças de formato podem subestimar o desempenho real).
Resumo dos pontos-chave
• DeepEncoder: atenção em janela (baixa ativação) → compressão conv 16× → atenção global (CLIP)
• Múltiplas resoluções + blocos + visão global (Gundam) equilibram economia de memória/tokens e desempenho
• ≈10× de compressão com ~96% de precisão de restauração → pista para reduzir drasticamente o custo de contexto
• OmniDocBench: aproxima ou supera SOTA na faixa de 100–800 tokens visuais
• Aplicabilidade que abrange gráficos/química/geometria/multilíngue
3 comentários
Uau, impressionante kkk. Mas, no fim das contas, quando restaura não continua sendo exatamente aquele mesmo token? Não dá para economizar só os tokens no estado armazenado? Sou meio burro e não entendo direito buá buá. Alguém consegue explicar de um jeito fácil de entender?
A ideia da DeepSeek é muito boa.
DeepSeek OCR - modelo de OCR ultraeficiente por meio da compressão de contexto visual
Confira também a versão resumida pelo GN+ e os comentários do Hacker News.