
Всем привет! Если вы работаете с LLM — ChatGPT, Claude, DeepSeek, Qwen или другими — через API, то знаете: токены стоят денег. Контекстное окно у любой модели не резиновое, и чем больше кода вы отправляете, тем дороже каждый запрос. Новые модели с огромными контекстными окнами выходят каждый месяц и дешевеют, но зачем платить за то, что можно не отправлять?
В этой статье я расскажу про TokenCompress.com — прокси-сервис, который сжимает код перед отправкой в LLM. В среднем он убирает ~78% токенов, при этом качество ответов не падает, а в ряде случаев даже растёт — потому что модель получает только релевантный контекст, без шума.
Как это работает
TokenCompress — это не примитивное удаление комментариев или минификация. Внутри двухэтапный пайплайн:
Этап 1 (первоначальная фильтрация): Код разбирается через Tree-Sitter AST-парсер на структурные блоки (функции, классы, методы). Каждый блок ранжируется — насколько этот фрагмент кода снижает неопределённость модели относительно вашего конкретного вопроса. Нерелевантные блоки отсекаются.
Этап 2 (дополнительная фильтрация): Внутри отобранных блоков происходит построчная оптимизация по принципу задачи о рюкзаке — убираются избыточные строки (шаблонный код, неиспользуемые импорты, тестовые фикстуры), при этом логика и сигнатуры функций сохраняются.
Ключевой момент: сжатие контекстно-зависимое. Один и тот же файл сжимается по-разному в зависимости от вашего вопроса. Если вы спрашиваете про функцию post_groups — именно она и её зависимости останутся, а остальное уйдёт. Сжатие срабатывает, если код обернут в тройные кавычки (```) и превышает 500 токенов.
Поддержка языков
Поддерживается 24 языка: Python, Rust, JavaScript, TypeScript, Go, Java, C#, C++, C, PHP, Kotlin, Dart, Swift, Scala, Ruby, Haskell, Erlang, Julia, Bash, HTML, CSS, Markdown, SQL, JSON. Для неподдерживаемых языков используется построчное разбиение.
Начинаем за 3 шага
Шаг 1. Регистрируемся
Заходим на https://tokencompress.com и входим через аккаунт GitHub, Google или Apple.

Шаг 2. Создаем API-ключ
Переходим в админку на страницу API-ключей и создаем новый ключ. Сохраните его — повторно он не отобразится, придётся создавать заново.

Шаг 3. Компонуем ключи
Это главный шаг. Вам нужно объединить два ключа в один — ключ TokenCompress и ключ вашего LLM-провайдера, разделённые двойным двоеточием :: например:
api_key = "ak_live_ВАШ_КЛЮЧ_TC::sk-ВАШ_КЛЮЧ_ПРОВАЙДЕРА"
Также замените base_url на адрес TokenCompress с указанием одного из поддерживаемого провайдера:
Name | provider | base_url | Auth | Format |
OpenAI | openai | Bearer | openai | |
Anthropic | anthropic | Bearer | anthropic | |
DeepSeek | deepseek | Bearer | openai | |
Google AI (Gemini) | Bearer | openai | ||
LM Studio | lm-studio | — | openai | |
Mistral AI | mistral | Bearer | openai | |
Qwen (Alibaba) | qwen | Bearer | openai | |
Ollama (Local) | ollama | — | openai | |
Ollama (Cloud) | ollama-cloud | Bearer | openai | |
OpenRouter | openrouter | Bearer | openrouter | |
Kilo AI | kilo | Bearer | openai |
Вот и всё. Ваш код автоматически проходит через пайплайн сжатия, а затем отправляется в LLM-провайдер. Ответ приходит как обычно — включая streaming. Также имеется полная документация.
Тестируем на реальном примере
Давайте проверим сжатие на реальном файле из опенсорсного проекта Vaultwarden. Возьмём organizations.rs — увесистый файл на Rust.
Скачиваем его:
curl -o organizations.rs https://raw.githubusercontent.com/dani-garcia/vaultwarden/refs/heads/main/src/api/core/organizations.rs
Устанавливаем зависимости. Если у вас Python новее 3.12, langchain может не работать, поэтому скачиваем нужную версию Python и создаем виртуальное окружение:
python3.12 -m venv venv venv\Scripts\activate # Windows # source venv/bin/activate # Linux/macOS pip install langchain-openai
Создаём main.py:
from langchain_openai import ChatOpenAI llm = ChatOpenAI( base_url="https://tokencompress.com/v1/anthropic", api_key="ak_live_ВАШ_КЛЮЧ::sk-ant-ВАШ_КЛЮЧ_ANTHROPIC", model="claude-opus-4-5", ) # читаем ВЕСЬ файл with open("organizations.rs", "r", encoding="utf-8") as f: org_rs = f.read() # формируем промпт с содержимым файла prompt = f"""Вот содержимое файла organizations.rs: ```rust {org_rs} ``` Вопрос: what does post_groups do if org_groups_enable() returns false?""" response = llm.invoke(prompt) print(response.content)
Запускаем скрипт:
python main.py

Если мы выполним два запроса: один напрямую, другой с использованием TokenCompress, то мы сможем увидеть точную статистику токенов. Зеленым выделен результат сжатия, красным — без сжатия. Результат — токены сократились почти на 70%. Модель получила только релевантные фрагменты кода и корректно ответила на вопрос. Ответ сжатого варианта также короче и точнее.
За 19 тестовых запросов суммарная экономия составила свыше 70 000 токенов.

Бенчмарки
Мы прогнали TokenCompress на 600 опенсорсных файлах на 22 языках программирования. Результаты:
Метрика | Значение |
Исходных токенов (суммарно) | 900 556 |
После сжатия | 170 616 |
Экономия токенов | 80.5% |
Средняя задержка на файл | 222 мс |
Максимальная задержка | 431 мс |
Деградация качества ответов | Не обнаружена |
Распределение степени сжатия: от 60% (p10) до 97% (p90), медиана — 82%.
Почему точность ответов может расти
Звучит контринтуитивно, но вот логика: когда вы отправляете в LLM огромный файл целиком, модель вынуждена «пробираться» через тысячи строк нерелевантного кода. Это создаёт шум, и модель может потерять фокус — особенно в середине длинного контекста (так называемая проблема «lost in the middle»).
TokenCompress отправляет модели только те фрагменты, которые действительно нужны для ответа на ваш вопрос. Меньше шума — точнее ответ.
Сколько можно сэкономить?
Посчитаем при консервативной оценке 60% сжатия (реально обычно выше):
Модель | Экономия input-токенов в месяц* | Стоимость подписки | Чистая выгода |
Claude Opus | ~$1 125 | $5–10 | ~$1 115 |
GPT-4o | ~$187 | $5–10 | ~$177 |
DeepSeek V3 | ~$20 | $5 | ~$15 |
*при объеме ~25 000 запросов/месяц
Даже на самых дешёвых моделях подписка окупается.
Тарифы
План | Стоимость | Запросов в месяц |
Starter | $5 | 25 000 |
Pro | $10 | 60 000 |
Team | $20/место | 125 000/место |
Enterprise | $199 | 1 500 000 |
Agentic | $299 | 3 000 000 |
Есть бесплатный 3-дневный триал Pro-плана (1 500 запросов) без привязки карты.
А что с безопасностью?
Закономерный вопрос: «Мой код проходит через ваш сервер?»
Да, при использовании облачной версии код проходит через прокси TokenCompress. Вот что важно знать:
Код обрабатывается в памяти и не сохраняется на диск
Содержимое запросов не логируется
Обработка — per-request, без кэширования пользовательского кода
После сжатия к LLM-провайдеру уходит только сжатый фрагмент
Для повышенных требований к безопасности имеется тарифный план Enterprise: есть возможность self-hosted развертывания локально — в этом случае код вообще не покидает вашу инфраструктуру. Полная поддержка LM Studio, Ollama и vLLM.
Интеграция с Continue (VS Code)
Пример конфигурации для Continue:
name: Local Config version: 1.0.0 schema: v1 models: - name: TokenCompress - Deepseek provider: openai model: deepseek-chat apiKey: ak_live_ВАШ_КЛЮЧ::sk-ВАШ_КЛЮЧ_DEEPSEEK apiBase: https://tokencompress.com/v1/deepseek roles: - chat - edit - apply defaultCompletionOptions: stream: true - name: TokenCompress Claude 4.5 Opus provider: openai model: claude-opus-4-5 apiKey: ak_live_ВАШ_КЛЮЧ::sk-ant-api-ВАШ_КЛЮЧ apiBase: https://tokencompress.com/v1/anthropic roles: - chat - edit - apply defaultCompletionOptions: stream: true
Также работает с LangChain, LangGraph, OpenClaw, Codex, Claude Code, Continue и любым инструментом, который поддерживает OpenAI-совместимый API.
Итого
Экономия 60–80% токенов на каждом запросе к LLM
AST-парсинг + ML-ранжирование — это не программная минификация, а интеллектуальное сжатие с учетом вашего вопроса
24 языка, streaming, поддержка всех основных провайдеров
Подключение за 5 минут — меняете base_url и компонуете ключи
От $5/мес — окупается за один рабочий день
Попробовать бесплатно и без банковской карты: https://tokencompress.com/
Если есть вопросы — пишите https://t.me/TokenCompress, отвечу.
