# 2.1 大语言模型工作原理

> 💡 关于大语言模型基础原理（Transformer 架构、自注意力机制、自回归生成）的详细介绍，请参阅《AI 入门指南》第六章或《大语言模型底层解析》。

本章重点讨论与上下文工程相关的进阶技术：注意力机制的计算复杂度、优化技术，以及这些如何影响上下文窗口的设计。

## 2.1.1 注意力机制与上下文

自注意力机制的计算过程决定了模型如何利用上下文：

1. **Query、Key、Value**：每个 Token 被转换为三个向量
2. **注意力分数计算**：Query 与所有 Key 计算相似度
3. **加权求和**：根据注意力分数对 Value 加权求和
4. **输出表示**：得到融合了上下文信息的 Token 表示

关键点在于：每个 Token 的最终表示都包含了对整个上下文的“感知”。位置靠后的 Token 可以“看到”之前的所有 Token，这就是上下文窗口的技术基础。

## 2.1.2 计算复杂度

标准自注意力的计算复杂度是 $O(n^2)$，其中 $n$ 是序列长度。这意味着：

* 序列长度翻倍，计算量增加 4 倍
* 这是限制上下文窗口大小的主要技术瓶颈

为解决这一问题，研究者提出了多种优化技术：

| 技术      | 原理               | 代表模型                |
| ------- | ---------------- | ------------------- |
| 稀疏注意力   | 只计算部分位置对的注意力     | Longformer, BigBird |
| 线性注意力   | 近似自注意力，降低复杂度     | Linear Transformer  |
| 滑动窗口    | 限制每个位置只关注局部      | Mistral             |
| 分组查询注意力 | 减少 Key-Value 头数量 | LLaMA 2, Gemini     |

## 2.1.3 预训练与涌现能力

大语言模型通过在海量文本上预训练，学习语言的统计规律和世界知识。随着模型规模、训练数据、后训练方法和工具接口共同演进，模型会逐步表现出更强的 **涌现能力**（Emergent Abilities）：

* 少样本学习：通过几个示例就能理解新任务
* 逻辑推理：执行多步推理
* 代码生成：根据自然语言描述生成代码
* 工具使用：理解和调用外部工具

需要注意的是，把能力简单归因于某个固定参数门槛往往过于粗糙。许多较小模型在经过高质量训练、蒸馏、工具增强或专门后训练后，也能表现出其中一部分能力；而更大的模型通常只是在鲁棒性、泛化范围和组合能力上更强。

这些能力使得大模型能够胜任复杂任务，但前提仍是提供合适的上下文来激活和引导它们。这正是上下文工程的意义所在。

## 2.1.4 模型架构的演进

大模型的发展经历了多个重要阶段，呈现加速演进的特点：

**OpenAI GPT 系列**：从 GPT-3（2020年，175B 参数，4K 上下文）→ GPT-3.5（2022年，改进推理与指令遵循）→ GPT-4（2023年3月，多模态能力，8K/32K 上下文）→ GPT-4 Turbo（2023年11月，128K 上下文）→ GPT-5 系列（2025–2026年迭代；截至 2026-05-17，官方模型页列出的 GPT-5.4/5.5 档位已达到 1M 上下文）。

**Meta LLaMA 系列**：从 LLaMA（2023年，开源基座）→ LLaMA 2（2023年7月，70B 增强）→ LLaMA 3（2024年，改进指令遵循）→ Llama 4 Scout（2025年4月，10M 超长上下文）与 Llama 4 Maverick（2025年4月，1M 上下文高性能）。

**Anthropic Claude 系列**：从 Claude 1/2（2023年，基础能力）→ Claude 3 系列（2024年3月，包括 Opus/Sonnet/Haiku，200K 上下文）→ Claude Opus 4.6（2026年2月，1M 上下文）与 Claude Sonnet 4.6（2026年2月，1M 上下文）以及 Claude Haiku 4.5（2025年10月，200K 轻量版）→ Claude Opus 4.7（2026年4月，加强 SWE 与视觉、新 tokenizer）。

这些演进在以下核心维度持续推进：

* **参数规模**：从千亿级向万亿级发展
* **上下文窗口**：从 2K/4K → 8K/32K → 128K → 200K/1M → 10M
* **多模态能力**：从纯文本扩展到图像、音频、视频
* **效率优化**：推理速度提升，成本降低，稀疏注意力等技术应用

理解这些演进趋势，有助于把握上下文工程的未来发展方向。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://yeasy.gitbook.io/context_engineering_guide/di-yi-bu-fen-ren-shi-shang-xia-wen-gong-cheng/02_llm_basics/2.1_how_llm_works.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
