Context Engine
503 字
3 分钟
Context Engine
1.什么是上下文工程(Context Engine)
上下文工程是为模型构建动态信息环境的系统性方法。它确保 Agent 在执行复杂任务时,能按需获取最相关的信息,包括用户指令、对话历史、外部数据和工具反馈等。
从代码层面看:通过维护一个 messages 数组(列表)来实现上下文。
原理: 每次你想让 AI 继续对话,你不是只发最新的问题,而是把整个历史对话流(或者截取的一部分)重新打包,作为新的 context 发送给模型。
目的: 这样模型才能“看”到之前的对话,知道你在聊什么,从而实现连贯的问答。
2.上下文控制
2.1 控制上下文长度
上下文工程的技巧: 当对话太长时,我们不能无脑打包,而是要进行摘要(Summarization)或滑动窗口(Sliding Window)。
例子: 如果对话超过 10 轮,我们可能会先让 AI 把前 5 轮总结成一句话,然后只把总结和后 5 轮发过去,而不是把 10 轮全发过去。
2.2 结构化信息
除了对话历史,上下文工程还包括注入非对话类的信息。
- 知识库: 比如你问“公司报销流程”,系统会先去检索手册,把“报销规则”这段文字作为上下文插入到 system prompt 里,再发给 AI。
- 外部数据: 比如当前的天气、用户画像、数据库查询结果等。这些都不是“对话历史”,但它们是上下文的重要组成部分。
2.3 对话的“编排” (Orchestration)
有时候我们不希望模型看到所有的中间步骤。
- 思维链(Chain of Thought): 我们可能先让模型在后台“思考”(这部分作为中间上下文),最后只把“思考后的结论”作为最终上下文的一部分展示给用户。
支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或赞助支持!
Context Engine
https://kianzhao.site/posts/Context-Engine/ 相关文章 智能推荐
1
Prompt Summary
AI 提示词工程(Prompt Engine)概述。
2
pydantic 之 Field 使用教程
分类 `Field` 是 Pydantic 提供的一个函数/标记,用于在模型属性(字段)上指定更丰富的元信息和校验约束。例如:默认值、校验范围、描述文档、示例、别名等。
3
Pydantic 包
python Pydantic 是一个基于 Python 类型提示(Type Hints)的数据验证和解析库。它的核心思想是:通过定义数据模型,自动对输入数据进行类型检查和转换,确保你拿到的数据是干净、合规的。
4
Typing 模块
python Python 的 typing 模块是用于类型提示(Type Hints)的标准库,自 Python 3.5 起引入。它不会在运行时强制类型检查,但可以配合工具(如 mypy、IDE 等)提升代码可读性、健壮性和开发效率。
5
Json 模块的常用方法
python JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。Python的json模块提供了处理JSON数据的工具,主要包括以下功能:
1.序列化:将Python对象转换为JSON格式字符串。
2.反序列化:将JSON格式字符串转换为Python对象。
随机文章 随机推荐