大模型---ContextBuilder
目录
1.ContextBuilder的定义
2.GSSC流水线
(1)Gather
(2)Select
(3)Structure
(4)Compress
3.总结
参考文档:hello-agents/docs/chapter9/第九章 上下文工程.md at main · datawhalechina/hello-agents
1.ContextBuilder的定义
ContextBuilder提供了一个统一的上下文管理接口,其负责把分散的上下文来源,按统一规则收集、评分、编排、压缩,最后生成一个可直接交给LLM的上下文。
如果没有统一的上下文管理层,开发者就会在每个 Agent 里重复写大量样板逻辑,比如:从记忆系统搜相关内容,从 RAG 系统搜知识,裁剪历史消息,处理 token 预算,决定哪些内容优先保留,最后把这些内容拼成 prompt。这会导致工程上难维护、难调试,也很难在不同 Agent 之间复用。ContextBuilder 的目标,就是把这些重复性的“上下文装配工作”统一抽象出来。
ContextBuilder主要依赖两个核心数据结构:① ContextPacket 是“候选信息包”,也就是上下文构建时最小的信息单元。文档说明它会封装候选信息的关键属性,例如:content,timestamp,token_count等等。它的作用很像一个统一容器:不管内容来自系统指令、历史对话、RAG
