如果把 2025 年的 AI 圈浓缩成一个词,那是 “Prompt Engineering”。把 2026 年上半年的 AI 圈浓缩成一个词,那一定是 “Context Engineering”(上下文工程)。
这个概念从 2025 年中由 Karpathy 和 Shopify CEO Tobi Lutke 推文带入主流,到 Anthropic 给出正式定义,再到 2026 年 2 月 OpenAI/Harness Engineering 的延伸——只用了不到 1 年。
为什么所有大厂都在讨论它?因为写好一句话的提示词已经不够了,真正决定 AI Agent 表现的是”它能看什么、看到什么”。
这篇文章要解决 3 件事:
- 认知升级:Context Engineering 到底解决什么问题、跟 Prompt Engineering 区别在哪
- 7 大核心策略:RAG、Memory、Tool Selection、压缩、隔离、动态注入、结构化输出,每个都配代码
- 3 个真实案例:用 LangChain 搭一个能”读 100 页 PDF 然后回答问题”的 Agent
读完全文你应该能用 Context Engineering 思路设计一个能在生产环境稳定运行的 AI Agent。
一、为什么 2026 年必须懂 Context Engineering
💡 Prompt Engineering 决定”一句话怎么写好”,Context Engineering 决定”整个任务过程模型能看到什么”。
读完本章你能得到什么:
- 清楚区分 Prompt / Context / Harness 3 个概念
- 明白为什么 Anthropic、OpenAI、Google 都在押注 Context Engineering
- 判断自己 / 团队是否需要马上学这个技能
1.1 从 Prompt 到 Context:AI 工程语言的 3 次跃迁
按 163.com 那篇《从 Prompt 到 Loop》总结:
- Prompt Engineering(2023 起):人写指令、AI 执行,核心是”把话说清楚”
- Context Engineering(2025 中起):人退到设计信息供给,模型自主决定”看什么”
- Harness Engineering(2026.2 起):Harness 是缰绳/马鞍/路,约束 Agent 行为,让错误在结构上不可能发生
每次跃迁都是”人退一步、AI 进一步”的过程。2026 年不懂 Context Engineering,写提示词再精也跑不赢会设计上下文的团队。
1.2 Context Engineering 解决 3 个核心问题
- 信息过载:128K 上下文窗口看着大,但 Agent 跑 20 轮就装满了
- 无关噪声:把不相关的工具结果塞进上下文,模型反而被干扰
- 幻觉/失忆:长对话后模型忘记早期关键信息,开始编造
GITCODE 那篇《Harness、SDD、Context Engineering 本质》说得很直接:模型在执行任务时”看到”了什么信息,决定它的输出质量。
1.3 真实场景:3 类必须上 Context Engineering 的情况
- 多轮对话客服:30 轮后模型忘了用户订单号、地址、需求
- 长文档分析:100 页 PDF 一次性塞进去,模型读不完、读不准
- 多 Agent 协作:5 个 Agent 互相传话,上下文越来越大、噪音越来越多
1.4 跟 Prompt Engineering 区别
| 维度 | Prompt Engineering | Context Engineering |
|---|---|---|
| 关注点 | 怎么把任务说清楚 | 模型能”看”到什么 |
| 时机 | 任务开始时一句话 | 整个任务生命周期 |
| 内容 | 用户输入 + 指令 | 检索结果 + 历史 + 工具输出 + 系统提示 |
| 技能 | 角色设定 + 思维链 | RAG + 记忆 + 上下文管理 |
| 角色 | 人是主动方 | 人退到设计信息供给 |
一句话:Prompt 写”做什么”,Context 写”看什么”。
3 个反例看懂区别:
- 错:Prompt 思维(以为写好一句话就完事)→ “你是专家,分析下这份报告”
- 对:Context 思维(控制模型能看到什么)→ 选 Top-3 报告章节 + 补充会议纪要 + 加分析师背景资料
- 错:Agent 不会用工具 → “请用 search 工具查一下”
- 对:Agent 不知道有 search 工具 → 在 system prompt 加上”你有一个内部搜索工具,触发条件是…”
- 错:模型长对话后失忆 → 加更多 history
- 对:上下文不是越多越好 → 定期压缩 + 选择性保留关键决策
1.5 3 类人必须学
- AI 应用开发者:Agent 跑 1 个月用户就流失,不学 Context Engineering 解决不了
- 企业 IT 负责人:内部知识库+客服 Agent 必走这条路
- 产品经理:理解 Context 才能设计出”能记住用户”的 AI 产品
1.6 业界声音:3 个大牛的话
- Andrej Karpathy(OpenAI 创始人之一):“The hottest new programming language is English.” 提示词是”自然语言编程”,但提示词只是一部分,上下文才是完整工程
- Tobi Lutke(Shopify CEO):2025 年 5 月推文引爆 Context Engineering 这个词,他说“Context Engineering 就是把对的上下文,送到对的模型手里”
- Anthropic 官方博客:“Long context ≠ good context.” 上下文窗口变大后,质量比数量更重要
1.7 学完这篇能拿下的 5 个技能
- 能区分 Prompt / Context / Harness 三个工程层次的差异
- 在 LangChain 中用 7 大策略组合设计 Agent
- 解决 80% 长上下文相关问题(成本、衰减、检索不准)
- 跟同行讨论 AI Agent 架构时有共同语言
- 1 周内设计一个生产级 RAG Agent
二、Anthropic 官方定义:什么是 Context Engineering
💡 Anthropic 在 2025 年 11 月发布的《Effective context engineering for AI agents》是这个领域最系统的官方指南。
2.1 Anthropic 的官方定义
“Context Engineering 是在 Agent 任务生命周期中,动态地精选、格式化、注入、压缩、隔离上下文信息的工程学科。”
拆解一下:
- 精选(Select):从海量信息里挑出相关的
- 格式化(Format):怎么呈现给模型(XML/JSON/结构化)
- 注入(Inject):什么时候把什么信息塞进去
- 压缩(Compress):上下文满了怎么办
- 隔离(Isolate):不同任务用不同的上下文空间
2.2 5 大技术分层
Anthropic 把 Context Engineering 拆成 5 个层次(从底层到上层):
- Tokens 层:怎么用 Token 表示信息(拼写/缩写/压缩)
- Prompts 层:系统提示、用户输入、少样本示例
- Messages 层:对话历史、多轮交互
- Tools 层:工具描述、工具输出、错误信息
- Knowledge 层:RAG 检索结果、外部知识源
实战中 5 层都要考虑,不是只关注 Prompts 层。
2.3 跟 RAG / Prompt Engineering 的关系
- Prompt Engineering 是 Context Engineering 的子集——专注于第 2 层
- RAG 是 Context Engineering 的实现方式——解决第 5 层
- Memory 也是——解决第 3 层(历史压缩)
Context Engineering 是这三者的上位概念。
2.4 2026 年 3 大典型应用场景
- Claude Code(Anthropic 自己的代码 Agent):用 Context Engineering 决定”该看哪些文件、该改哪些代码”
- Devin(AI 软件工程师):Sub-Agent 隔离策略管理多个任务上下文
- Manus(通用 Agent):多用户多任务下的上下文隔离 + 动态注入
三、Context Engineering 7 大核心策略

