上下文工程,清晰解释(附图): (下面是插图指南)
那么,什么是上下文工程? 这是一门艺术和科学,旨在在正确的时间,以正确的格式向您的 LLM 提供正确的信息。 这是 Andrej Karpathy 关于上下文工程的引用...👇
要理解上下文工程,首先必须理解上下文的含义。 如今的智能体已经发展成为远不止聊天机器人。 下面的图表总结了智能体正常运作所需的6种上下文类型。 看看这个 👇
到现在为止,你应该知道,仅仅 "提示" 代理是不够的。 你必须设计输入(上下文)。 这样想: 🧠 LLM = CPU 💾 上下文窗口 = RAM 你实际上是在用完美的指令为你的 AI 编程 "RAM"。 继续...👇
那么我们该如何做呢? 上下文工程可以分为四个基本阶段: - 编写上下文 - 选择上下文 - 压缩上下文 - 隔离上下文 让我们逐一理解每个阶段...👇
1️⃣ 写作上下文: 写作上下文意味着将其保存在上下文窗口之外,以帮助代理执行任务。 您可以通过将其写入以下位置来实现: - 长期记忆(跨会话持久) - 短期记忆(会话内持久) - 状态对象 查看这个👇
2️⃣ 阅读上下文: 阅读上下文意味着将其引入上下文窗口,以帮助代理执行任务。 现在,这个上下文可以从以下来源提取: - 工具 - 记忆 - 知识库(文档,向量数据库) 查看这个👇
3️⃣ 压缩上下文 压缩上下文意味着仅保留执行任务所需的标记。 检索到的上下文可能包含重复或冗余的信息(多轮工具调用),导致额外的标记和增加的成本。 上下文摘要在这里有帮助。 查看这个👇
4️⃣ 隔离上下文 隔离上下文涉及将其拆分,以帮助代理执行任务。 一些流行的方法包括: - 使用多个代理(或子代理),每个代理都有自己的上下文 - 使用沙盒环境进行代码存储和执行 - 以及使用状态对象 查看这个👇
总结一下,我将给你留下上下文工程图。 此外,这里有一个用于上下文工程的开源技术栈: - 内存: @zep_ai - 知识库: @milvusio - 代理编排: @crewAIInc - 可观察性与追踪: @deepeval
6.2K