Como Alimentar uma Rede Neural com uma Parede de Código como Imagem e Economizar 60% do Seu Orçamento de Tokens
Recentemente me peguei pensando que nos acostumamos a tratar as janelas de contexto de modelos de linguagem exclusivamente como texto. Você envia um arquivo de 50.000 caracteres e paga por 12–15.000 tokens de texto. Se você está rodando Claude Code ou Cursor por horas, o contexto é constantemente reabastecido com instruções de sistema, documentação de ferramentas e logs de execução de comandos. A conta da API no final do mês começa a se tornar uma surpresa desagradável.
Os desenvolvedores por trás do projeto pxpipe notaram uma falha interessante nos preços de modelos multimodais modernos. O custo de uma imagem em tokens depende apenas de sua resolução física em pixels, não de quanto texto é desenhado nela. Se você comprimir texto denso em uma captura de tela compacta com fonte pequena, um token de imagem pode conter aproximadamente 3–5 vezes mais caracteres que um token de texto padrão.

E foi assim que nasceu a ideia de um servidor proxy local—um que redesenha partes pesadas de uma requisição em páginas PNG monocromáticas em tempo real antes de enviá-las para a Anthropic ou OpenAI.
Como Esse Truque Funciona
Em formato de texto, dados densos como JSON, dumps de banco de dados ou código são consumidos a uma taxa de aproximadamente um caractere por token. Enquanto isso, modelos modernos como Claude 3.5 Sonnet, Claude Opus ou Gemini reconhecem imagens raster excellentemente através de seus módulos de visão integrados.
A ferramenta pxpipe intercepta requisições de API saindo da sua máquina e corta contextos desajeitados em imagens densas com uma fonte monoespaçada personalizada (por exemplo, Spleen 5×8 ou JetBrains Mono).

Em vez de 25.000 tokens de texto bruto para o prompt de sistema e descrições de ferramentas, o modelo recebe algumas imagens pesando apenas 2.700 tokens. Para uma janela de contexto de 1 milhão de tokens, isso aumenta a capacidade real de caracteres quase cinco vezes: de 4 milhões de caracteres para 19–21 milhões.
O Que é Comprimido e O Que Permanece como Texto
Se você converter o diálogo inteiro em uma imagem, o modelo inevitavelmente começará a cometer erros com identificadores precisos. Os desenvolvedores do pxpipe levaram isso em conta, então a compressão funciona seletivamente:
- Resultados grandes de execução de ferramentas. Se a saída de comandos do console, logs de testes ou um arquivo lido exceder 6.000 caracteres, eles são convertidos para PNG.
- Histórico antigo de mensagens. Etapas iniciais em uma sessão longa são empacotadas em páginas de arquivo.
- Prompts de sistema pesados e especificações de ferramentas MCP. Eles são armazenados em cache e enviados como uma folha gráfica.
As respostas mais recentes do usuário, respostas frescas do modelo e trechos curtos de texto são transmitidos em sua forma original de texto inalterada. O modelo vê edições recentes byte por byte.
Início Rápido e Conexão com Agentes
Você pode rodar o utilitário sem instalação permanente via npx. Ele inicia um servidor local na porta 47821:
npx pxpipe-proxy
Depois disso, basta apontar o Claude Code para o endereço local:
ANTHROPIC_BASE_URL=http://127.0.0.1:47821 claude
Se você não quer lidar com variáveis de ambiente, o repositório inclui um comando wrapper warp. Ele faz proxy de chamadas de rede para um processo específico:
pxpipe warp -- claude
# либо для других агентов
pxpipe warp -- cursor-agent
Junto com o proxy, um painel web inicia em http://127.0.0.1:47821/. Ele exibe dólares economizados em tempo real, o número de tokens cortados e uma prévia de cada página gerada junto com o texto original.
Exportar Sem Iniciar um Servidor
Se você não precisa de um proxy mas quer alimentar uma base de código massiva ou diff do git em uma interface web de chat com suporte a imagens, você pode usar o modo de exportação:
npx pxpipe-proxy export src/
cat logs.txt | npx pxpipe-proxy export --stdin
npx pxpipe-proxy export --git
O comando cria uma pasta com arquivos page-*.png prontos para uso, um arquivo breve de entidades-chave factsheet.txt e um prompt para colar na janela de diálogo.
O Outro Lado da Moeda e Limitações Honestas
A abordagem parece trapaça, mas tem limitações físicas inevitáveis. Os desenvolvedores os listam diretamente na documentação:
- Perda de precisão em hashes e IDs. O módulo de visão do LLM funciona através de patches de embedding, não OCR clássico com probabilidade por caractere. Quando não há pixels suficientes por letra, o modelo de linguagem simplesmente inventa um caractere plausível. Nos testes dos autores, correspondências exatas de strings hex de 12 caracteres no Fable 5 chegaram a 13 de 15, e em alguns modelos caíram para zero. Identificadores críticos são melhores mantidos em texto.
- Atraso de renderização. Antes de enviar uma requisição grande, o processador gasta várias centenas de milissegundos gerando buffers PNG na memória.
- O benefício depende da densidade do conteúdo. As economias são máximas em código, stack traces e estruturas JSON. Em texto conversacional regular em linguagem natural, o ganho é mínimo ou ausente inteiramente, porque em texto regular um token já contém cerca de 3–4 caracteres.
Para Quem o Projeto Será Útil Agora
Se você usa regularmente agentes de codificação autônomos, roda benchmarks ou alimenta o modelo com logs de build de vários megabytes, o pxpipe se paga desde o primeiro dia. Em sessões longas de debugging, a conta diária cai de $40 para $6–7 enquanto preserva a lógica geral da operação do agente.
Você pode testar a ferramenta em poucos minutos, e para o primeiro teste você nem precisa compilar nada do código-fonte. Todas as estatísticas de tokens são armazenadas ordenadamente pelo utilitário em um log local ~/.pxpipe/events.jsonl, então você pode facilmente verificar o benefício real nas suas tarefas com o utilitário pxpipe stats.
Projetos relacionados