CLI-фильтр обещает экономию 91,8% токенов — тред проверяет арифметику

Lowfat — маленький Rust-бинарник, который срезает лишнее из вывода команд перед тем, как тот попадёт к AI-агенту. Заявленная экономия 91,8% токенов вынесла проект на главную страницу — и тут же вызвала огонь критики.

Демо-GIF, Rust-бинарник и одно очень круглое число

Lowfat — небольшой, подключаемый CLI-фильтр (около 94% Rust по статистике репозитория), который стоит между вашей оболочкой и AI-агентом и обрезает лишний вывод до того, как тот сожжёт контекст. Он встраивается в Claude Code через .claude/settings.json, поставляется как плагин для OpenCode или запускается простым префиксом перед командой. Продающие тезисы скромные и в духе UNIX: «Маленький единственный бинарник», «Local-first — без телеметрии» и «Компонуемый — UNIX-style pipes… не магия».

lowfat обрезает вывод git diff для агента
lowfat обрезает вывод git diff для агента

Сама идея реальная и бесспорная: агенты по умолчанию используют самую широкую команду, а потом платят за каждый байт вывода. git diff или kubectl get -o yaml заливают контекстное окно форматированием, которое модели не нужно. Урежь сначала — платишь за сигнал, а не за boilerplate.

Цифра 91,8% несёт непосильную нагрузку

Число в заголовке вынесло пост на главную — и именно его тред отказался принимать на веру. Самое чёткое возражение пришло от разработчика, который разобрал, что именно измерялось:

«Экономии 91% токенов нет: в одном пользовательском случае было сокращено 91% output-токенов на сыром выводе CLI… Стоит применить закон Амдала, и такой целостной экономии 91% токенов быть не может — хотя именно это подразумевает заголовок.» — инженер, разбирающий заявление о бенчмарке

Вот и вся пропасть: 91,8% вывода одной команды в одном случае — это не 91,8% токенов сессии. Системный промпт, история диалога, reasoning-токены модели — ничего из этого не затрагивается.

Ещё более глубокое опасение было связано с качеством, а не с арифметикой. Обрезанный вывод может оказаться out-of-distribution для модели:

«LLM обучались на типичном «жирном» выводе, который везде есть в интернете, и вдруг получают слегка иной ответ — возможно, ни на что не похожий из виденного ранее. Правда ли это экономит токены в долгосрочной перспективе?» — комментатор, скептически оценивающий эффект фильтрации на рассуждения

А те, кто уже выпускал похожие инструменты, предупредили о типичном сценарии провала — агент начинает бороться с фильтром:

«Я пробовал rtx и lean-ctx, и эти инструменты в итоге скорее запутывают агента, чем помогают. Любая экономия несущественна, если агент решает обойти инструмент и делает ещё больше вызовов, чем без него.» — разработчик, попробовавший конкурирующие context-триммеры

Правильное решение — скорее выше по стеку, чем ниже

Самая острая критика была адресована не lowfat, а всей категории постфактум-фильтрации. Фильтрация после вызова всё равно оплачивает round-trip:

«Главная проблема — агенты по умолчанию используют самую широкую команду. kubectl get -o yaml, хотя jsonpath-запрос дал бы 1/50 токенов… Лучше научить агента задавать узкие вопросы с самого начала.» — комментатор, разрабатывающий harness'ы для агентов

Lowfat — действительно полезный маленький Unix-инструмент с вирусным заголовком, прикрученным снаружи. Инструмент заслуживает попасть на главную страницу; 91,8% заслуживает сноску, которую тред и потратил энергию на прикрепление. Настоящий урок тот, что скептики повторяют снова и снова: процент без harness'а, без объёма выборки и без целостного базового значения — это маркетинг, а не бенчмарк. «Сэкономил 91,8% токенов LLM» измеряло вывод одной команды, а не чей-либо счёт.

Получайте такие разборы каждый день

Главные истории Hacker News — на email, в Telegram или RSS.

Следующая новость · 6 из 25 Читать дальше
🚀Tech

Он собрал Hacker News, из которого вырезаны все новости про ИИ

Элайджа Поттер выкатил урезанную главную HN, где удалён весь контент про ИИ. Половина комментаторов сначала прочитала заголовок как анонс шрифта — «Sans», — и это само по себе говорит, насколько перенасыщенной стала лента.

★ 158 · 💬 83 · elijahpotter.dev · 4 мин