概述
本页面详细介绍了 Koog framework 中的子图。理解这些概念对于创建跨多个处理步骤维护上下文的复杂代理工作流至关重要。
引言
子图是 Koog framework 中的一个基本概念,它允许您将复杂的代理工作流拆解成可管理的、按序的步骤。每个子图都代表一个处理阶段,具有其自身的上下文、职责以及可选的工具子集。
子图是策略的组成部分,策略是代表整体代理工作流的图。关于策略的更多信息,请参见 自定义策略图。
理解子图
子图是代理策略中一个自包含的处理单元。每个子图:
- 具有唯一名称
- 包含由边连接的节点或子图的图
- 可以使用工具注册表中的任何工具或工具子集
- 从上一个子图(或初始用户输入)接收输入
- 生成输出并将其传递给下一个子图(或最终输出)
要在图中定义子图序列,请使用边连接或使用 then
关键字定义序列。关于更多信息,请参见 自定义策略图。
子图上下文
每个子图都在一个上下文中执行,该上下文提供对以下各项的访问:
- 环境
- 代理输入
- 代理配置
- LLM 上下文(包括对话历史记录)
- 状态管理器
- 存储
- 会话和策略
上下文会传递给子图中的每个节点,并提供节点执行其操作所需的资源。