大模型应用开发 -上下文工程与运行空间实践指南

June 17, 2026 · View on GitHub

Practical-guide-to-context-engineering Logo

📚 大模型应用开发 -上下文工程与运行空间实践指南

上下文工程是设计原则,运行空间是建造目标

GitHub stars GitHub forks Node
在线阅读 English Version 讨论交流

项目介绍

   随着大语言模型(LLM)的快速发展,越来越多的开发者和企业尝试将其应用到实际业务场景中。然而,在真实落地的过程中,大家很快发现:模型本身并不是一切,决定模型表现的关键在于它所拥有的上下文。

  上下文工程(Context Engineering)正是在这样的背景下提出的一种系统化方法论。它关注如何在有限的上下文窗口中,选择、组织并注入与用户任务高度相关的信息,从而让大模型在合理的边界内做出最佳推理与执行。

  Harness Engineering 则是更进一步,它不仅关注上下文,更关注 Agent 的稳定运行,它为 Agent 搭建了完整的运行空间,设计了它的能力结构、协作机制和反馈闭环,让它在特定领域里稳定地产生高质量结果

本项目的目标,是为开发者和研究者提供一份大模型应用开发的骨架思路,以上下文组成作为大模型应用开发的核心,有关大模型应用开发的技术都可以互相联系起来

我目前对新的机会保持开放。如果你的团队在做大模型应用 / Agent 相关的产品,或者想就上下文工程、Agent Harness 交流想法,都欢迎找我聊聊。 📮 微信:a2385472291 | 邮箱:2385472291@qq.com

✏️什么是上下文工程

上下文工程的定义:是在有限的上下文窗口中,选择、组织并注入与用户输入或任务高度相关的信息,从而让大语言模型(LLM)能够在合理的边界内做出最佳推理和执行。

上下文工程中最关键的是:用最相关的信息填充 LLM 的上下文窗口

如何为“用户输入”找到最相关的信息,是这个上下文工程系统的入口,也是衡量整个系统价值的核心指标,但这种“相关性”的实现并不会自然而然发生,它依赖开发者去设计、构建与优化整个系统

与 RAG 的区别是:RAG 是上下文工程中的一个子集

与提示词工程的区别是:提示词工程是专注于 LLM 最前置的正确指令艺术,其主要是:在单个文本字符串中设计完美的指令集

Karpathy的总结:人们通常将提示与日常使用中向 LLM 提供的简短任务描述联系起来。但在每个工业级 LLM 应用中,上下文工程是一门微妙的艺术和科学,它通过为下一步提供恰到好处的信息来填充上下文窗口。这是科学,因为正确地做到这一点涉及任务描述和解释、少量示例、RAG、相关(可能是多模态的)数据、工具、状态和历史记录、压缩等。太少或形式不正确,LLM 就没有正确的上下文来优化性能。太多或太不相关,LLM 的成本可能会上升,性能可能会下降。做好这一点非常不简单。而且,这也是艺术,因为围绕 LLM 心理和人们精神的指导直觉。

Karpathy的总结的链接:https://x.com/karpathy/status/1937902205765607626?ref=blog.langchain.com

✏️什么是Harness Engineering

Harness Engineering我的理解是:为Agent搭建运行空间,设计它的能力结构、协作机制和反馈闭环,让它在特定领域里稳定地产生高质量结果

它不是只做限制模型能做什么的,而是在创造条件让模型能做到原本做不到的事。这个运行空间要随着模型的升级逐渐变化 所以大家更多应该去关注不同领域下,这个Agent的运行空间是如何构建的。 Harness Engineering

✏️上下文工程和Harness Engineering的关系

:palm_tree: 1、从概念范围来看:上下文工程是Harness Engineering的子集

Harness Engineering中有些模块是直接服务于上下文(RAG、记忆、系统提示词等),有些是间接服务上下文(上下文管理,Agent评估等),有些则是直接服务于Agent稳定运行的 但无论在哪一层,它们都在Harness Engineering这个大框架下

上下文工程和Harness Engineering的关系

越靠近中心,越直接操作上下文。越靠近外层,越偏向基础设施

:palm_tree: 2、从技术发展来看:这条演进路径有一条清晰的主线: 上下文 -> 上下文工程 -> Harness Engineering

最早,我们只关注"塞给模型什么内容",这是上下文本身的问题。随着需求复杂化,开始系统性地管理上下文的构建方式,于是有了上下文工程。而当 Agent 承担起更复杂的任务,单靠上下文管理已经不够,我们需要为它搭建完整的运行环境——Harness Engineering 由此出现。 上下文工程和Harness Engineering的关系

它不是替代,而是一次扩展,每一个阶段都在前一个阶段基础上,往外多包了一层

:sunny: 上下文工程是设计原则,Agent Harness 是构建目标 Harness Engineering 负责将其落地为稳定运行的 Agent 环境

📖 内容导航

一、全局认知

二、大模型应用开发基础技术

三、上下文核心模块

围绕七种上下文类型,每种上下文衍生出对应的工程模块,这是本项目的主体部分

四、上下文管理:跨模块的全局策略

五、Agent 运行空间

六、实践与案例

附录

🤝 如何贡献

我希望「上下文工程实践」不仅是一个仓库,而是一个大家共同探索、共同建设的开放空间。 欢迎以你喜欢的方式加入进来:

  • 🐛 报告 Bug - 发现内容或代码问题,请提交 Issue
  • 💡 提出建议 - 对项目有好想法,欢迎发起讨论
  • 📝 完善内容 - 帮助改进教程,提交你的 Pull Request
  • ✍️ 分享实践 - 在"上下文工程实践项目"中分享你的学习笔记和项目

开始贡献前,请阅读 详细贡献指南,了解具体的提交规范和流程。

每一份贡献,无论大小,都是推动这个项目前进的重要力量。期待看到你的身影!🎉

🙏 致谢

核心贡献者

Star History

Datawhale

⭐ 如果这个项目对你有帮助,请给我们一个 Star!

关于WakeUp-Jin

文章合集也会同步更新到微信公众号,方便手机端阅读。公众号上除了项目内容外,还会分享我平时关于学习的记录和生活的思考

微信公众号二维码

扫描二维码关注WakeUp-Jin

📜 开源协议

知识共享许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。