Context Engineering
context engineering — искусство собирать контекст модели
Context Engineering — практика системно снабжать AI-модель нужным контекстом до того, как она ответит. Память о пользователе, документы через RAG, проектные файлы, инструменты через MCP, прошлые сообщения. В 2025-м термин «prompt engineering» начал звучать узко — главным навыком стало не написать промпт, а собрать ему правильный фон. Это и есть Context Engineering.
Коротко
Коротко. Context Engineering — это сборка контекста для AI-модели до запроса: память пользователя, документы (RAG), файлы проекта, доступные инструменты, история диалога. В 2025-м термин «prompt engineering» начал звучать узко — главным мастерством стало не написать удачный prompt, а правильно собрать для модели её рабочий фон. Andrej Karpathy: «Context Engineering — это уже не trick, а инфраструктурная дисциплина».
Что это такое
2023 год — все писали prompts. 2024 — все начали добавлять RAG. 2025 — выяснилось, что хороший AI-продукт это не модель + prompt, это модель + слой управления её контекстом.
Что входит в этот контекст:
- System prompt — кто модель такая, что умеет.
- User memory — что модель уже знает о вас (ChatGPT Memory, Claude Projects).
- RAG-документы — релевантные куски из базы знаний.
- Tools — какие функции доступны (через function calling / MCP).
- History — предыдущие сообщения диалога.
- Workspace files — файлы проекта (IDE-ассистенты, Claude Code).
- Live data — поиск в интернете, API-данные, время.
Все эти источники собираются в окно контекста модели — 200K токенов у Claude, 2M у Gemini. Но окно не бесконечное, токены стоят денег, и нерелевантный контекст ухудшает ответ. Поэтому появилась отдельная инженерная задача: что положить, что отбросить, в каком порядке, как переписать.
Термин начал массово упоминаться в 2025-м — после twitter-эссе Andrej Karpathy и шквала статей. На Exploding Topics запросы по «context engineering» выросли на 600% за год.
Как это работает
Условный пайплайн AI-агента с Context Engineering:
User: "Найди счета за март и сделай отчёт"
↓
1. Memory loader → достать профиль пользователя
2. RAG retriever → найти 5 релевантных кусков из knowledge base
3. Tool selector → отобрать 3 нужных tools из 47 доступных
4. History compressor → ужать прошлые 50 сообщений до summary
5. Context assembler → собрать всё в финальный prompt
↓
6. LLM → ответ или вызов tool
↓
7. Memory writer → записать новые факты в долгую память
Каждый шаг — отдельная инженерная задача:
Memory. Какие факты о пользователе помнить, какие забывать, как обновлять. ChatGPT Memory активно учится; Claude Projects держит документы; продвинутые системы хранят «эпизодическую» и «семантическую» память отдельно.
RAG. Не просто «найти и вставить». Нужен качественный chunking, embeddings, reranking, фильтрация по метаданным. Плохой RAG = шум в контексте = хуже ответ.
Tool selection. Если дать модели 50 функций — она запутается. Динамически выбираем 5–10 самых релевантных через embeddings от описания tool до текста запроса.
Compression. История в 100K токенов = $$$. Через регулярные интервалы сжимаем диалог в summary. Anthropic называет это «compacting».
Order matters. Модели сильнее обращают внимание на начало и конец контекста («lost in the middle» — известный эффект). Размещение важного блока в правильном месте — отдельный навык.
Пример на практике
Команда делает AI-ассистента для юристов. Версия 1 (только prompt engineering):
Ты — юрист. Отвечай на вопросы по российскому праву.
Будь точным.
USER: «Что грозит за неуплату алиментов?»
Ответ: общие банальности на уровне статьи Википедии. Без ссылок на статьи закона. Может галлюцинировать суммы.
Версия 2 (с Context Engineering):
def answer_legal_question(question, user_id):
# 1. Достать профиль пользователя
profile = get_user_profile(user_id) # юрист vs обыватель?
# 2. Найти релевантные статьи закона через RAG
relevant_articles = vector_search(
query=question,
filters={"source": "ГК РФ", "updated_after": "2024-01-01"},
top_k=5
)
# 3. Достать свежую судебную практику
cases = search_court_decisions(question, last_year=True, top_k=3)
# 4. Выбрать релевантные tools (calculator? lookup?)
tools = select_tools(question, available_tools=ALL_TOOLS)
# 5. Собрать финальный контекст
context = f"""
<profile>{profile}</profile>
<statutes>{relevant_articles}</statutes>
<court_practice>{cases}</court_practice>
"""
# 6. Запрос с готовым контекстом
return claude.messages.create(
model="claude-3-5-sonnet",
system=LEGAL_SYSTEM_PROMPT,
messages=[{"role": "user", "content": context + question}],
tools=tools
)
Версия 2 даёт ответ со ссылками на конкретные статьи, актуальной судебной практикой, расчётом через калькулятор. Качество — на уровне младшего юриста. Стоимость в 3× выше (больше токенов), но Reply Rate в продакшене вырос с 22% до 71%.
В Claude Code и Cursor — система внутри них уже собирает контекст автоматически: подгружает релевантные файлы из проекта, выдаёт результаты команд, ведёт TODO-список. Это и есть Context Engineering, упакованный в продукт.
ComfyUI в этой парадигме интересен тем, что workflow-ноды это явная визуализация context-pipeline'а: каждая нода добавляет что-то в финальный латент.
С чем часто путают
- Context Engineering и Prompt Engineering — Prompt = текст сообщения. Context = вся информация вокруг (память, документы, инструменты, история). Context включает prompt как один из элементов.
- Context Engineering и RAG — RAG это техника внутри Context Engineering, один из источников контекста.
- Context Engineering и Fine-tuning — Fine-tuning меняет веса модели. Context Engineering меняет вход модели. Первое дорого и долго, второе — быстро и гибко.
- Context Window и Context Engineering — Window это размер «коробки». Engineering — что в эту коробку положить.
- Context Engineering и Memory — Memory это один из компонентов. Context Engineering — это и Memory, и RAG, и Tools, и History вместе.
Частые ошибки и заблуждения
- «Чем больше контекста, тем лучше». Нет. После определённого порога модели начинают «теряться в середине», ответы хуже. Релевантность > объём.
- «200K окно — всё помещается». Помещается, но обработка дорожает квадратично (attention). И качество падает. Сжимай старое.
- «RAG это и есть Context Engineering». RAG это техника. Context Engineering — дисциплина, где RAG один из инструментов.
- «Memory заменит RAG». Не заменит. Memory — это коэффициенты пользователя; RAG — внешние данные. Они дополняют друг друга.
- «Context Engineering — это для больших команд». Минимальная версия (system prompt + RAG + хранение истории в localStorage) делается за день. Полная — да, нужна команда.
Связанные термины
- Prompt Engineering — пишут текст одного запроса; Context Engineering работает со всеми источниками вокруг.
- RAG — техника извлечения релевантных документов в контекст.
- Context Window — физический размер «коробки», в которой собирается контекст.
- MCP — стандарт для подключения внешних tools (компонент контекста).
- Function Calling — механизм tool use, ещё один компонент контекста.
- Memory — долгосрочная память пользователя.
- Embedding — основа для retrieval-механизмов.
Частые вопросы
Что заменяет prompt engineering — Context Engineering? Не заменяет, а расширяет. Prompt Engineering — это умение писать запросы. Context Engineering — умение системно собирать всё вокруг запроса. Хорошо делать оба.
С чего начать? Минимум: system prompt + история диалога + один источник внешних данных (RAG или web search). Это уже сильно лучше «голого» LLM.
Какие фреймворки? LangChain, LlamaIndex, Haystack — для retrieval pipelines. Anthropic SDK — для memory + MCP. Vercel AI SDK — для веб-приложений. На уровне продуктов: Claude Projects, ChatGPT Memory, Cursor codebase context.
Сколько контекста — это много? Зависит от модели и задачи. Для Claude 3.5 Sonnet: 50–100K токенов работает хорошо, дальше качество падает. Для Gemini 2M — можно класть больше, но всё равно лучше отсеивать нерелевантное.
Это новая профессия? К 2026-му появились вакансии «AI Engineer» (~ Context Engineer + Prompt Engineer + Eval Engineer). Отдельной профессии «Context Engineer» пока нет, но навык — основной для AI-разработчика.
Главное
Context Engineering — это про управление всем, что попадает в окно модели до ответа: системный prompt, память пользователя, RAG-документы, tools, история, файлы проекта. В 2025-м стало понятно: «лучший prompt» больше не главный рычаг качества AI-продукта; главный рычаг — какой контекст у модели в момент ответа. Это объединяет RAG, Memory, Tool selection, History compression, ordering в одну инженерную дисциплину. Karpathy формулирует так: prompt engineering — это писать одно сообщение, context engineering — это построить систему, которая собирает идеальное сообщение под каждый запрос.