Гид по возможности · сверено 2026-10-20

Компакция в Claude Messages API: два беты, подписанный блок и учёт биллинга
компакция — это лишняя выборка и не автоматически дешевле

2026-02-05 Anthropic вывела compaction API в бета (сводка по достижении порога), а 2026-09-14 добавила компакцию по требованию: верхнеуровневый параметр compaction возвращает подписанный блок compaction. Оба пути нельзя совмещать в одном запросе; подписанный блок должен идти первым в messages, и вендор прямо пишет, что оставленные перед ним суммированные сообщения дают 400; usage.iterations определяет реальный расход запроса; вендор также показывает, как compaction сочетается с prompt caching.

Обновлено 2026-10-20

Claude, GPT и китайские модели по одному ключу, оплата по токенам; доступные модели — на /models.

#compact-2026-01-12#compact-2026-09-04#usage.iterations#подписанный блок

Четыре ключевых пункта

два бета

Разные beta-заголовки

Пороговая компакция идёт с compact-2026-01-12 и настраивается внутри context_management.edits с типом compact_20260112; по требованию — compact-2026-09-04 и верхнеуровневый compaction. Вендер пишет, что compaction и context_management нельзя отправлять в одном запросе.

150000

Порог срабатывания по умолчанию

Таблица параметров: trigger по умолчанию {"type": "input_tokens", "value": 150000}, input_tokens — единственный поддерживаемый тип, value не меньше 50 000 токенов. После срабатывания API делает сводку, кладёт её в блок compaction и продолжает ответ уже на сжатом контексте.

400

Блок не на своём месте — 400

Компакция по требованию возвращает один подписанный блок. Если суммированные сообщения остались перед блоком, запрос вернёт 400 с кодом compaction_block_misplaced. Блок ставится первым в messages вместо тех сообщений, которые он суммирует, и его надо вернуть без изменений, вместе с signature. Пороговый блок, наоборот, идёт после того, что он суммировал.

лишняя выборка

Почему это тарифицируется отдельно

Формулировка вендора: компакция добавляет ещё одну выборку, и эта выборка попадает в rate limit и в биллинг. В usage.iterations появляется запись типа compaction; верхнеуровневые input_tokens и output_tokens её не включают, поэтому реальный расход — сумма по iterations.

Что это

Серверная компакция: когда запрос доходит до настроенного порога, Claude сам пишет сводку разговора и возвращает её в блоке compaction; в следующих запросах API сам отбрасывает все блоки до этого блока и продолжает от сводки. Вендор позиционирует это как замену клиентскому коду суммаризации: сводку пишет сервер, собственный код для неё не нужен. Два сценария, названных в документации: долгий многоходовой чат, которым пользователи пользуются долго, и задачи с большим количеством продолжений (обычно вызовов инструментов), которые могут не влезть в контекстное окно.

Что произошло

Обе даты читаются дословно в официальных API release notes. 2026-02-05: compaction API вышел в бета с серверной сводкой контекста для практически бесконечных диалогов, и в записи сказано, что тогда он был доступен на Opus 4.6. 2026-09-14: Messages API научился сжимать диалог по требованию, тоже в бета, с beta-заголовком compact-2026-09-04; верхнеуровневый параметр compaction возвращает подписанный блок compaction, а в следующих запросах этот блок отправляют вместо исходных сообщений. Запрос по требованию отдаёт один подписанный блок и не даёт ответа (stop_reason — compaction); он может идти в фоне, пока диалог продолжается на полной истории, а последние реплики можно сохранить дословно после сводки.

Хронология

2026-02-05

2026-02-05: в официальных release notes — compaction API выходит в бета с серверной сводкой контекста для практически бесконечных диалогов, и в записи сказано, что тогда он был доступен на Opus 4.6; это первое появление серверной компакции в бете.

2026-09-14

2026-09-14: там же появляется компакция по требованию (beta-заголовок compact-2026-09-04): верхнеуровневый compaction, подписанный блок, фоновая сводка и дословно сохраняемые последние реплики.

2026-10-20

Страницы официальной документации по обзору компакции, пороговому и по требованию вариантам сверены в этот день, как и API release notes, и каждый параметр, значение по умолчанию и код ошибки сверены дословно; в официальном списке для варианта по требованию есть Google Cloud и нет Amazon Bedrock, а в списке для порогового пути указан ещё и Amazon Bedrock.

Подтверждено vs осторожно