💡 这 7 个策略是 2026 年主流 AI 工程的”通用原语”,掌握后能组合出几乎所有 Agent 架构。
3.1 策略 1:Write Context(写入上下文)
把关键信息主动写进上下文,别让模型自己找:
prompt = "用户想买什么?"
# 正例:把检索到的用户信息写进上下文
context = await get_user_history(user_id)
prompt = f"""
用户历史偏好:{context}
新问题:用户想买什么?
"""
3.2 策略 2:Select Context(选择上下文)
只把相关的内容塞进上下文,别把 100 页全塞:
from langchain_community.embeddings import OpenAIEmbeddings
# 用向量检索选 Top-5 相关文档
retriever = Chroma.from_documents(docs, OpenAIEmbeddings()).as_retriever(k=5)
relevant = retriever.get_relevant_documents(question)
3.3 策略 3:Compress Context(压缩上下文)
超过 80% 窗口容量就要压缩,别等溢出:
def compress_history(messages):
summary = llm.invoke(f"用 200 字总结以下对话:\n{messages}")
return [{"role": "system", "content": f"历史总结:{summary}"}]
3.4 策略 4:Isolate Context(隔离上下文)
子任务用子 Agent,别让主 Agent 上下文污染:
subagent_result = subagent.run(
task="查询北京天气",
context_budget=2000 # 限制子 Agent 上下文
)
3.5 策略 5:Tool Selection(工具选择)
工具描述要清晰,别让模型乱选:
tools = [{"name": "search", "description": "搜索"}]
# 正例:精确工具描述
tools = [{
"name": "search_internal_docs",
"description": "在公司内部知识库中搜索文档。当用户问公司制度、产品手册时使用。返回格式:文件路径+摘要",
"parameters": {"query": "string"}
}]
3.6 策略 6:Dynamic Injection(动态注入)
不同任务阶段塞不同上下文,别一成不变:
context += load_planning_templates()
elif task_stage == "execution":
context += load_tool_schemas()
3.7 策略 7:Structured Output(结构化输出)
让模型输出 JSON 而不是散文,方便后续 Agent 解析:
model="gpt-4o",
response_format={"type": "json_object"}, # 强制 JSON
messages=[{"role": "user", "content": "提取订单信息"}]
)
实操建议:
- 7 个策略不是孤立的,实战中通常组合用 3-5 个
- 简单对话用 3.1+3.2 就够;复杂 Agent 用 3.1-3.6 全套
- 第一次写 Agent 先用 3.1 写入,跑通了再加 RAG/压缩/隔离
四、硬件视角:Context Engineering 跟 Token 成本的关系
💡 Context Engineering 不仅是技术决策,更是成本决策。上下文越长、越全面,账单越惨。
4.1 上下文长度 vs 成本的指数曲线
LLM API 按 Token 计费,上下文越长单价越贵。32K 上下文比 8K 上下文贵 2-4 倍,不只是 4 倍:
| 模型 | 8K 输入 | 32K 输入 | 128K 输入 |
|---|---|---|---|
| GPT-4o | $2.5/M | $5/M(2x) | $10/M(4x) |
| Claude Opus 4.8 | $15/M | $30/M(2x) | $75/M(5x) |
| DeepSeek V3 | ¥1/M | ¥2/M(2x) | ¥4/M(4x) |
结论:用 32K 上下文跑 1000 次 = 8000 元;用 8K + RAG 跑 1000 次 = 400 元。Context Engineering 不是技术问题,是钱的问题。
4.2 长上下文的”注意力衰减”
研究显示,模型对上下文首尾关注度高,中间内容注意力下降(Lost in the Middle 现象):
[衰减] 中间(历史对话+检索结果)
[高注意力] 尾部(最近3-5轮对话)
所以关键信息放头部或尾部,中间放次要信息。
4.3 缓存:Context Engineering 的隐藏省钱技巧
大多数 API 提供”Prompt Caching”,重复的上下文前缀只算一次费用:
response = client.chat.completions.create(
model="claude-opus-4-8",
system=[
{"type": "text", "text": long_doc, "cache_control": {"type": "ephemeral"}}
],
messages=[{"role": "user", "content": "总结这份文档"}]
)
# 第一次调用 1000 token,第二次只算 50 token(问题部分)
实测:用 Claude 的 prompt caching,月度账单能砍 70%。
4.4 3 个真实账单对比案例
案例 1:100 客户 × 每天 50 轮对话
| 架构 | 月成本 |
|---|---|
| 32K 全上下文 + Claude Opus 4.8 | 75000 元 |
| 8K 上下文 + RAG + Claude Opus 4.8 | 12000 元 |
| 8K 上下文 + RAG + DeepSeek V3 | 1500 元 |
| 8K 上下文 + RAG + 本地 Qwen 2.5 7B | 30 元(电费) |
案例 2:客服 Agent 单次任务成本
| 架构 | 成本 | 备注 |
|---|---|---|
| 无缓存 + 长上下文 | 1.50 元/次 | 每次全量重发上下文 |
| 启用缓存 + 8K 上下文 | 0.15 元/次 | 缓存命中率 80% |
| 启用缓存 + RAG | 0.05 元/次 | 检索代替全量 |
案例 3:100 人企业 RAG 知识库月成本
- 用户:100 人,每人每天问 20 次
- 文档库:10 GB,常见文档 100 份
- 方案 A(长上下文 128K):$2/天 × 30 = $60/月
- 方案 B(RAG + 8K 上下文):$0.2/天 × 30 = $6/月
- 方案 C(本地 Qwen 7B + RAG):$0 + $5 电费/月
省钱 90% 以上,Context Engineering 是 ROI 最高的优化方向。
4.5 缓存命中率优化 3 个技巧
1. 把不变内容放前缀
system=[{"text": long_doc, "cache_control": {"type": "ephemeral"}}]
# 错误:长文档作为 user message
messages=[{"role": "user", "content": f"文档:{long_doc}\n问题:{q}"}]
2. 控制前缀长度
- 1024 token 以内:100% 缓存
- 1024-2048:约 50% 缓存
- 超过 2048:缓存失效,费用重新算
3. 用语义缓存代替上下文缓存
- 相同问题的答案直接复用,不调 LLM
- 命中率 30-50% 时能省 40% 费用
五、LangChain 实战:搭一个能”读 100 页 PDF 然后回答问题”的 Agent

