上下文工程:大模型时代的新范式,彻底解放人工调优
上下文工程是由AI大神Andrej Karpathy提出的新概念,旨在解决RAG系统局限性,通过优化输入给大模型的上下文信息提升问答质量。它涵盖数据准备、检索优化和上下文构建等环节,采用写入-筛选-压缩-隔离策略。未来将实现自动化,突破RAG限制进行深度加工,有望彻底解放人工调优,成为大模型应用的关键技术。
上下文工程是由AI大神Andrej Karpathy提出的新概念,旨在解决RAG系统局限性,通过优化输入给大模型的上下文信息提升问答质量。它涵盖数据准备、检索优化和上下文构建等环节,采用写入-筛选-压缩-隔离策略。未来将实现自动化,突破RAG限制进行深度加工,有望彻底解放人工调优,成为大模型应用的关键技术。
目录:
1、上下文工程解决什么问题
2、上下文工程所包含的范围
3、上下文工程落地的策略
4、上下文工程不等同于上下文
5、上下文工程前瞻思考
今年6月25日,AI大神Andrej Karpathy 在推特上火了一个词——上下文工程(Context Engineering)。这不仅是技术术语更替,更代表着思维范式的转变。
1、上下文工程解决什么问题
我之前有篇文章写GRPO时候提到,“2024年卷RAG,一周出Demo,优化用半年”,现在不是半年的问题,方向上,想提高生成式问答效果,如果还不跳出RAG的思维,那是很难有优化空间的。简单地“检索-拼接-生成”往往并不能得到最优结果。你可能会遇到:
- 检索到的信息不准确或与问题无关。
- 即使检索到了相关信息,LLM却忽略了它,依然依赖自身知识产生幻觉。
- 上下文太长,导致LLM无法关注到关键信息,或者因超过令牌限制而被截断。
上下文工程正是为了解决这些问题而存在的。 它是一门设计和优化输入给LLM的上下文信息的艺术与科学,旨在最大化LLM的推理能力和输出质量。
2、上下文工程所包含的范围
一句话,只要是模型生成回答之前所看到的一切信息,都是上下文工程的范畴。
其核心工作贯穿以下流程:
1. 检索前的数据准备(知识库层面)
-
分块(Chunking)
如何将长文档切割成更小的片段至关重要。块太大可能包含多主题干扰信息,太小则可能丢失关键上下文。工程师需要根据文档类型(如MD文档、PDF表格、代码)调整块大小和重叠(Overlap)策略。
-
数据清洗与增强
清除无关内容(页眉、页脚)、标准化格式、为文本添加元数据(如标题、发布日期、部门),这些元数据可以极大提升检索的精准度。
-
选择嵌入模型(Embedding Model)
不同的模型在不同领域和语言上表现各异。为特定领域微调嵌入模型或选择专有模型,可以显著提升检索相关性。
2. 检索中的优化(查询与搜索层面)
-
查询重写/扩展(Query Reformulation/Expansion)
用户的原始查询可能很模糊。使用LLM对查询进行重写、扩展同义词或生成假设性答案(HyDE),可以大幅提升检索效果。
-
检索策略
除了简单的相似性搜索,还可以融合关键词搜索(BM25)进行混合搜索(Hybrid Search),兼顾语义匹配和精确术语匹配。高级技术如重新排序(Re-ranking)模型,可以对初步检索结果进行二次精排,将最相关的结果排在前面。
3. 生成前的上下文构建(提示词层面)——这是上下文工程的核心
-
上下文压缩与摘要
检索到的多个文档片段可能包含冗余信息。可以使用LLM先对这些片段进行摘要或去重,只将最精炼的信息放入上下文,节省宝贵的令牌。
-
结构化与排序
将检索到的上下文以清晰、有条理的方式呈现给LLM。例如,按相关性排序,或使用明确的章节标题(如“## 相关文档1:… ## 相关文档2:…”),帮助LLM更好地理解和利用这些信息。
-
设计系统提示(System Prompt)
这是上下文工程的精髓。系统提示用于明确指导LLM如何利用上下文。
-
糟糕的提示
“请根据以下文档回答问题。”
-
工程化的提示
“你是一个专业的客服助手。请严格根据提供的参考文档来回答问题。如果文档中的信息不足以回答问题,请明确回答‘根据已有信息无法回答该问题’,切勿编造信息。你的回答需清晰引用文档来源。参考文档如下:…”
通过上述精细化的操作,上下文工程确保了注入LLM的信息是高相关、高质量、易理解的,从而最终引导LLM生成更准确、更可靠、更符合要求的答案。
3、上下文工程落地的策略
上面四个落地策略来自Langchain 发布的一篇博客文章,归纳四个词就是写入-筛选-压缩-隔离,有点像SQL的增-删-改-查。
本质上,我们现在的调优工作,其实都在上下文工程这个范畴,这里面涉及到的Scratchpads、Memories、Tools、Knowledge、Context Summarization、Multi-agent、Context等
再回归到问题的本质,如果只是需要提高大语言模型回答问题的准确率和质量,engineering这里面有非常大的想象空间,RAG只是一个context engineering非常粗糙的一个工程方案。
Andrej Karpathy一个推特火了一个新词,就能让这个工作成为业界一个追逐范式,并且发展成一个工程学科,这就是业界影响力!
4、上下文工程不等同于上下文
两者的目的都是通过引入额外的、动态的信息,使系统的输出与当前情境更相关、更精准。
**在我们MCP应用中,目前我们一个稍微复杂点的问题,MCP最多能调12-15个Tools, 但实际调用3个Tools就能解决这个问题。一些技术报告也实验证明了更多的工具、**更多的补充信息、更长的上下文并不一定会产生更好的响应。上下文过载可能会导致智能体以意想不到的方式失败。上下文可能会变得有害、分散注意力、令人困惑或产生冲突。
在我们A2A应用中,智能体之前也是依赖上下文来收集信息,但综合发现一旦涉及到多轮对话上下文,动作智能体之间的关系就容易出错,因为一旦涉及到相互协作和相互依赖,信息之间就会出现错乱。
我个人理解,在比较高级一点的应用,这两项技术应该是相互融合的,一方面要让生成的回答更准确、可信、相关;另一方面,追求个性化、情境化的智能输出。
5、上下文工程前瞻思考
如题,Context Engineering是解锁大模型真正潜力的关键,未来落地落地思考会暂时会围绕以下两点去展开:
1) 大语言模型(LLM)作为智能体的大脑,那上下文工程就是这个大脑的”外脑“,它未来要自主决定何时需要检索、检索什么、如何根据初步结果进行下一步操作,这一定是自动化的。
2)突破RAG系统限制,追求对上下文的深度加工**,而RAG只提供了“检索”这一种获取方式。加工包括:总结、翻译、格式化、过滤、排序、压缩等,远非简单的“检索并拼接”。**
最后,回想在深度学习时代,一直在调侃自己是“调参侠”,至从研究人员把离散的网络结构搜索变成连续可微的优化问题,一次训练即可评估数千种结构,从此“调网络结构”不再需要人手动试。后续 ENAS、FBNet、ProxylessNAS 等把显存和搜索时间降到单卡几小时,彻底工程化,模型输出直接可获得部署的模型(模型结构 +网络权重 +超参数),这样AI工程师人员彻底不用关心模型训练过程。
如今在大模型时代,提示工程(Prompt Engineering)已然不能完全解放人工写提示过程,但上下文工程(Context Engineering)是有可能彻底告别人工调优的。
期待人工调优完全自主化这一天的到来!
大模型未来如何发展?普通人能从中受益吗?
在科技日新月异的今天,大模型已经展现出了令人瞩目的能力,从编写代码到医疗诊断,再到自动驾驶,它们的应用领域日益广泛。那么,未来大模型将如何发展?普通人又能从中获得哪些益处呢?
通用人工智能(AGI)的曙光:未来,我们可能会见证通用人工智能(AGI)的出现,这是一种能够像人类一样思考的超级模型。它们有可能帮助人类解决气候变化、癌症等全球性难题。这样的发展将极大地推动科技进步,改善人类生活。
个人专属大模型的崛起:想象一下,未来的某一天,每个人的手机里都可能拥有一个私人AI助手。这个助手了解你的喜好,记得你的日程,甚至能模仿你的语气写邮件、回微信。这样的个性化服务将使我们的生活变得更加便捷。
脑机接口与大模型的融合:脑机接口技术的发展,使得大模型与人类的思维直接连接成为可能。未来,你可能只需戴上头盔,心中想到写一篇工作总结”,大模型就能将文字直接投影到屏幕上,实现真正的心想事成。
大模型的多领域应用:大模型就像一个超级智能的多面手,在各个领域都展现出了巨大的潜力和价值。随着技术的不断发展,相信未来大模型还会给我们带来更多的惊喜。赶紧把这篇文章分享给身边的朋友,一起感受大模型的魅力吧!
那么,如何学习AI大模型?
在一线互联网企业工作十余年里,我指导过不少同行后辈,帮助他们得到了学习和成长。我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑。因此,我坚持整理和分享各种AI大模型资料,包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频。
学习阶段包括:
1.大模型系统设计
从大模型系统设计入手,讲解大模型的主要方法。包括模型架构、训练过程、优化策略等,让读者对大模型有一个全面的认识。
2.大模型提示词工程
通过大模型提示词工程,从Prompts角度入手,更好发挥模型的作用。包括提示词的构造、优化、应用等,让读者学会如何更好地利用大模型。
3.大模型平台应用开发
借助阿里云PAI平台,构建电商领域虚拟试衣系统。从需求分析、方案设计、到具体实现,详细讲解如何利用大模型构建实际应用。
4.大模型知识库应用开发
以LangChain框架为例,构建物流行业咨询智能问答系统。包括知识库的构建、问答系统的设计、到实际应用,让读者了解如何利用大模型构建智能问答系统。
5.大模型微调开发
借助以大健康、新零售、新媒体领域,构建适合当前领域的大模型。包括微调的方法、技巧、到实际应用,让读者学会如何针对特定领域进行大模型的微调。
6.SD多模态大模型
以SD多模态大模型为主,搭建文生图小程序案例。从模型选择、到小程序的设计、到实际应用,让读者了解如何利用大模型构建多模态应用。
7.大模型平台应用与开发
通过星火大模型、文心大模型等成熟大模型,构建大模型行业应用。包括行业需求分析、方案设计、到实际应用,让读者了解如何利用大模型构建行业应用。
学成之后的收获👈
• 全栈工程实现能力:通过学习,你将掌握从前端到后端,从产品经理到设计,再到数据分析等一系列技能,实现全方位的技术提升。
• 解决实际项目需求:在大数据时代,企业和机构面临海量数据处理的需求。掌握大模型应用开发技能,将使你能够更准确地分析数据,更有效地做出决策,更好地应对各种实际项目挑战。
• AI应用开发实战技能:你将学习如何基于大模型和企业数据开发AI应用,包括理论掌握、GPU算力运用、硬件知识、LangChain开发框架应用,以及项目实战经验。此外,你还将学会如何进行Fine-tuning垂直训练大模型,包括数据准备、数据蒸馏和大模型部署等一站式技能。
• 提升编码能力:大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握将提升你的编码能力和分析能力,使你能够编写更高质量的代码。
学习资源📚
- AI大模型学习路线图:为你提供清晰的学习路径,助你系统地掌握AI大模型知识。
- 100套AI大模型商业化落地方案:学习如何将AI大模型技术应用于实际商业场景,实现技术的商业化价值。
- 100集大模型视频教程:通过视频教程,你将更直观地学习大模型的技术细节和应用方法。
- 200本大模型PDF书籍:丰富的书籍资源,供你深入阅读和研究,拓宽你的知识视野。
- LLM面试题合集:准备面试,了解大模型领域的常见问题,提升你的面试通过率。
- AI产品经理资源合集:为你提供AI产品经理的实用资源,帮助你更好地管理和推广AI产品。
👉获取方式: 😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】
更多推荐
所有评论(0)