Подтверждено документацией

Дословно в официальных страницах: значение trigger по умолчанию 150000, value не менее 50 000, тип триггера только input_tokens. Непустые instructions полностью заменяют стандартный промпт сводки (для compaction — до 16 384 символов). pause_after_compaction по умолчанию false. Компакция добавляет ещё одну выборку, и она попадает в rate limit и в биллинг. Верхнеуровневый usage не включает итерацию compaction — суммируйте iterations. Если суммированные сообщения остались перед подписанным блоком, приходит 400 с кодом compaction_block_misplaced. compaction и context_management нельзя в одном запросе. Endpoint подсчёта токенов игнорирует compaction. Изображения, документы, блоки container_upload и загруженные URL из суммированной части исчезают вместе с заменой.

⚠️ Осторожно

Расхожее «чем больше жмёшь, тем дороже» как факт писать нельзя. Вендор говорит и про лишнюю платную выборку, и — в разделе Prompt caching — что compaction хорошо сочетается с prompt caching; там показан breakpoint cache_control на блоке и совет ставить breakpoint в конце системного промпта, чтобы его кэш оставался действительным; плюс повторное применение прежнего блока compaction дополнительно не тарифицируется. Точная формулировка: у компакции есть цена, и выгодна ли она, зависит от расстановки breakpoint. Ещё: всё в бете; при неудачной сводке ответ всё равно 200 с пустым content, и вызов тарифицируется и виден в iterations; временный сбой сервера даёт retryable 529 overloaded_error с error.details.error_code compaction_unavailable; поле remaining бюджета задачи вместе с compaction отправлять нельзя — это 400.

Общее и различия

Общее

Сводка делается на сервере, возвращается блок compaction, пишет её та же модель, что указана в запросе (в Current limitations прямо сказано: нельзя взять другую, например более дешёвую), добавляется выборка, идущая в rate limit и биллинг, и всё это ещё бета.

Различия

Разное в запуске: пороговый путь срабатывает посреди запроса и сжимает на месте, за один запрос он может сработать несколько раз (с server tools порог проверяется в начале каждой итерации), а компакция по требованию — это отдельный запрос, который вы тратите на сводку и который не даёт ответа. Разное в расположении: пороговый блок идёт после суммированного, подписанный — вместо него. Разные и платформы: в официальном списке для варианта по требованию есть Google Cloud и нет Amazon Bedrock, а в списке для порогового пути указан ещё и Amazon Bedrock.

Как пользоваться

Пять шагов. 1) Выбрать путь: пороговый — если контекстом должен управлять API внутри обычных запросов; по требованию — если момент сжатия нужен под вашим контролем, нельзя останавливаться на время сводки или надо сохранить последние реплики и их размышления. 2) Заголовок: compact-2026-09-04 обязателен и на запросе со сводкой, и на каждом последующем с подписанным блоком; на запросе со сводкой без него приходит 400 с указанием на недостающий beta-заголовок, а на запросе с блоком без него — проверочная ошибка о том, что compaction не входит в ожидаемые типы блоков, и вендор пишет, что в таком тексте заголовок не упоминается. 3) Вернуть блок: поставить его первым в messages, суммированные сообщения убрать. 4) Учёт расходов: суммировать usage.iterations, а не смотреть два верхнеуровневых поля. 5) Если сводки нет: с tools модель иногда вызывает инструмент вместо сводки — тогда в блоке content: null; лечится instructions, прямо запрещающими вызов инструментов.

На QCode

Компакция — это параметр Messages API и beta-заголовок, а не переключатель на нашей стороне. Параметр трактует Anthropic, и мы ничего не обещаем от его имени. Модели из официального списка поддержки беты — claude-opus-5, claude-sonnet-5, claude-fable-5, claude-fable-5-1, claude-opus-4-8 и claude-sonnet-4-6 — есть в публичном списке /models (проверка 2026-10-20); в официальном списке поддержки есть также claude-mythos-5 и claude-mythos-5-1. Поддержку сжатия для конкретной модели стоит проверять по официальным спискам Compatibility, которые вендор ведёт отдельно для каждого beta-заголовка. Оплата по токенам, цены каждой модели — на странице моделей.

Частые вопросы

Можно включить обе беты сразу?

Нельзя. Вендер прямо пишет, что compaction и context_management нельзя отправлять в одном запросе, и добавляет, что пороговая компакция (compact_20260112) не работает на запросе с подписанным блоком. Выбирайте один путь.