💡 项目只装一个 PDF 就能跑起来,不依赖任何企业级接口,个人开发者10 分钟能跑通。
5.1 项目目标
让 Agent 读 100 页 PDF 文档(10 万字),用户问问题时能基于文档内容回答。
5.2 适用场景
企业产品手册问答、学术论文分析、法律合同审查、技术文档检索。
5.3 前置准备
pip install langchain langchain-community langchain-openai \
chromadb pypdf tiktoken
# 2. 准备 PDF
mkdir -p ./pdfs
# 把 100 页 PDF 放进去
# 3. 设置 API Key
export OPENAI_API_KEY='***'
5.4 完整代码(保存为 pdf_rag_agent.py)
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain_community.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings, ChatOpenAI
from langchain.chains import RetrievalQA
from langchain.memory import ConversationBufferWindowMemory
from langchain.prompts import PromptTemplate
import os
# ========== 第 1 步:加载并切分 PDF ==========
loader = PyPDFLoader('./pdfs/100pages.pdf')
pages = loader.load()
print(f'加载了 {len(pages)} 页')
text_splitter = RecursiveCharacterTextSplitter(
chunk_size=1000, # 每块 1000 字符
chunk_overlap=200, # 块之间重叠 200 字符
)
chunks = text_splitter.split_documents(pages)
print(f'切分为 {len(chunks)} 个块')
# ========== 第 2 步:向量化入库 ==========
embeddings = OpenAIEmbeddings(model='text-embedding-3-small')
vectorstore = Chroma.from_documents(chunks, embeddings)
print('已存入向量库')
# ========== 第 3 步:搭建带记忆的 RAG 链 ==========
llm = ChatOpenAI(model='gpt-4o-mini', temperature=0)
# 关键:Context Engineering 体现在 4 个地方
# 1. 检索只取 Top-3(避免上下文过大)
retriever = vectorstore.as_retriever(search_kwargs={'k': 3})
# 2. 提示词明确告诉模型"只用上下文信息回答"
prompt_template = """基于以下参考资料回答问题。
如果参考资料里没有答案,请说"未找到相关信息",不要编造。
参考资料:
{context}
对话历史:
{chat_history}
当前问题:{question}
"""
PROMPT = PromptTemplate(
template=prompt_template,
input_variables=['context', 'chat_history', 'question']
)
# 3. 加窗口记忆(只保留最近 5 轮,避免上下文爆炸)
memory = ConversationBufferWindowMemory(
k=5,
memory_key='chat_history',
return_messages=True
)
# 4. 组装
qa = RetrievalQA.from_chain_type(
llm=llm,
chain_type='stuff', # 把检索结果一次性塞进 prompt
retriever=retriever,
memory=memory,
chain_type_kwargs={'prompt': PROMPT}
)
# ========== 第 4 步:交互式问答 ==========
print('\n=== PDF 问答 Agent 已就绪 ===')
while True:
q = input('\n问 PDF 的问题(q 退出):')
if q.lower() == 'q':
break
result = qa.invoke({'query': q})
print(f'\nAI 回答:{result["result"]}')
5.5 怎么跑
# 2. 设置 API Key
export OPENAI_API_KEY='sk-…'
# 3. 运行
python3 pdf_rag_agent.py
# 4. 试试问:
问 PDF 的问题:第3章的核心结论是什么?
AI 回答:(基于 PDF 内容的回答)
调试技巧:运行时在终端观察”加载 PDF 用了多久、切了多少块、检索出几篇文档” 这些中间状态,能帮你快速定位问题。
5.6 预期结果
- 加载 100 页 PDF:5-10 秒
- 单次问答响应:3-5 秒
- 准确率(基于文档):90%+
- 5 轮对话后仍能记住上下文
5.7 故障排查
FileNotFoundError→ 确认 PDF 路径是./pdfs/100pages.pdf- 回答”未找到相关信息”→ 调整 chunk_size(试试 500 或 2000)
- 回答编造内容 → 把 temperature 降到 0
- 速度太慢 → 换
gpt-4o-mini或本地qwen2.5:7b(参考上一篇) - Token 超限 → 减少
k值(从 3 改成 2)
5.8 进阶玩法
跑通基础版后,加这 3 个 Context Engineering 技巧:
1. 加 Re-ranking:检索 Top-20,再用 Cross-Encoder 重排取 Top-3
from langchain.retrievers.document_compressors import CohereRerank
# 提高召回质量
2. 加 HyDE(Hypothetical Document Embeddings):先用模型生成”假设答案”,再检索相似文档
3. 加 Multi-Query Retriever:让 LLM 自动改写 3-5 个问题,扩展检索范围
4. 加上评估器:用 LLM 评估回答质量,差的重检索
evaluator = load_evaluator("answer_relevance")
5.9 实战中 3 个关键参数调优
chunk_size 怎么选:
- 技术文档(代码多):500-800 字符
- 产品手册(段落长):1000-1500 字符
- 论文(公式图表):800-1200 字符
k 值(检索数量)怎么选:
- 简单问题:k=3
- 复杂问题:k=5-8 + Re-ranking
- 需要多角度:k=10 + Multi-Query
temperature 怎么选:
- 知识检索:0
- 文档总结:0.3
- 创意生成:0.7-1.0
六、Anthropic 官方 Context Engineering 4 大最佳实践
💡 Anthropic 官方 4 大原则。这 4 点不是选诜项,是 2026 年生产级 Agent 的底线。
Anthropic 在 2025 年 11 月发布的《Effective context engineering for AI agents》是被引用最多的实操指南。核心 4 点:
6.1 实践 1:长上下文 ≠ 好上下文
Anthropic 原话:“Just because the model can read 200K tokens doesn’t mean it should.” 上下文窗口变大后,用最相关的信息填满它比”全塞进去”更重要。
6.2 实践 2:让 Agent 自己管理上下文
不要在代码里硬塞上下文,让 Agent 用工具(TodoList、Memory)自己管理:
prompt = f"用户问:{q}\n历史:{history}\n文档:{docs}\n…"
# 正例:给 Agent 一个"记事本"工具
agent_tools = [search_tool, todo_tool, memory_tool]
agent = create_agent(llm, tools=agent_tools)
6.3 实践 3:长任务用”压缩 + 检索”代替”全上下文”
不要等上下文满了再压缩,主动定期摘要:
if turn % 10 == 0:
summary = summarize(messages)
messages = [{"role": "system", "content": f"历史:{summary}"}]
6.4 实践 4:用 Sub-Agent 隔离上下文
复杂任务拆成多个 Sub-Agent,主 Agent 只传”任务结果”:
researcher = SubAgent(tools=[search, browse])
coder = SubAgent(tools=[python_repl])
writer = SubAgent(tools=[style_guide])
# 主 Agent 只拿到最终结果,不接触 Sub-Agent 的过程
result = orchestrator.run([researcher, coder, writer])
七、5 个真实踩坑案例

