50 KiB
РЕЗЮМЕ: ОТ СЛОВ К ПРАКТИКЕ
В 2020 году GPT-3 ошеломил мир: модель генерировала связный текст, писала код, отвечала на вопросы — и никто толком не понимал, как ей управлять. Промпты были заклинаниями, результаты — лотереей, а best practice сводились к «попробуй переформулировать». За пять лет индустрия прошла путь от восторженных демо до production-систем, обрабатывающих миллионы запросов. Chain-of-Thought стал стандартом, появились агентные архитектуры, протоколы интеграции инструментов, reasoning-mode, гибриды, open-weight frontier-модели и новая экономика inference. Чёрный ящик не стал прозрачным — но мы научились строить вокруг него надёжную инженерию. Эта книга — попытка собрать в одном месте всё, что мы знаем на апрель 2026 года о том, как это делать правильно.
Девять принципов LLM-инженерии
1. Понимай механику
Модель — не чёрный ящик. Это авторегрессионный предсказатель следующего токена, построенный из чётко определённых компонентов:
- Токенизация (Глава 1): BPE/SentencePiece разбивает текст на субсловные единицы. Русский → в 1.5–2× больше токенов, чем английский. Границы токенов влияют на «понимание» — модель не видит слова, она видит фрагменты.
- Embeddings (Глава 1): каждый токен → вектор в d_model-мерном пространстве. Семантически близкие понятия → близкие векторы. Это позволяет модели «обобщать», но и создаёт ложные сходства (галлюцинации по аналогии).
- Self-Attention (Глава 2): механизм сравнивает query текущего токена с keys предыдущих токенов, нормализует веса через softmax и смешивает values. Каузальная маска запрещает заглядывать вперёд.
- MLP (Глава 2): feed-forward слои хранят ассоциативные знания как key-value memories (Geva et al., 2021). Knowledge neurons кодируют факты.
- RoPE (Глава 4): Rotary Position Embedding кодирует позицию через вращение в комплексном пространстве. Затухание attention с расстоянием → основа для длинного контекста.
Зачем: когда вы понимаете, что модель — статистическая машина, вы перестаёте ждать от неё чуда и начинаете проектировать системы, компенсирующие её ограничения.
2. Проектируй протоколы
Промпт — это не просьба, а контракт (Глава 6). Он определяет роль, формат, источники, ограничения.
- Структура:
<role>→<context>→<rules>→<format>→<input> - Structured outputs: JSON Schema, function calling, Outlines/Guidance для гарантий формата (Глава 6)
- XML-разметка: теги как семантический экзоскелет, предотвращающий интерференцию между секциями (Глава 7)
- Repository semantic anchors: парные
[DEF]...[/DEF]или эквивалентные headers для кода; ценность в стабильной структуре, а не в «магическом» синтаксисе (Глава 16) - Каузальный порядок: порядок подачи информации в промпте влияет на результат (primacy/recency effect, Глава 4)
Зачем: протокол обеспечивает воспроизводимость. Один и тот же промпт → один и тот же формат результата → автоматическая обработка downstream.
3. Разделяй роли
Один LLM-вызов не должен одновременно планировать, исполнять и проверять (Глава 10).
- Planner: декомпозирует задачу на план (что делать и в каком порядке)
- Executor: выполняет шаги, делегируя инструментам, что можно делегировать
- Verifier: проверяет результат (CoVe, программная валидация, human-in-the-loop)
- Orchestrator: управляет циклом, логирует, отслеживает бюджет
| Антипаттерн | Проблема | Решение |
|---|---|---|
| Один промпт для всего | Модель сама решает, что проверять | Раздельные роли |
| Agent без верификатора | Галлюцинации пропускаются | Verifier после каждого шага |
| Planner = Executor | План неявный, нет audit trail | Явный план → логируемые шаги |
4. Выноси состояние
Attention — не память (Глава 5, Глава 10). Context window — это рабочий стол, а не архив.
- Проблема: Lost in the Middle (Liu et al., 2023) — U-образная кривая запоминания. Модель хорошо помнит начало и конец, но теряет середину.
- Проблема: attention dilution — чем длиннее контекст, тем менее «внимательна» модель к каждому фрагменту.
- Решение: Трёхуровневая память (Глава 10):
- Working memory: текущий контекст (промпт)
- Short-term memory: файлы сессии, кеш инструментов
- Long-term memory: RAG (векторная БД), GraphRAG, persistent storage
Зачем: агент, хранящий всю историю в контексте, деградирует с каждым шагом. Агент с внешней памятью масштабируется.
5. Делегируй вычисления
Модель не калькулятор и не поисковик (Глава 11). LLM good at: reasoning, generation, classification. LLM bad at: arithmetic, data retrieval, real-time information.
- Code Interpreter: для вычислений → сгенерировать код → выполнить → вернуть результат (PAL, Gao et al., 2023)
- SQL/API tools: для данных → Text2SQL → выполнить → вернуть результат
- Search tools: для актуальной информации → RAG → retrieved chunks → LLM synthesis
- Мультимодальные инструменты: vision, audio, video — делегируй обработку специализированным моделям и пайплайнам (Глава 18)
- Mainstream tech: делегируй инструментам, в которых модель надёжна (Python, SQL, JSON), а не экзотическим (Глава 11)
6. Логируй, верифицируй и измеряй
Без логов LLM-система — чёрный ящик (Глава 13, Глава 17).
- LDD (Log-Driven Development): каждый LLM-вызов → лог (prompt hash, model, tokens, latency, response summary)
- Typed decision traces:
reason / explore / reflectполезнее сырого CoT-дампа; их можно привязывать к span'ам и checkpoint'ам (Глава 17) - CoVe (Chain-of-Verification): Generate → Plan questions → Execute independently → Final verified answer (Dhuliawala et al., 2023)
- Anti-Loop: детекция вербальных, инструментальных и осцилляционных зацикливаний.
max_iterationsна каждый контур. Exponential backoff. - Guardrails: входные (блокировать injection, off-topic, PII) + выходные (schema validation, confidence threshold, blocklist)
- Evals (Глава 14): golden sets, LLM-as-Judge, regression gates. Без систематической оценки невозможно отличить улучшение от деградации.
- Безопасность (Глава 15): prompt injection, jailbreaks, red-teaming, tenant isolation. Безопасность — не feature, а свойство архитектуры.
7. Пиши AI-friendly код
Код, который модель легко понимает и модифицирует (Глава 16):
- Модули < 100 строк: вмещаются в один промпт целиком
- Контракты: типы + docstrings + pre/post-conditions = семантические якоря
- Layered context: overview/intent -> AST/dataflow -> raw code -> tests (Глава 16)
- Decision memory:
@RATIONALEи@REJECTEDна risky-модулях уменьшают вероятность агентных регрессий - Zero-Context Survival: код работает и понятен без оригинального промпта
- Small Simple Blocks: линейный код > переинжиниренный DRY. WET до 3-х повторений.
- Явные зависимости: через аргументы, не через globals
8. Внедряй постепенно
Не big bang, а step-by-step (Глава 23):
- Ассистент → человек проверяет каждый ответ
- Автоматизация → повторяемые задачи на автопилоте, edge cases → человеку
- Контуры → Plan + Execute + Verify + Log
- Масштабирование → мониторинг, алерты, A/B-тесты, бюджетные лимиты
- Дообучение → если промптинг достиг потолка — SFT, DPO, GRPO (Глава 19)
Метрики: accuracy, hallucination rate, fallback rate, latency, cost per request. Если не измеряешь — не контролируешь.
9. Учитывай гибридные архитектуры и эффективность
Transformer — не единственная архитектура. В 2023–2026 годах появились State Space Models (Mamba, Gu & Dao, 2023), гибридные модели и зрелые MoE-системы. Публично описанные архитектуры вроде Jamba/Jamba2 показали, что attention, SSM и MoE можно комбинировать в одной системе.
- SSM (State Space Models): линейная сложность по длине последовательности, эффективное обучение на длинных документах
- Гибриды: Jamba/Jamba2 чередуют слои Transformer (хорошее in-context learning) и Mamba (эффективная обработка длинного контекста)
- Test-time compute scaling (Snell et al., 2024): качество рассуждений можно повышать, выделяя модели больше вычислений на этапе инференса (больше шагов thinking, self-consistency, beam search по цепочкам рассуждений)
- Serving и runtime (Глава 21): KV-кэш, PagedAttention, speculative decoding, batching — архитектура inference pipeline напрямую влияет на latency и cost
- Durable orchestration (Глава 22): для долгоживущих агентов — checkpointing, компенсация, управление жизненным циклом
- Практический вывод: выбирайте архитектуру под задачу. Transformer остаётся базой. SSM и гибриды важны там, где long-context economics начинает доминировать. Test-time compute нужен там, где цена ошибки выше, чем цена дополнительного inference. Систематический каталог всех паттернов — в Главе 20.
Зачем: инженер, знакомый только с Transformer, ограничен в выборе инструментов. Понимание альтернатив позволяет проектировать системы, оптимальные по cost/quality/latency.
Одна формула
Если нужен один ориентир, то он такой: качество LLM-системы сильнее зависит от архитектуры, протоколов, верификации и test-time compute, чем от голого размера модели.
GPT-5.4 с плохим промптом проиграет GPT-5.4-mini с хорошим контуром. А модель с test-time compute scaling (extended thinking, self-consistency) решит задачу, которую модель побольше провалит с одного прохода.
Практический вывод
Стройте LLM-системы как инженерные контуры, а не как цепочку надежд на одну сильную модель. Разделяйте роли, фиксируйте протоколы, проверяйте ответы внешними средствами, используйте test-time compute там, где он действительно окупается, и измеряйте систему на реальных задачах. Модели, окна контекста и API быстро меняются; устойчивое преимущество даёт не выбор очередного флагмана, а дисциплина архитектуры, верификации и наблюдаемости.
Источники
Фундаментальные работы
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 1 | Vaswani et al. | 2017 | Attention Is All You Need | Архитектура Transformer |
| 2 | Devlin et al. | 2019 | BERT: Pre-training of Deep Bidirectional Transformers | Bidirectional pre-training |
| 3 | Brown et al. | 2020 | Language Models are Few-Shot Learners | GPT-3, in-context learning |
| 4 | Sennrich et al. | 2016 | Neural Machine Translation of Rare Words with Subword Units | BPE tokenization |
| 5 | Kudo & Richardson | 2018 | SentencePiece: A simple and language independent subword tokenizer | SentencePiece |
Архитектура и оптимизация
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 6 | Geva et al. | 2021 | Transformer Feed-Forward Layers Are Key-Value Memories | MLP как ассоциативная память |
| 7 | Dao et al. | 2022 | FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness | FlashAttention |
| 8 | Dao | 2023 | FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning | FlashAttention-2 |
| 9 | Shah et al. | 2024 | FlashAttention-3: Fast and Accurate Attention with Asynchrony and Low-precision | FlashAttention-3 (Hopper GPU) |
| 10 | Su et al. | 2021 | RoFormer: Enhanced Transformer with Rotary Position Embedding | RoPE |
| 11 | Beltagy et al. | 2020 | Longformer: The Long-Document Transformer | Sparse attention |
| 12 | Zaheer et al. | 2020 | Big Bird: Transformers for Longer Sequences | Sparse attention |
| 13 | Shazeer | 2019 | Fast Transformer Decoding: One Write-Head is All You Need | Multi-Query Attention (MQA) |
| 14 | Ainslie et al. | 2023 | GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints | Grouped-Query Attention |
| 15 | Fedus et al. | 2022 | Switch Transformers: Scaling to Trillion Parameter Models with Simple and Efficient Sparsity | MoE |
| 16 | Gu & Dao | 2023 | Mamba: Linear-Time Sequence Modeling with Selective State Spaces | State Space Models (SSM) |
| 17 | AI21 Labs | 2024 | Jamba: A Hybrid Transformer-Mamba Language Model | Гибрид Transformer + SSM |
| 18 | Dao & Gu | 2024 | Transformers are SSMs: Generalized Models and Efficient Algorithms Through Structured State Space Duality | Mamba-2 / SSD; ICML 2024 |
| 19 | AI21 Labs | 2026 | Introducing Jamba2 | Гибрид SSM-Transformer, Apache 2.0, 256K контекст |
Test-time compute, reasoning и scaling
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 20 | Snell et al. | 2024 | Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters | Test-time compute scaling |
| 21 | Shao et al. | 2024 | DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models | GRPO (Group Relative Policy Optimization) |
| 22 | Guo et al. | 2025 | DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning | Reasoning через pure RL; Nature, vol. 645 |
| 22a | Hao et al. | 2025 | Training Large Language Models to Reason in a Continuous Latent Space | Continuous latent reasoning (Coconut) |
| 22b | Shai et al. | 2024 | Transformers Represent Belief State Geometry in their Residual Stream | Геометрия belief state в residual stream |
| 22c | Zhou et al. | 2025 | The Geometry of Reasoning: Flowing Logics in Representation Space | Геометрический взгляд на reasoning |
| 22d | Manson | 2025 | Curved Inference | Кривизна residual trajectory как interpretability probe |
Контекст и позиционные представления
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 23 | Liu et al. | 2023 | Lost in the Middle: How Language Models Use Long Contexts | U-образная кривая attention |
| 24 | Xiao et al. | 2023 | Efficient Streaming Language Models with Attention Sinks | StreamingLLM, attention sinks |
| 25 | Peng et al. | 2023 | YaRN: Efficient Context Window Extension of Large Language Models | YaRN (RoPE scaling) |
| 26 | Press et al. | 2022 | ALiBi: Train Short, Test Long | ALiBi positional encoding |
Prompting и рассуждения
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 27 | Wei et al. | 2022 | Chain-of-Thought Prompting Elicits Reasoning in Large Language Models | Chain-of-Thought |
| 28 | Wang et al. | 2023 | Self-Consistency Improves Chain of Thought Reasoning in Language Models | Self-Consistency |
| 29 | Yao et al. | 2023 | Tree of Thoughts: Deliberate Problem Solving with Large Language Models | Tree of Thoughts |
| 30 | Besta et al. | 2024 | Graph of Thoughts: Solving Elaborate Problems with Large Language Models | Graph of Thoughts |
| 31 | Gao et al. | 2023 | PAL: Program-aided Language Models | Code as reasoning |
| 32 | Elhage et al. | 2022 | Toy Models of Superposition | Superposition |
| 32a | Chen et al. | 2026 | The Molecular Structure of Thought | Long-CoT как deep reasoning + self-reflection + self-exploration |
Галлюцинации и верификация
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 33 | Dhuliawala et al. | 2023 | Chain-of-Verification Reduces Hallucination in Large Language Models | CoVe |
| 34 | Lin et al. | 2022 | TruthfulQA: Measuring How Models Mimic Human Falsehoods | TruthfulQA бенчмарк |
| 35 | Min et al. | 2023 | FActScore: Fine-grained Atomic Evaluation of Factual Precision | FActScore |
| 36 | Ji et al. | 2023 | Survey of Hallucination in Natural Language Generation | Таксономия галлюцинаций |
| 37 | Huang et al. | 2023 | A Survey on Hallucination in Large Language Models | Обзор причин и решений |
Агенты и инструменты
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 38 | Yao et al. | 2023 | ReAct: Synergizing Reasoning and Acting in Language Models | ReAct pattern |
| 39 | Shinn et al. | 2023 | Reflexion: Language Agents with Verbal Reinforcement Learning | Reflexion |
| 40 | Wang et al. | 2023 | Plan-and-Solve Prompting | Plan-and-Execute |
| 41 | Zhou et al. | 2024 | Language Agent Tree Search Unifies Reasoning, Acting, and Planning | LATS |
| 42 | Anthropic / LF Projects, LLC | 2024–2025 | Model Context Protocol (MCP) Specification | Стандарт интеграции tools; с 2025 — проект Linux Foundation |
| 43 | Schick et al. | 2023 | Toolformer: Language Models Can Teach Themselves to Use Tools | Self-taught tool use |
| 43a | Yu et al. | 2026 | Agentic Memory: Learning Unified Long-Term and Short-Term Memory Management for Large Language Model Agents | Unified STM + LTM memory policy |
RLHF и выравнивание
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 44 | Ouyang et al. | 2022 | Training language models to follow instructions with human feedback | InstructGPT / RLHF |
| 45 | Rafailov et al. | 2023 | Direct Preference Optimization: Your Language Model is Secretly a Reward Model | DPO |
| 46 | Bai et al. | 2022 | Constitutional AI: Harmlessness from AI Feedback | Constitutional AI (RLAIF) |
| 46a | Gao et al. | 2022 | Scaling Laws for Reward Model Overoptimization | Reward hacking и scaling reward models |
| 46b | Du et al. | 2026 | GLM-5: from Vibe Coding to Agentic Engineering | Многостадийный RL для agentic engineering |
RAG и retrieval
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 47 | Lewis et al. | 2020 | Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks | RAG |
| 48 | Microsoft | 2024 | GraphRAG: Unlocking LLM discovery on narrative private data | GraphRAG |
| 49 | Sarthi et al. | 2024 | RAPTOR: Recursive Abstractive Processing for Tree-Organized Retrieval | RAPTOR |
| 50 | Asai et al. | 2024 | Self-RAG: Learning to Retrieve, Generate, and Critique through Self-Reflection | Self-RAG; ICLR 2024 |
| 51 | Gao et al. | 2023 | Precise Zero-Shot Dense Retrieval without Relevance Labels | HyDE; ACL 2023 |
Structured outputs
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 52 | Willard & Louf | 2023 | Efficient Guided Generation for Large Language Models | Outlines |
| 53 | Microsoft | 2023 | Guidance: A Guidance Language for Controlling LLMs | Guidance |
Дообучение, данные и дистилляция
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 54 | Hu et al. | 2021 | LoRA: Low-Rank Adaptation of Large Language Models | Эффективная адаптация (LoRA) |
| 55 | Dettmers et al. | 2023 | QLoRA: Efficient Finetuning of Quantized LLMs | QLoRA — LoRA + 4-bit квантизация |
| 56 | Wei et al. | 2021 | Finetuned Language Models Are Zero-Shot Learners | FLAN — instruction tuning |
| 57 | Wang et al. | 2022 | Self-Instruct: Aligning Language Models with Self-Generated Instructions | Синтетические инструкции |
| 58 | Gunasekar et al. | 2023 | Textbooks Are All You Need | Качество данных > объём |
| 59 | Mukherjee et al. | 2023 | Orca: Progressive Learning from Complex Explanation Traces of GPT-4 | Обучение на reasoning traces |
| 60 | Hinton et al. | 2015 | Distilling the Knowledge in a Neural Network | Knowledge distillation |
| 61 | Gu et al. | 2024 | MiniLLM: On-Policy Distillation of Large Language Models | Дистилляция LLM; ICLR 2024 |
Мультимодальные модели
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 62 | Faysse et al. | 2024 | ColPali: Efficient Document Retrieval with Vision Language Models | Визуальный retrieval документов; ICLR 2025 |
| 63 | Li et al. | 2023 | Evaluating Object Hallucination in Large Vision-Language Models | POPE — бенчмарк визуальных галлюцинаций |
Inference-оптимизация
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 64 | Leviathan et al. | 2023 | Fast Inference from Transformers via Speculative Decoding | Speculative decoding; ICML 2023 |
| 64a | Chen et al. | 2023 | Accelerating Large Language Model Decoding with Speculative Sampling | Speculative sampling; arXiv:2302.01318 |
| 65 | Kwon et al. | 2023 | Efficient Memory Management for LLM Serving with PagedAttention | PagedAttention / vLLM; SOSP 2023 |
| 66 | Gim et al. | 2024 | Prompt Cache: Modular Attention Reuse for Low-Latency Inference | Prompt Cache; MLSys 2024 |
Diffusion LLM
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 67 | Sahoo et al. | 2024 | Simple and Effective Masked Diffusion Language Models | MDLM; NeurIPS 2024 |
| 68 | Lou et al. | 2024 | Discrete Diffusion Modeling by Estimating the Ratios of the Data Distribution | SEDD; ICML 2024 |
| 69 | Inception Labs | 2026 | Mercury: The Fastest LLM | Production diffusion LLM |
Безопасность и red-teaming
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 70 | Greshake et al. | 2023 | Not what you’ve signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection | Indirect prompt injection |
| 71 | Zou et al. | 2023 | Universal and Transferable Adversarial Attacks on Aligned Language Models | GCG — универсальные jailbreak-суффиксы |
| 72 | Perez et al. | 2022 | Red Teaming Language Models with Language Models | Automated red-teaming |
| 73 | OWASP | 2025 | Top 10 for LLM Applications | Классификация уязвимостей LLM-систем |
Evals и LLM-as-Judge
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 74 | Zheng et al. | 2023 | Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena | LLM-as-Judge; NeurIPS 2023 |
| 75 | Liu et al. | 2023 | G-Eval: NLG Evaluation using GPT-4 with Better Human Alignment | G-Eval |
Бенчмарки и оценка
| # | Автор(ы)/Организация | Год | Название | Вклад |
|---|---|---|---|---|
| 76 | Jimenez et al. | 2024 | SWE-bench: Can Language Models Resolve Real-World GitHub Issues? | Бенчмарк решения реальных задач из GitHub |
| 77 | Mialon et al. | 2023 | GAIA: A Benchmark for General AI Assistants | Бенчмарк general-purpose агентов |
| 78 | OpenAI | 2024 | SimpleQA | Бенчмарк фактуальности коротких ответов |
Model docs и technical reports
| # | Организация | Год | Документ |
|---|---|---|---|
| 79 | OpenAI | 2023 | GPT-4 Technical Report |
| 80 | Anthropic Docs | 2026 | Claude models overview |
| 81 | Meta | 2024 | The Llama 3 Herd of Models |
| 82 | Mistral AI | 2024 | Mixtral of Experts |
| 83 | DeepSeek | 2024 | DeepSeek-V3 Technical Report |
| 84 | Google AI | 2026 | Gemini API models documentation |
| 85 | Meta | 2025 | Introducing Llama 4 |
| 86 | Qwen Team | 2025 | Qwen3: Think Deeper, Act Faster |
| 87 | Qwen Team | 2026 | Qwen3.5: Towards Native Multimodal Agents |
| 88 | xAI | 2025–2026 | Grok 4.20 |
Практические руководства
| # | Организация | Год | Название |
|---|---|---|---|
| 89 | Anthropic | 2024 | Building effective agents |
| 90 | OpenAI | 2025 | A practical guide to building agents |
| 91 | Anthropic | 2025 | Best practices for agentic coding |
| 92 | LangChain | 2024 | LangGraph documentation |
| 93 | LlamaIndex | 2024 | Building production RAG |
| 94 | Garcia-Molina & Salem | 1987 | Sagas |
Код и software engineering
| # | Автор(ы) | Год | Название | Вклад |
|---|---|---|---|---|
| 94a | Gupta et al. | 2026 | Revisiting the Role of Natural Language Code Comments in Code Translation | Комментарии о намерении помогают code transformation; избыточные комментарии шумят |
| 94b | Yang et al. | 2026 | Less is more: DocString compression in code generation | DocString как плотный носитель требований; 25–40% compression без потери качества |
| 94c | van Dam et al. | 2023 | Enriching Source Code with Contextual Data for Code Completion Models | Multi-line comments помогают умеренно; не вся разметка одинаково полезна |
| 94d | Cheng et al. | 2024 | Dataflow-Guided Retrieval Augmentation for Repository-Level Code Completion | Dataflow-graph улучшает repository-level completion |
| 94e | Chinthareddy | 2026 | Reliable Graph-RAG for Codebases | AST-derived graph полезен для multi-hop architectural retrieval |
| 94f | Ruan et al. | 2024 | SpecRover: Code Intent Extraction via LLMs | Specification inference усиливает агентный patching |
| 94g | Li et al. | 2025 | Your Coding Intent is Secretly in the Context and You Should Deliberately Infer It Before Completion | Intent inference before completion улучшает repository-scale generation |
Что меняется быстро, а что остаётся стабильным
Подробный разбор модельного ландшафта, архитектурных трендов и экономики inference — в Главе 24 (Ландшафт 2026). Здесь — ключевой принцип:
Стратегия: инвестируйте время в изучение стабильных принципов (разделение ролей, протокольный подход, верификация, делегирование инструментам). Конкретные модели и фреймворки — изучайте по мере необходимости, но не привязывайтесь.
С чего начать, если вы новичок
Рекомендуемый порядок чтения
Если вы только входите в тему LLM-инженерии, не обязательно читать книгу от корки до корки. Вот маршрут для быстрого старта:
- Глава 0 (Введение) — зачем всё это нужно
- Глава 6 (Промпт — это протокол) — самый практичный навык, начните с него
- Глава 3 (Галлюцинации) — поймите главный риск
- Глава 13 (Антигаллюцинационный контур) — как с этим риском бороться
- Глава 10 (Агент ≠ чат) — когда будете готовы строить системы
- Глава 1 (Токены и векторы) — для глубокого понимания механики
- Остальные главы — по мере необходимости
5 ресурсов для начинающих
- Andrej Karpathy, "Intro to Large Language Models" (YouTube, 2023) — лучшее часовое введение в LLM от одного из создателей GPT
- Anthropic, "Building effective agents" (2024) — практическое руководство по агентным архитектурам, написано инженерами для инженеров
- Chip Huyen, "Building LLM Applications for Production" (2023) — обзор production-паттернов и типичных ошибок
- Lilian Weng, "LLM Powered Autonomous Agents" (lilianweng.github.io, 2023) — глубокий обзор агентных архитектур с картинками и формулами
- DeepLearning.AI, "ChatGPT Prompt Engineering for Developers" (курс, 2023) — бесплатный курс от Andrew Ng, хороший первый шаг в промпт-инженерии
Дальнейшее чтение
Arxiv-теги для отслеживания
- cs.CL (Computation and Language) — основной раздел для NLP/LLM
- cs.AI (Artificial Intelligence) — агенты, рассуждения
- cs.LG (Machine Learning) — архитектуры, оптимизация
По темам
Архитектуры и механика моделей:
- Lilian Weng, The Transformer Family Version 2.0 (2023) — обзор всех вариаций Transformer
- Jay Alammar, The Illustrated Transformer — визуальное объяснение архитектуры
- Gu & Dao, Mamba (2023) — state space models как альтернатива attention
Промптинг и рассуждения:
- DAIR.AI, Prompt Engineering Guide (promptingguide.ai) — систематизированный справочник по техникам промптинга
- OpenAI, Prompt engineering best practices (docs) — официальные рекомендации
Агенты и инструменты:
- Anthropic, Model Context Protocol Specification (modelcontextprotocol.io) — полная спецификация MCP
- LangChain, LangGraph Conceptual Guides — паттерны агентных графов
- Sumers, T. R., Yao, S., Narasimhan, K. & Griffiths, T. L. (2024). Cognitive Architectures for Language Agents. Foundations and Trends in Machine Learning — обзор архитектур агентов
RAG и retrieval:
- Jerry Liu, Building Production RAG (LlamaIndex, 2024) — end-to-end руководство
- Gao et al., Retrieval-Augmented Generation for Large Language Models: A Survey (2024) — обзор RAG-техник
Безопасность и alignment:
- OWASP, Top 10 for LLM Applications (2025) — главные уязвимости LLM-систем
- Anthropic Research Blog — mechanistic interpretability, scaling laws
Рассылки и блоги
- The Batch (Andrew Ng) — еженедельный дайджест AI
- Anthropic Research Blog — механизмы безопасности, interpretability
- OpenAI Blog — новые модели и практики
- Simon Willison's Weblog — практический LLM engineering
- Lilian Weng's Blog (lilianweng.github.io) — глубокие обзоры архитектур
- Latent Space (podcast/newsletter) — интервью с практиками LLM-инженерии
- AI Engineer (newsletter) — фокус на applied AI и инженерных паттернах
Open-source фреймворки
- LangChain / LangGraph — агентные контуры, RAG
- LlamaIndex — RAG, structured data extraction
- Outlines — constrained generation
- vLLM — inference serving
- Ollama — локальный запуск моделей
- DSPy — программирование (не промптинг) LLM-пайплайнов
- Instructor — structured outputs через Pydantic
Глоссарий ключевых терминов
| Термин | Определение |
|---|---|
| Attention (Self-Attention) | Механизм, позволяющий каждому токену «смотреть» на другие токены в последовательности и взвешивать их значимость. Основа архитектуры Transformer. |
| BPE (Byte Pair Encoding) | Алгоритм токенизации, который итеративно объединяет наиболее частые пары символов в новые токены. |
| Chain-of-Thought (CoT) | Техника промптинга, побуждающая модель рассуждать пошагово перед выдачей финального ответа. |
| Context window | Максимальное количество токенов, которое модель может обработать за один вызов (промпт + ответ). |
| Continuous batching | Метод серверной обработки запросов, при котором новые запросы добавляются в batch по мере завершения предыдущих, без ожидания полного освобождения батча. Повышает throughput GPU. |
| CoVe (Chain-of-Verification) | Метод снижения галлюцинаций: модель генерирует ответ, формулирует проверочные вопросы, отвечает на них независимо, корректирует ответ. |
| ColPali | Метод визуального retrieval документов через vision-language модель. Индексирует страницы как изображения, минуя OCR-пайплайн. |
| DPO (Direct Preference Optimization) | Метод выравнивания модели по человеческим предпочтениям без отдельной reward model. Альтернатива RLHF с более простым пайплайном. |
| Embedding | Числовой вектор, представляющий токен, слово или фрагмент текста в многомерном пространстве. Близкие по смыслу элементы → близкие векторы. |
| Few-shot prompting | Подача нескольких примеров (input → output) в промпте, чтобы модель выучила паттерн без дообучения. |
| Fine-tuning | Дообучение предобученной модели на специализированных данных для адаптации к конкретной задаче. |
| Flash Attention | Семейство алгоритмов (Dao et al., 2022–2024) для вычисления attention с IO-awareness: точный результат при значительно меньшем расходе памяти GPU. |
| Function calling | Механизм, позволяющий модели возвращать структурированные вызовы внешних функций вместо (или вместе с) текстового ответа. |
| Галлюцинация | Генерация модели, которая выглядит правдоподобно, но не соответствует фактам или входным данным. |
| GraphRAG | Метод RAG, использующий граф знаний (knowledge graph) для структурирования и извлечения информации. |
| GRPO (Group Relative Policy Optimization) | Метод обучения с подкреплением (Shao et al., 2024), вычисляющий advantage внутри группы сэмплов без отдельной reward model. Ключевой метод обучения DeepSeek-R1. |
| Guardrails | Входные и выходные фильтры LLM-системы: блокировка injection, проверка формата, confidence thresholds, blocklist. |
| In-context learning | Способность модели выполнять задачу на основе примеров и инструкций в промпте, без изменения весов. |
| KV-кэш | Кэш Key-Value пар в attention-слоях. Хранит вычисленные представления предыдущих токенов, чтобы не пересчитывать их при генерации каждого нового токена. Основной потребитель GPU-памяти при длинном контексте. |
| LDD (Log-Driven Development) | Подход к разработке LLM-систем, при котором каждый LLM-вызов логируется (prompt hash, model, tokens, latency, response). Логи — основа для отладки, evals и incident response. |
| LoRA (Low-Rank Adaptation) | Метод эффективного дообучения: замораживает веса базовой модели, обучает низкоранговые матрицы-адаптеры. Сокращает затраты на порядки по сравнению с full fine-tuning. |
| MCP (Model Context Protocol) | Открытый протокол (Anthropic, 2024; с 2025 — проект Linux Foundation) для стандартизированной интеграции LLM с внешними инструментами и источниками данных. |
| Mamba | Архитектура State Space Model (Gu & Dao, 2023) с линейной сложностью по длине последовательности и селективным механизмом обработки состояний. Альтернатива Transformer для длинного контекста. |
| MoE (Mixture of Experts) | Архитектура, в которой для каждого токена активируется лишь часть параметров (экспертов), что позволяет масштабировать модель при ограниченных вычислительных затратах. |
| PagedAttention | Алгоритм управления KV-кэшем (Kwon et al., 2023), организующий память как виртуальные страницы. Устраняет фрагментацию и позволяет обслуживать больше параллельных запросов. Основа vLLM. |
| Prompt | Входной текст (инструкции, контекст, примеры), подаваемый модели. В LLM-инженерии — структурированный протокол взаимодействия. |
| RAG (Retrieval-Augmented Generation) | Паттерн: поиск релевантных документов → подача в контекст модели → генерация ответа с опорой на источники. |
| ReAct | Агентный паттерн: чередование шагов рассуждения (Reasoning) и действий (Acting) с наблюдением результатов. |
| RLHF (Reinforcement Learning from Human Feedback) | Метод дообучения модели с использованием человеческих предпочтений как сигнала вознаграждения. |
| RoPE (Rotary Position Embedding) | Метод кодирования позиции токена через вращение вектора в комплексном пространстве. Позволяет модели учитывать расстояние между токенами. |
| SentencePiece | Языконезависимый токенизатор (Kudo & Richardson, 2018), работающий на уровне сырого текста без предварительной токенизации по пробелам. Используется в Llama, Gemini и других моделях. |
| SFT (Supervised Fine-Tuning) | Дообучение модели на парах (input, target output) с учителем. Первый этап post-training после предобучения. |
| SLM (Small Language Model) | Компактная языковая модель (обычно < 10B параметров) для on-device или low-latency сценариев. Примеры: Phi-4-mini, Gemma 4 E2B. |
| SSM (State Space Model) | Класс архитектур (Mamba и др.), обрабатывающих последовательности за линейное время (вместо квадратичного у Transformer). |
| Speculative decoding | Метод ускорения inference (Leviathan et al., 2023): малая draft-модель генерирует кандидатов, большая модель верифицирует их параллельно. Ускорение без потери качества. |
| Structured output | Генерация ответа модели в строго определённом формате (JSON Schema, XML), гарантированном на уровне декодирования. |
| Temperature | Параметр, контролирующий «случайность» генерации. 0 → детерминированный ответ, >1 → более разнообразные (и рискованные) ответы. |
| Test-time compute | Выделение дополнительных вычислений на этапе инференса (extended thinking, self-consistency, beam search) для повышения качества. |
| Token | Минимальная единица текста, которую обрабатывает модель. Может быть словом, частью слова или символом. |
| Токенизация | Процесс разбиения текста на токены. Для русского языка одно слово часто разбивается на 2–4 токена. |
| Transformer | Архитектура нейросети (Vaswani et al., 2017), основанная на self-attention. Фундамент всех современных LLM. |
| Верификатор (Verifier) | Компонент агентной системы, проверяющий результаты выполнения на корректность, полноту и соответствие ограничениям. |
Магия закончилась. Началась инженерия.
Вы прочитали эту книгу — а значит, у вас есть то, чего не было у пионеров LLM-инженерии: карта местности. Вы знаете, как модель обрабатывает текст, почему она галлюцинирует, как строить контуры верификации и как проектировать агентов, которые не разваливаются на третьем шаге. Архитектуры будут меняться, модели — становиться мощнее, но принципы, описанные здесь, останутся вашим фундаментом. Стройте системы, а не промпты. Измеряйте, а не надейтесь. И помните: лучшая LLM-система — та, которая работает в production, а не та, которая впечатляет в демо.
Навигация:
- Назад: Глава 24. Ландшафт 2026
- В начало: Введение