Скриншоты вместо токенов: как срезать 70% костов на API LLM 💸

Агенты для написания кода жрут контекст, как не в себя. Каждое действие тянет за собой простыню из системного промпта, документации к тулзам и километров истории. Вы платите за каждый токен.

Но есть очевидная дыра в тарификации, на которой построен проект pxpipe.

Ребята сделали локальный прокси, который эксплуатирует простой факт: стоимость картинки в API зависит исключительно от ее разрешения в пикселях, а не от количества текста на ней. pxpipe перехватывает ваши /v1/messages, берет самый жирный и статичный текст (системный промпт, громоздкие логи, старую историю чата), верстает это в плотные PNG-страницы (1928×1928) и скармливает модели.

Скриншоты вместо токенов: как срезать 70% костов на API LLM 💸

Около 48 000 символов системного промпта в виде текста обойдутся вам примерно в 25 000 токенов. Эта же простыня, ужатая в один PNG-файл, будет стоить ~2 700 «визуальных» токенов.

То есть счет режется на 59–70%.


Но у подхода есть явные недостатки.

Зрение современных LLM — это не OCR (оптическое распознавание символов). Модель не переводит картинку посимвольно в текст. Изображение режется на патчи и уходит в эмбеддинги.

И если пиксели не позволяют однозначно считать символ, языковая модель заполняет пробел тем, что кажется ей логичным. Она просто галлюцинирует.

Поэтому:

1️⃣ Если в вашем плотном PNG-рендере зашит точный 12-значный hex-хеш или API-ключ — модель его с высокой вероятностью переврет. На тестах Opus 4.8 провалил 15 из 15 попыток вспомнить точный хеш с картинки. Fable 5 справился лучше (13/15), но для прода это все еще рулетка.

2️⃣ Свежий контекст, тексты, где мало букв на токен, и ваши прямые запросы pxpipe оставляет текстом. В картинки уходит только статика и старая история.

3️⃣ И именно поэтому в дефолте pxpipe работает только с Fable 5 и GPT 5.6. Тот же Opus 4.8 или GPT 5.5 читают такие картинки хуже, их нужно включать руками на свой страх и риск.

На реальных задачах (гоняли SWE-bench) агенты с прокси и без показывают идентичный результат. Почему? Потому что в кодинг-сессиях агент всегда перечитывает файлы перед редактированием. Если он напутал букву в старом логе — не страшно, актуальный код он все равно запросит текстом.


Для тотальной экономии вполне можно попробовать. 💸

Бесплатный
Комментарии
avatar
Здесь будут комментарии к публикации