7.1 坑 1:上下文满了直接 500 错误
现象:长对话跑到 50 轮,突然报 “context_length_exceeded”。
原因:128K 看着大,但工具结果(搜索返回 10 个文档)+ 多模态(图片 base64)很容易撑爆。
解决:
- 强制每 10 轮压缩一次
- 工具结果截断(只取前 2000 字符)
- 多模态用 URL 引用而不是内联
7.2 坑 2:RAG 检索不准
现象:明明文档里有答案,模型说”未找到”。
原因:chunk_size 太大(2000+)或太小(<200)、没有用 HyDE/重排序。 解决:
- 调 chunk_size 到 500-1000
- 加 Cross-Encoder rerank
- 用多查询扩展
7.3 坑 3:模型忽略系统提示
现象:明确说了”用 JSON 输出”,模型还是返回散文。
原因:系统提示被放在用户消息前面,被模型当成”礼貌性建议”忽略。
解决:
- 用
response_format={"type": "json_object"}强制 - 关键指令放在用户消息末尾(Lost in the Middle 的逆运用)
7.4 坑 4:工具描述模糊导致乱选
现象:Agent 调错工具、把 search_internal 调成 search_web。
原因:工具描述写”搜索”过于宽泛。
解决:
- 工具描述 30+ 字符、明确触发条件
- 列举”应该用”和”不应该用”的例子
7.5 坑 5:成本失控
现象:单次 Agent 任务花 5 元,比人工还贵。
原因:每次都把所有上下文塞进去,没用 Prompt Caching。
解决:
- 长文档用 Prompt Caching(前缀缓存)
- 小任务用小模型(gpt-4o-mini / Claude Haiku)
- 限制 max_tokens 输出
实操建议:
- 第一次跑 Agent 先看 Token 消耗,再决定要不要优化
- 用 OpenAI 的 Token 监控 API 设置月度预算告警
- 80% 成本来自 20% 的长上下文任务,找出来优先优化
八、Context Engineering 工具栈推荐
💡 选工具看场景,不是看热度。生产环境选成熟的(LangChain / LlamaIndex),创新场景选小众的(CrewAI / DSPy)。
8.1 LangChain / LangGraph
- 优势:Python 生态最成熟、文档最全
- 适合:通用 RAG、多 Agent 编排
- 坑:抽象层太深,简单场景反而麻烦
8.2 LlamaIndex
- 优势:专注 RAG、数据接入最强(300+ 数据源)
- 适合:文档问答、结构化数据检索
- 坑:多 Agent 支持弱
8.3 CrewAI
- 优势:多 Agent 协作开箱即用
- 适合:研究/写报告/代码审查等协作场景
- 坑:单 Agent 场景用不上
8.4 AutoGen(微软)
- 优势:学术派、人在回路(Human-in-the-loop)支持好
- 适合:研究、复杂决策链
- 坑:学习曲线陡、生产部署案例少
8.5 DSPy
- 优势:用编译代替手写 Prompt,自动优化
- 适合:大规模 Prompt 优化、A/B 测试
- 坑:概念新颖、案例少
实操建议:
- 个人开发者:从 LangChain 上手,2 小时能跑通 RAG
- 企业生产:LangGraph(LangChain 团队出品,状态管理更稳)
- 多 Agent 协作:CrewAI / AutoGen
- Prompt 优化研究:DSPy
九、6 个常见问题 FAQ
9.1 Context Engineering 和 Prompt Engineering 哪个重要?
都重要,但阶段不同。简单对话(1-3 轮)Prompt 决定质量;复杂 Agent(10+ 轮)Context 决定生死。
9.2 上下文窗口越大越好吗?
不是。128K 上下文单价是 8K 的 4 倍,噪音也增加。Anthropic 官方建议”用最相关的填满它”。
9.3 怎么判断我的 Agent 缺 Context Engineering?
3 个症状:① 跑 5 轮后模型开始编造 ② 用户反馈”它听不懂我说话” ③ 单次任务成本超过 1 元。
9.4 RAG 和长上下文哪个划算?
10 万字以下用 RAG(便宜 80%),10 万字以上直接用长上下文(Claude 200K / Gemini 1M)。
9.5 多 Agent 一定要吗?
不一定。单 Agent + 工具 能解决 80% 场景。多 Agent 适合”任务能拆、Sub-Agent 上下文独立”的复杂场景。
9.6 怎么学 Context Engineering 最快?
3 步:① 看 Anthropic 官方博客 ② 用 LangChain 跑通 1 个 RAG ③ 把 LangChain 代码改成 5 大策略(Write/Select/Compress/Isolate/Inject)都用上。
十、3 个月 Context Engineering 进阶路径
10.1 第 1 个月:跑通 RAG
- Week 1-2:LangChain + Chroma + OpenAI Embedding 文档问答
- Week 3-4:加 Prompt Caching + 工具调用
10.2 第 2 个月:上多 Agent
- Week 5-6:LangGraph 状态管理
- Week 7-8:CrewAI 多 Agent 协作
10.3 第 3 个月:性能优化
- Week 9-10:Re-ranking + HyDE
- Week 11-12:Token 成本优化(Prompt Caching + 模型分级)
3 个月后你就是”Context Engineer”——2026 年最缺的人才之一。
十一、参考资料
本文涉及的工具和概念均来自以下官方来源:
- Anthropic 官方博客:Effective context engineering for AI agents(2025-11)
- LangChain 官方文档:https://python.langchain.com/docs/
- OpenAI Cookbook:Prompt Caching 最佳实践
- LlamaIndex 官方文档:https://docs.llamaindex.ai/
- 36 氪 2026 AI 智能体指南:https://36kr.com/p/3808851537174018
- CSDN GitCode:Harness、SDD、Context Engineering 本质 https://gitcode.csdn.net/6a2656cd662f9a54cb7b39c8.html
- 网易《从 Prompt 到 Loop》:https://www.163.com/dy/article/KV9093R8055616YL.html
互动话题
你做 AI Agent 时,Context Engineering 哪个策略最让你头疼?是 RAG 检索不准、上下文爆炸、还是成本失控?
评论区聊聊,呼声最高的 3 个问题我下一篇文章里集中解答。如果想看”Context Engineering 在企业客服场景的完整实战”教程,点赞告诉我,我单独开一篇深度拆解。
3 类人适合学 Context Engineering
如果你不确定该不该学,看这 3 个问题:
- 你的 Agent 需要处理多轮对话吗? 是 → 必学
- 你的 Agent 要访问外部数据(RAG)吗? 是 → 必学
- 你的 Agent 单次任务 Token 成本超 0.1 元吗? 是 → 必学
推荐资源加载顺序:
- 先看 Anthropic 博客(1 小时)了解概念
- 跑本文 LangChain 例子(2 小时)体验 RAG
- 在自己项目里改用 7 大策略(1 周)
- 加入 Anthropic / LangChain Discord(随时问问题)
装个术语表(社区习惯说法):
- RAG:检索增强生成
- Chunk:文档分块
- Embedding:文本向量化
- Re-ranking:检索结果重排
- HyDE:假设文档嵌入
- Memory:记忆机制
- Tool Use:工具调用(= Function Calling)
- Agent Loop:代理循环
- Sub-Agent:子代理
- Harness:鞘具/约束框架
本术语表在 Anthropic / OpenAI 官方文档中都能查到。
附一:Context Engineering 必读书单
深入学习 Context Engineering 推荐这 5 份资料:
- Anthropic 官方博客:《Effective context engineering for AI agents》(2025-11)
- URL:https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents
- 推荐指数:⭐⭐⭐⭐⭐
- 必读,Context Engineering 领域最权威的官方指南
- Andrej Karpathy 推文合集(2025-05)
- 推荐指数:⭐⭐⭐⭐⭐
- 概念起源,看完理解为什么这个领域会火
- LangChain 官方文档(更新及时)
- URL:https://python.langchain.com/docs/
- 推荐指数:⭐⭐⭐⭐
- 实战 API 参考,7 大策略每个都有代码示例
- LangGraph 状态管理指南
- URL:https://langchain-ai.github.io/langgraph/
- 推荐指数:⭐⭐⭐⭐
- 复杂 Agent 必备,理解状态机如何管理 Context
- 论文《Lost in the Middle》
- 推荐指数:⭐⭐⭐
- 为什么中间上下文注意力衰减,10 分钟读完改认识
附二:Context Engineering 5 个反模式(踩雷警告)
2026 年社区总结的 5 个常见错误:
1. 上下文堆叠(Context Stacking)
- 反例:把”系统提示 + 用户问题 + 历史对话 + 检索结果 + 工具输出”全塞
- 后果:Token 爆、噪音大、模型抓不住重点
- 解决:用 7 大策略选择性注入
2. 工具描述简写(Tool Description Vague)
- 反例:
"search": "搜索" - 后果:Agent 不会调、调错、重复调
- 解决:30+ 字符描述 + 触发条件 + 输出格式
3. 无记忆 Agent(Memoryless Agent)
- 反例:每轮对话独立处理
- 后果:用户说”我上条提的 X”模型听不懂
- 解决:加
ConversationBufferWindowMemory(k=5)或长期记忆库
4. 长 Prompt 不拆(Long Prompt Monolith)
- 反例:单个 5000 字 Prompt
- 后果:调试难、修改难、团队合作难
- 解决:拆成 system / user / context / tools 四个独立部分
5. 不用缓存(No Caching)
- 反例:每次都把长文档重新发给 API
- 后果:月度账单 3-5 倍
- 解决:长文档用 Prompt Caching(前缀缓存)
附三:Context Engineering 5 大未来趋势(2026 下半年)
跟着 OpenAI/Anthropic/Google DeepMind 的路线图,未来 12 个月这 5 个方向会重塑 Context Engineering:
1. 1M+ 上下文窗口成熟
- Google Gemini 1.5 Pro 已是 1M(200 万 Token)
- Claude 4 Opus 是 200K,年底到 500K
- 价格会贵 3-5 倍,但能装下《5 1 选集》全文
2. 动态上下文调度
- 模型自己决定”什么时候看什么”
- Anthropic 的 “Thinking” 功能已预演了这个能力
- 不用开发者手动选择上下文,模型自动筛选
3. 跨会话记忆
- 今天的对话明天还记得
- 需要统一记忆架构,OpenAI Memory、Anthropic Project、Mastra
- 企业 Agent 标配
4. 多模态上下文
- 文本 + 图片 + 音频 + 视频同时塞入上下文
- 8K token 中可能含 4K 文本 + 4K 图像描述
- Anthropic Claude 4、Google Gemini 多模态已领跑
5. RAG 进入”Agentic RAG” 时代
- Agent 自己决定什么时候检索、检索什么
- 传统 RAG 是”先检索再生成”,Agentic RAG 是”边思考边检索”
- LlamaIndex、LangGraph、Letta 是代表框架



我要评论