Забудьте все, что вы знали о длинных контекстах
Claude Sonnet 4.6 вышел в марте 2026, и все сразу заговорили про 1 миллион токенов. Не просто так. Это не очередное маркетинговое «у нас больше». Это смена парадигмы. Раньше работа с длинными документами напоминала попытку вспомнить имя персонажа из первой главы, когда вы уже на сотой странице – память подводит, детали расплываются.
Теперь вы можете засунуть в модель код целого репозитория, техническую документацию на 500 страниц и еще пару научных статей. И спросить о строке 42 в файле, который загрузили первым. В теории Sonnet 4.6 ответит. На практике 90% пользователей делают одно и то же – заваливают модель информацией и ждут чуда. Чуда не происходит. Только огромный счет за API.
Важно: 1 млн токенов – это примерно 700-750 тысяч слов или 4-5 средних романов. Стоимость обработки такого контекста в Claude Sonnet 4.6 на март 2026 года составляет около $15-20 за полный цикл (ввод + вывод). Без стратегии вы просто сожжете бюджет.
Скрытые фичи, о которых молчит документация
Anthropic в релизе хвастается улучшенным кодированием и результатами в ARC-AGI-2. Скучно. Реальные «плюшки» спрятаны глубже.
- Динамическое перемасштабирование внимания: Sonnet 4.6 не тратит одинаковые усилия на каждый токен в контексте. Он автоматически определяет «важные» участки – заголовки, ключевые аргументы, изменения в коде – и выделяет им больше вычислительных ресурсов. Это как если бы модель сама расставляла желтые маркеры в тексте.
- Контекстно-зависимая токенизация для кода: Раньше, когда вы загружали Python-скрипт, модель видела просто последовательность токенов. Теперь она распознает структуру – функции, классы, импорты – и строит внутреннее представление, похожее на AST. Отсюда и прорыв в coding-задачах.
- Неявное ранжирование инструкций: Вы можете дать 10 разных заданий в одном промпте. Sonnet 4.6 не выполнит их просто по порядку. Он проанализирует зависимости между задачами и оптимизирует порядок выполнения. Например, если одна задача требует результата другой, он поймет это сам.
Именно эти фичи, а не голые цифры контекста, делают Sonnet 4.6 монстром для работы с комплексными проектами. Как в статье про внутреннее устройство Claude Opus 4.6, где раскрываются похожие механизмы.
Почему ваш длинный промпт все еще ломается
Самая частая ошибка – думать, что 1 млн токенов отменяет необходимость инжиниринга промптов. Это ложь. Модель с длинным контекстом не становится умнее. Она просто больше помнит. А если вы дадите ей плохо структурированные данные, она запомнит именно этот бардак.
Вот типичный провальный сценарий: разработчик загружает 50 файлов своего приложения и пишет «Найди баг в аутентификации». Модель видит 1 млн токенов кода, документации, конфигов, комментариев. Шанс, что она точно найдет проблему? Низкий. Почему? Потому что нет структуры, нет указаний, где искать. Модель потратит львиную долю «внимания» на нерелевантные части кода.
Как мы писали в материале «Когда промпт длиннее мозга», локальные модели от длинных инструкций буквально сходят с ума. Sonnet 4.6 устойчивее, но принцип тот же – беспорядок на входе порождает хаос на выходе.
1Шаг 1: Препарирование и сегментация
Не загружайте все скопом. Разделите ваш огромный документ или код на логические блоки. Для кода – по модулям или функциональности. Для текста – по главам или разделам. Дайте каждому блоку четкий заголовок-идентификатор.
# Пример структуры для загрузки кода репозитория
context_structure = """
РЕПОЗИТОРИЙ: my-auth-app
РАЗДЕЛ 1: Core Authentication (файлы 1-3)
- api/auth.py: Основные эндпоинты логина/регистрации
- models/user.py: Модель пользователя и методы
- utils/jwt_handler.py: Логика работы с JWT-токенами
РАЗДЕЛ 2: Middleware & Security (файлы 4-5)
- middleware/auth_middleware.py: Проверка токенов
- security/password.py: Хэширование паролей
РАЗДЕЛ 3: Конфигурация (файлы 6-7)
- config/database.py: Настройки БД
- .env.example: Переменные окружения
"""Эту структуру вы загружаете первой. Она занимает 100 токенов, но экономит 100 тысяч. Модель теперь имеет карту местности.
2Шаг 2: Использование формата ISON вместо JSON
Когда нужно передать структурированные данные (например, результаты предыдущего запроса), используйте ISON. Как мы подробно разбирали в статье «ISON против JSON», это сжимает объем на 60-70%.
# Вместо этого (много токенов):
# {"users": [{"id": 1, "name": "Alice", "email": "alice@example.com"}]}
# Используйте это (меньше токенов):
users:
- id:1 name:Alice email:alice@example.com
- id:2 name:Bob email:bob@example.comSonnet 4.6 отлично понимает ISON. Это неофициальный, но крайне эффективный способ сэкономить драгоценные токены в длинной сессии.
3Шаг 3: Явные инструкции по навигации
Не надейтесь, что модель сама догадается, где искать. Явно ссылайтесь на созданные вами разделы.
ПРОМПТ:
Используя загруженную структуру репозитория 'my-auth-app', проанализируй РАЗДЕЛ 1 (Core Authentication), особенно файл 'utils/jwt_handler.py'.
Вопрос: Есть ли уязвимость в функции `verify_token` из-за отсутствия проверки алгоритма подписи?
Если нужно, обратись к конфигурации в РАЗДЕЛЕ 3 для проверки используемого секретного ключа.Вы управляете фокусом модели. Это критически важно.
4Шаг 4: Агентное планирование с состоянием
Настоящая сила Sonnet 4.6 раскрывается в многошаговых задачах. Вы можете превратить диалог в сессию агента, который помнит всю историю.
# Псевдокод сессии анализа кода
import anthropic
client = anthropic.Anthropic(api_key="ВАШ_КЛЮЧ")
# 1. Загружаем структуру и код
initial_context = load_and_structure_repo("/path/to/repo")
# 2. Первый запрос: анализ архитектуры
response1 = client.messages.create(
model="claude-3-5-sonnet-latest", # Актуальная модель на март 2026
max_tokens=2000,
messages=[
{"role": "user", "content": initial_context + "\n\nПроанализируй общую архитектуру. Какие основные модули и их зависимости?"}
]
)
# 3. Второй запссив В ТОМ ЖЕ диалоге, модель помнит все
response2 = client.messages.create(
model="claude-3-5-sonnet-latest",
max_tokens=2000,
messages=[
{"role": "user", "content": initial_context},
{"role": "assistant", "content": response1.content[0].text},
{"role": "user", "content": "Исходя из твоего анализа, какое самое слабое место в безопасности? Дай конкретный пример из кода."}
]
)
# Весь контекст (initial_context + response1) остается в памяти модели.Здесь работает принцип, описанный в гайде по контекст-инжинирингу для coding-агентов – структурированная сессия с накоплением состояния.
Горячие грабли: 5 ошибок, которые все совершают
- Слепая загрузка бинарных данных или минифицированного кода. Sonnet 4.6 токенизирует каждую запятую и скобку. Минифицированный JS-файл на 10 000 строк съест контекст, но будет бесполезен. Всегда форматируйте код перед отправкой.
- Игнорирование стоимости output токенов. Даже если вы загрузили 1 млн токенов, генерация ответа на 10 тысяч токенов будет стоить дополнительно. Задавайте лимит max_tokens адекватно задаче.
- Смешивание несвязанных тем в одной сессии. Нельзя в один диалог загрузить документацию по Kubernetes, код на Python и главу из романа. Модель попытается найти связи там, где их нет. Каждая сложная тема – новая сессия.
- Отсутствие промежуточных итогов. В длинном диалоге из 20 сообщений модель начинает «забывать» ранние детали. Просите ее периодически резюмировать ключевые выводы. Эти резюме затем можно использовать как ссылки.
- Попытка использовать Sonnet 4.6 для простых задач. Запускать эту модель для проверки орфографии в абзаце – все равно что стрелять из пушки по воробьям. Для коротких контекстов есть более дешевые модели. Экономика важна.
Что дальше? Контекст – не панацея
Гонка за мегатокенами продолжится. DeepSeek уже тестирует свою модель с 1 млн токенов. Но суть не в том, чтобы просто увеличивать число.
Будущее за гибридными подходами: модель с большим, но не бесконечным контекстом + внешняя память (векторные базы, графы знаний) + умный механизм извлечения. Как в архитектуре, описанной в статье про конец квадратичной сложности.
Совет напоследок: не гонитесь за максимальной длиной контекста ради самого факта. Гонитесь за решением задачи. Часто лучше разбить проблему на части, решить их по отдельности с помощью более дешевой модели, а Sonnet 4.6 использовать для финального синтеза и анализа связей. Это дешевле и эффективнее.
И да, если вы работаете локально на Apple Silicon, изучите эксперименты с KV cache в MLX. Это другой путь к скорости, но принцип тот же – управление памятью решает все.