Компакция экономит деньги?

Сама по себе — нет. Вендор говорит, что компакция требует лишнюю выборку, влияющую на лимиты и биллинг, и что верхнеуровневые input_tokens / output_tokens её не включают: надо суммировать usage.iterations. Меньше становится контекст последующих запросов; итог зависит от расстановки cache breakpoint и от того, что повторный прежний блок тарифицируется дополнительно в ноль.

Куда класть подписанный блок?

Первым в messages, удалив суммированные сообщения, и сохранив блок ровно как полученный — вместе с signature. Вендер пишет, что если суммированные сообщения остались перед подписанным блоком, запрос вернёт 400 с кодом compaction_block_misplaced. И на всех последующих запросах с блоком нужен compact-2026-09-04.

Почему блок пришёл пустой?

Чаще всего из-за инструментов: в Current limitations сказано, что при наличии tools модель иногда вызывает инструмент вместо сводки, и тогда у compaction-блока content: null. Лечение — instructions, явно запрещающие вызов инструментов и требующие текст. Учтите: неудачная сводка — это всё равно 200 с пустым content, вызов тарифицируется и попадает в usage.iterations.

Где смотреть, какие модели поддерживают сжатие? Какие модели можно попробовать на QCode?

Вендор ведёт официальные списки Compatibility отдельно для каждого beta-заголовка: один для варианта по требованию, один для порогового пути, с идентификаторами моделей в том виде, в каком их надо отправлять. Модели из официального списка поддержки беты — claude-opus-5, claude-sonnet-5, claude-fable-5, claude-fable-5-1, claude-opus-4-8 и claude-sonnet-4-6 — есть в публичном списке /models (проверка 2026-10-20); в официальном списке поддержки есть также claude-mythos-5 и claude-mythos-5-1. Компакция — параметр API, мы его не включаем за вас; бета может измениться, и долгосрочной поддержки ни одного из вариантов мы не обещаем.

Можно поручить сводку более дешёвой модели?

Нет. Вендер пишет, что сводку пишет модель, указанная в запросе, и опции использовать другую (например, более дешёвую) модель для сводки нет. Менять можно только instructions (собственный промпт сводки, полностью заменяющий стандартный) и порог trigger. Полный контроль — это отключить серверную компакцию и суммировать на клиенте, а это другой дизайн.

Источники

Официальные страницы Anthropic о компакции: обзор https://platform.claude.com/docs/en/build-with-claude/compaction (таблица Choose how to compact и указатель подстраниц), пороговый вариант https://platform.claude.com/docs/en/build-with-claude/compaction-threshold (разделы Parameters / Understanding usage / Prompt caching / Current limitations), вариант по требованию https://platform.claude.com/docs/en/build-with-claude/compaction-on-demand (разделы Request a summary / Errors / Count compaction usage), а также API release notes https://platform.claude.com/docs/en/release-notes/api (дословно процитированы записи от 2026-02-05 и September 14, 2026; в тот же день получено в официальном .md-виде, HTTP 200).

Сначала почините учёт расхода

Заголовки, расположение блока и формулировки биллинга соответствуют официальным документам, сверенным 2026-10-20; параметр трактует Anthropic, и от своего имени мы ничего не обещаем. Квота закончилась? Не ждите сброса: с действующим личным тарифом купите бустер-пакет, без тарифа — «Разовые пакеты» от $4 за разовую квоту, которую используете в течение 7 дней (пополнение от $5). Цены — на /pricing, каталог — на /models.

Связанное

Оплата криптовалютой

Девять монет, 56 сетей, нулевая комиссия платформы за кредиты AI-кодинга.

Страница пересказывает открытую документацию Anthropic и не связана с компанией. Имена параметров, значения по умолчанию, коды ошибок и цитаты — по версии, сверенной 2026-10-20; beta-интерфейсы меняются без предупреждения. Выгодна ли компакция, решают цена дополнительной выборки и расстановка cache-контрольных точек: вендор пишет только об этом. QCode предоставляет доступ к API и не меняет beta-статус интерфейсов Anthropic.

Не знаете, с чего начать?

Попробовать неделю

Пакет «Малый» — $4: квота $30 на 7 дней

Работаете каждый день

«Стартовый» — $9.00 в месяц, за $1 квоты примерно вдвое дешевле пакета «Средний» ($5 квоты в день)